图解虚拟地址到物理地址的翻译以及数据的获取(TLB,页表,cache)
前言
最近复习计算机组成原理,又重新把CPU发出虚拟地址一直到获得数据的过程捋了捋,算是又加深了理解。从虚拟地址经过TLB/页表得到物理地址,到物理地址经过cache/主存得到数据,真的是计算机体系结构的艺术了。
结合《计算机组成与系统结构》和《深入理解计算机系统》中对高速缓存和虚拟内存的描述,画出了如下示意图,从CPU发出虚拟地址到得到数据,整个构成一个完整的环。一图胜千言,看图吧~
示意图
注意事项
- TLB采用组相联
- 页表采用两级页表
- cache采用组相联
- cache仅考虑L1 d-cache,不考虑L1 i-cache、L2 cache和L3 cache
- 未考虑页表缺页
- 简化了cache未命中情况
参考
- 袁春风. 计算机组成与系统结构[M]. 清华大学出版社, 2013.
- Bryant R, David Richard O H. 深入理解计算机系统[M]. 机械工业出版社, 2016.
写的太棒了!请问可以转载这张图片吗?我会注明出处的!