我刚刚学习了内存管理,目前我正在尝试弄清楚什么是页表。根据我的理解,页表是一种类似于哈希表的数据结构,用于在操作系统中映射和连接逻辑和物理内存地址。
我们需要一个寄存器来确定进程的页表的位置。但是我们需要多少寄存器来确定多级页表的位置,例如两级和三级页表?你是如何确定它的?
另外,处理器中的缓存(L1-L3)将如何影响对页表的内存引用访问?大多数人会错过或击中吗?为什么会发生这种情况?
我试图找到关于这个的参考资料,但它将我带到了TLB,而我还没有了解到它。我可能会说我是操作系统的初学者。帮助:)
发布于 2021-03-14 23:32:12
根据Nate的回答,我们只需要在表的顶层使用一个寄存器,并且表中的条目是指向下一层的指针,因此在任何级别的页表中都不需要超过一个寄存器。
https://stackoverflow.com/questions/66439179
复制相似问题