為了能將線性位址快速地轉換到實體地址,tlb(translation lookaside buffer)緩衝了當前經常被使用的線性位址對應的實體地址。多個cpu的tlb不需要進行同步,因為
不同cpu上執行的是不用的程序,也就是說他們相同的線性位址對應的實體地址是不同的,所以不需要進行同步。當cpu上的程序發生切換時,只需要修改cr3暫存器就可以讓整個tlb失效
linux預設情況下對cache採用的是使用cache,並且使用write-back寫策略。
2009/01/13 二
原 線性位址到實體地址轉換後記
之前想手動查詢線性位址對應的實體地址,以更好的理解作業系統的分頁機制,cr3的值和指定程序的eprocess的值總是對不上。具體參考筆記 原 線性位址到實體地址轉換 今天突然靈光一閃,想起來張老師說過的關於cr3的相關知識,cr3是作業系統在切換程序的時候才會更新的,我們用.process p 指定...
原 線性位址到實體地址轉換後記
之前想手動查詢線性位址對應的實體地址,以更好的理解作業系統的分頁機制,cr3的值和指定程序的eprocess的值總是對不上。具體參考筆記 原 線性位址到實體地址轉換 今天突然靈光一閃,想起來張老師說過的關於cr3的相關知識,cr3是作業系統在切換程序的時候才會更新的,我們用.process p 指定...
線性位址和實體地址
在保護模式下32位 還是採用段機制訪問記憶體 初始化臨時的要進入到ia 32e模式的gdt資料結構 label gdt64 dq 0x0000000000000000 label desc code64 dq 0x0020980000000000 label desc data64 dq 0x000...