
TLB和CPU缓存
发布日期:2021-05-19 04:41:48
浏览次数:16
分类:原创文章
本文共 411 字,大约阅读时间需要 1 分钟。
TLB
如果每次应用程序访问一个线性地址都需要先解析(查PDT,PTT)那么效率十分低,为了提高执行效率CPU在CPU内部建立了一个TLB表,此表和寄存器一样访问速度极高。其会记录线性地址和物理地址之间的对应关系,这样以后当程序在访问此线性地址时就直接访问对应的物理地址了。
因为每一个进程都有对应的CR3寄存器,指向不同的页目录表或也目录指针表,当CR3变化时(进程切换)其对应的线性地址与物理地址的映射也变了。所以会将TLB刷新,但是对于高2GB的地址而言,其对应的TLB并不会刷新因为一般高2GB地址是不变的。高2GB对应的PDE或PTE的G位为1,表明其在CR3切换时并不会刷新TLB中对应的项。
INVLPG //特权指令,可以清除TLB
cpu缓存
CPU缓存是建立 物理地址和内容之间的联系,所以当应用程序访问数据时可以先从TLB中得到对应线性地址的物理地址,再从CPU缓存中取出物理地址对应的内容。
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年05月21日 19时48分51秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
MasterPage(母板页)的不一般用法
2025-04-12
MatchingFrontier包简介及R实现
2025-04-12
MateBook16重装攻略
2025-04-12
material-ui ant.design
2025-04-12
MaterialForm对tab页进行隐藏
2025-04-12
materialTabControl1_SelectedIndexChanged的使用
2025-04-12
Math.Atan2的基本讲解(C#版本)
2025-04-12
Math.round(),Math.ceil(),Math.floor()的区别
2025-04-12
mathlab中deepDreamImage的参数PyramidLevels的作用
2025-04-12
MathType 6.9中的字距该怎样进行调整
2025-04-12
MathType二次偏导怎么表示
2025-04-12
MathType给公式底部加箭头的教程
2025-04-12
Math类和StrictMath类源码详解
2025-04-12
matlab 2024b下载安装教程(附安装包)matlab 2024b图文详细安装教程
2025-04-12
matlab ga遗传算法,matlab遗传算法ga函数
2025-04-12
MATLAB GUI中显示数学公式
2025-04-12
MATLAB GUI如何生成.exe文件
2025-04-12
matlab r2021a的license提示要过期了怎么办?
2025-04-12
Matlab save load
2025-04-12