(13)[保护模式]控制寄存器

注:更多详细信息查看 白皮书 3A 2.5节 控制寄存器

CR0

在这里插入图片描述
PE (Protection Enable) : PE == 1,保护模式开启; PE == 0,实地址模式 (仅开启段保护)
PG (Paging) : PE == 1,开启分页模式,PE == 0,关闭分页模式 (当且仅当PE == 1时,PG才会生效)
WP (Write Protect) : 写保护,开启(WP==1)后不允许超级用户对普通用户的只读页面进行写操作,反之则允许。
小拓展:
CD (Cache Disable) 和 BW(Not Write-through) : 缓存相关(没看懂,不敢乱说)
AM (Alignment Mask) : 自动对齐,当AM == 1 && EFLAGS.AC == 1 才会进行检查
NE (Numeric Error) : 浮点错误相关
ET (Extension Type) : 拓展类型,和机器相关,在Intel386 和 Intel486,ET == 1表示支持Intel 387 DX数字协处理器指令,在其他的一些机器上是保留位
TS (Task Switch) : 允许浮点计算在任务切换时保存上下文,与EM和MP位联用(不再展开)

CR1

保留

CR2

存放导致页错误的线性地址
例如:当发生缺页中断时,存放引发缺页的线性地址

CR3

在这里插入图片描述
Page-Directory-Base : 可以放PDPT (Page-Directory-Pointer table),或者是PML4 table、PML5 table
PCD
PWT (Page-level Write-Through) : 1,写入cache的同时也向内存中写;否则只写入cache,何时写入内存CPU自行决定
PCD (Page-level Cache Disable) : 1,不允许写入cache,直接读写内存,用作页表的页可能已经在某些缓存中了,所以不再写入缓存;

CR4

在这里插入图片描述

PAE (Physical Address Extension) : 1,允许物理地址超过32位;0,物理地址被限制为32位
简单来说PAE == 1,分页模式为2-9-9-12分页(36位);PAE == 0,分页模式为10-10-12分页(32位)
PSE (Page Size Extensions) : 1,允许使用大页(4MB页);0,不允许使用大页 (是否使用大页,还得PageDirectoryEntry.PS位决定)

有时间再来拓展其他位

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值