天天看點

記憶體

每一條指令都要從邏輯位址算出實體位址——位址翻譯

<段号,段内偏移>

GDT[Global Descriptor Table] 全局描述符表

LDT[Local Descriptor Table] 局部描述符表

固定分區

可變分區——時間長了會造成記憶體碎片

段面向使用者 頁面向硬體

為了提高記憶體的使用率,頁應該小,但這樣頁表就大了。

第一種嘗試

隻存放到用到的頁

第二種嘗試

使用多級頁表——類比成書的章目錄和節目錄(分層的思想)

增加了空間的使用率,但犧牲了時間效率

是以TLB 相聯快速存儲(局部性原理),是寄存器(就是加了一層緩存)

TLB條目數在64——1024之間

原因:

程式的位址通路存在局部性(多為循環和順序結構)

空間局部性

實作虛拟記憶體就應該換入換出

換入換出實作了“大記憶體” 吧細小的記憶體整理

換出頁面算法

FIFO

LRU Least resently used最近最少使用 用過去預知未來

兩種實作方法

1——時間戳

2——将時間計數修改為是和否(Clock算法 快慢指針實作 一種近似)

上一篇: 黑客小遊戲
下一篇: 小遊戲

繼續閱讀