[迷途羔羊:Linux 思考记  (第七天)]

妖精的绣舞 提交于 2020-03-29 00:41:31

一、常规分页

 1、32线性地址分为3个域
【1】、Directory(目录) 最高10位 <<2^10>>
【2】、table(页表)最高10位
【3】、Offset(偏移量) 最低12位
    线性地址分两步,第一种转化为页目录表(page directory) 第二种转化表称为页表(page table)
 
2、线性地址Directory字段决定页目录的目录项,而目录项指向适当的页表。地址的Table字段依次决定页表中的表项,
,而表项含有所在页框的物理地址。
 

 
【2】、页目录项和页表项结构
1、Present 标志
【1:页表或者页在主存   0:页不在主存】
2、Accessed 标志
分页单元对相应页框进行寻址时《操作系统》设置这个标志
3、Dirty 标志
 页表项对相应页框进入写操作《操作系统》设置这个标志
4、Read /Write  标志
页/页表存储权限
5、User / Supervisor 标志
访问页/页表的特殊权限
6、PCD / PWT 标志
控制硬件高速缓存处理页或者页表的方式
7、Page  Size 标志
页目录项,设置为1,页目录指向2MB或者4MB的页框
8、Gloal 标志
页表项,防止常用页从TLB(转换后援缓冲器)高速缓存中刷新出去,只有 cr4寄存器的页全部启用标志置位才起作用

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!