Re: [理工] OS valid bit/dirty bit/reference bit
※ 引述《chadcoco1222 (ha)》之銘言:
: Hi 各位考生好
: 我有寫到一題題目要我說明這三個bit
: 分別是由os 還是hardware(我猜是mmu )來做set , read, clear
: 得到的答案是
: Valid bit in page table
: 是由OS set , read by hardware ,clear by OS
: Reference bit in page table
: 是由hardware set ,read by OS, clear by OS
: Dirty but in page table 是由hardware set , read by OS, clear by OS
: 雖然洪逸筆記上有說這三個bit
: 但我還是不太清楚為什麼是這樣
: 有人可以幫忙說明一下嗎
: 感謝!
vaild bit:
此bit代表page table entry是否含有有用的資料,當page fault發生時os會把miss page
load到memory並把physical page number和virtual page number的對應更新到page tab
le並把vaild bit設1,此bit由HW讀取,為1的時候才做虛擬到實體位址的轉換,至於由os cl
ear的部份有點忘了。
reference bit:
代表此entry最近有沒有被參考到,HW在做虛擬和實體位址轉換的時候會去設定bit,當pag
e fault發生時os挑victim page的演算法(ex:LRU) 參考此bit去挑選victim page並取代
,新加入的entry是由os設定,因為他剛加入還沒被參考過所以reference bit為0
dirty bit:
代表此entry的內容是否有修改過,當process對page write時HW會去設定此bit,而os要sw
ap某page時會去看此bit是否為1,為1的話則需把資料更新回disk,否則直接更新page tabl
e的entry即可,同樣的新加入的entry是由os設定,其dirty bit為0(這應該算是clear)
抱歉手邊沒課本所以憑印象回覆,還請高手們更正補充~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.142.13.73
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1451531553.A.76C.html
推
12/31 20:28, , 1F
12/31 20:28, 1F
→
12/31 20:28, , 2F
12/31 20:28, 2F
→
01/01 13:34, , 3F
01/01 13:34, 3F
→
01/01 19:53, , 4F
01/01 19:53, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):