iT邦幫忙

2026 iThome 鐵人賽

DAY 18
0
IT Operation

解構作業系統:30 天從 Process、Concurrency 到 Virtual Memory系列 第 18 篇

Day 18|TLB:CPU 每次存取 Memory 都要查 Page Table,真的不會慢死嗎?

  • 分享至 

  • xImage
  •  

現代 Page Table 可能是:

Virtual Address
↓
L4
↓
L3
↓
L2
↓
L1
↓
Physical Frame

CPU 執行:x = a + b ; 看起來只是很普通的一行程式。
但 CPU 可能需要:讀取 a / 讀取 b / 寫入 x

如果每一次 Memory Access 都必須先走好幾層 Page Table:
查 L4
↓
查 L3
↓
查 L2
↓
查 L1
↓
終於取得 Physical Address
↓
再去讀真正的 Data

那 Virtual Memory 帶來的 Translation Cost 就會非常可怕。
所以 CPU 裡需要一個非常重要的東西:TLB — Translation Lookaside Buffer


上一篇
Day 17|Multi-level Page Table:為什麼 Page Table 自己不會先把 RAM 吃光?
下一篇
Day 19|Page Fault:明明程式沒有寫錯,CPU 為什麼故意把它丟進 Kernel?
系列文
解構作業系統:30 天從 Process、Concurrency 到 Virtual Memory 共 19 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言