百科问答小站 logo
百科问答小站 font logo



页表放在主存中,那么页表基址寄存器中存放的页表基址是虚拟基址还是主存中页表实际基址? 第1页

  

user avatar   bei-ji-85 网友的相关建议: 
      

物理地址,这种问题最好看手册。

<Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 3 (3A, 3B & 3C): System Programming Guide>

4.2 HIERARCHICAL PAGING STRUCTURES: AN OVERVIEW

The first paging structure used for any translation is located at the physical address in CR3.

因为这玩意就是用来翻译虚地址的,写一个虚地址进去的话,自己怎么翻译自己?

一种流行的设计就是把CR3对应的地址映射成一个一模一样的虚地址出来,这样方便维护,貌似32位的Windows和Linux都是这样设计的。64位系统比较复杂,因为64位系统中,CR3的高位是reserved状态,必须是0,所以不一定会映射一个同样的虚地址。具体映射成啥样,要看操作系统的设计了。我见过有ffffffff811ee000->CR3: 00000000011ee000这种映射的。




  

相关话题

  视频RAM与IO内存映射的问题,大家可以指导一下吗? 
  操作系统中原子操作和锁的底层原理分别是什么?提供了哪些原子语义保证? 
  为何微软不在新的操作系统中让 32 位支持大于 4GB 的内存? 
  阿里巴巴没有能力开发出媲美linux的操作系统吗?有的话为什么不开发? 
  如果让计算机不使用操作系统做服务器性能上是否会更有优势? 
  家用电脑装 Linux 系统能否在防止孩子玩游戏的同时满足他们 「查资料」的需求? 
  为什么32位机之后直接发展64位机,而没有33位机或者48位机? 
  为什么一般操作系统中应用程序的栈空间都要设最大值,不支持动态扩展? 
  如何看待 Deepin 操作系统创始人王勇离职? 
  如何看待Windows系统性能不及国产麒麟操作系统? 

前一个讨论
为什么整个127.*网段都被拿来当做环回地址了?
下一个讨论
如何评价 mimalloc?





© 2025-04-11 - tinynew.org. All Rights Reserved.
© 2025-04-11 - tinynew.org. 保留所有权利