Windows保护模式学习笔记(十三)—— PWT&PCD

前言

一、学习自滴水编程达人中级班课程,官网:https://bcdaren.com
二、海东老师牛逼!

要点回顾

在学习PDE与PTE的属性时,我们对两个位做了保留,并没有说明其作用,那就是今天要学习的PWT位PCD位

CPU缓存

描述:

  1. CPU缓存是位于CPU物理内存之间的临时存储器,它的容量比内存小的多,但是交换速度(读写速度)比内存要快得多
  2. CPU缓存可以做的很大,有几K、几十K、几百K、甚至上M,这决定于CPU的版本

CPU缓存与TLB的区别

TLB:

存储了线性地址物理地址之间的对应关系

CPU缓存:

存储了物理地址内容之间的对应关系

有了CPU缓存,当CPU再去查找/读取某一个线性地址对应的物理页时,就可以:

  1. 先查TLB,找到它的物理地址
  2. 再找CPU缓存,找到它的内容

CPU缓存的大小决定了CPU的执行速度(CPU缓存越大,速度越快,当然也会越贵)

注意

  1. 更多关于CPU缓存的细节请参考Intel白皮书第三卷第11章
  2. 不同的版本,章节顺序可能不一样,请参考章节标题

PWT(Page Write Through)

PWT=1:写Cache的时候也要将数据写入内存
PWT=0:写Cache的时候就只是写Cache,是否要映射到内存由CPU缓存控制器自己决定

PCD(Page Cache Disable)

PCD=1:禁止某个页写入缓存(直接写入内存)
比如:做页表用的页,已经存储在TLB中,可能就不需要再做缓存,而它的PCD一定为1

发布了45 篇原创文章 · 获赞 2 · 访问量 1853

猜你喜欢

转载自blog.csdn.net/qq_41988448/article/details/102763891