问题描述
最近在看<深入理解Linux>一书的内存寻址一章,萌生出一个疑问。
已知地址转换是从
逻辑地址到线性地址再到物理地址
那么在线性地址到物理地址到映射过程中,需要访问页表,可是页表也是在主存中的,那么访问页表的地址不也是逻辑地址或者线性地址吗,这样不还是需要地址转换,这样不就陷入了一个地址转换的死循环了吗?
是我看书陷入了误区吗?
需要大神不吝赐教。
感谢!!!
最近在看<深入理解Linux>一书的内存寻址一章,萌生出一个疑问。
已知地址转换是从
逻辑地址到线性地址再到物理地址
那么在线性地址到物理地址到映射过程中,需要访问页表,可是页表也是在主存中的,那么访问页表的地址不也是逻辑地址或者线性地址吗,这样不还是需要地址转换,这样不就陷入了一个地址转换的死循环了吗?
是我看书陷入了误区吗?
需要大神不吝赐教。
感谢!!!
7 回答5.3k 阅读
4 回答4k 阅读
2 回答5.9k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
2 回答796 阅读✓ 已解决
2 回答3.2k 阅读
Cpu通过cr0寄存器的PG标志置为0,线性地址就被解释为物理地址。
在寄存器cr3中,存放着页目录的物理地址,而且页表中的也是页框的物理地址,这样就说明在访问页表的时候使用的都是物理地址,是不需要经过地址转换的。