
例子:32位虚拟内存地址
- 10bit页目录+10bit二级页表+12位页内偏移
- CR3->10bit页目录KV式查询->10bit页表前20位物理地址->物理地址32bit=前20bit查询得到+原始页内偏移12bit
缺页中断(虚拟内存)(LRU算法)
-
寻找到一个空闲的页。或者把另外一个使用中的页写到磁盘上(如果其在最后一次写入后发生了变化的话),并注销在MMU(内存管理单元)内的记录
-
将数据读入被选定的页
-
向MMU注册该页
快表(快表快不仅在于少了几步寻址,而且在于其使用的存储介质)(同关联LRU)
-
按照逻辑地址中的页号查快表
-
若该页已存在快表中,则由页架号和单元号形成绝对地址
-
若该页不在快表中,则再查主存页表,与单元号形成绝对地址,同时将该页登记到快表中
-
当快表填满后,又要登记新页时,则需要按照一定替换策略淘汰一个旧的登记项
用户态内核态
https://www.zhihu.com/question/397142622
浙公网安备 33010602011771号