看板 Grad-ProbAsk 關於我們 聯絡資訊
http://i.imgur.com/XVqzLyk.jpg http://i.imgur.com/zCAIOf8.jpg TLB vaild bit 跟 page table vaild bit 差在哪裡 ----- Sent from JPTT on my iPhone -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 58.114.183.224 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1486308262.A.62B.html
CurieAstors: TLB Valid bit 是零 表示那是不要的舊資料 而page 02/05 23:35
CurieAstors: table的valid bit是零 表示頁還沒被使用 02/05 23:35
CurieAstors: 有錯誤的話 麻煩大家幫我訂定 02/05 23:35
ssssIssss: 我覺得是一樣的?樓上說的有沒有被使用應該是dirty bit 02/05 23:37
ssssIssss: 或modified bit? 02/05 23:37
ssssIssss: 阿我錯了抱歉,在page table的valid bit是在指有沒有在 02/05 23:40
ssssIssss: memory裡 02/05 23:40
ssssIssss: 如果1是在memory裡,0的話在Disk中,要存取會發生page 02/05 23:40
ssssIssss: fault 02/05 23:40
ab830921: 張凡下冊185頁有寫TLB 02/05 23:43
ab830921: Valid:to indicate the page to be access is in physic 02/05 23:43
ab830921: al memory 不過不太懂意思 02/05 23:43
CurieAstors: dirty bit我記得是用來判斷LRU的 ~~ 02/05 23:46
CurieAstors: page table的valid bit 好像就是S大說的 02/05 23:48
lingege32: dirty bit 表明置換page時要不要寫入disk 02/06 01:07
lingege32: reference bit才是給LRU的 02/06 01:07
lingege32: TLB和page table的 valid bit是一樣的 02/06 01:09
lingege32: 就是你看到這個entry時 他看到valid是0就表示 page fa 02/06 01:09
lingege32: ult了 02/06 01:09
yupog2003: 我印象也是TLB跟page table的valid bit是一樣的 02/06 07:08
yupog2003: 就像l大說的那樣 02/06 07:08
gary19941208: 我覺得是不一樣的,page table的是指有沒有在memory 02/06 10:21
gary19941208: ,TLB是指是否有效可存取。當context switch後TLB 02/06 10:21
gary19941208: 內可能都是invalid(都是上個process的)但那些page在 02/06 10:21
gary19941208: 該process的page table 上是valid的 02/06 10:21
AllenPaul: 我只知道全名是 translation lookaside buffer 然後昨 02/06 10:22
AllenPaul: 天考中興不知道是這三個字 02/06 10:22
yupog2003: 考量到context switch之後他們的值的確會不一樣 02/06 10:42
yupog2003: 不過他們的用意應該是一樣的? 02/06 10:43
yupog2003: 都是想要指出這個PPN是否可以直接存取,不過TLB的valid 02/06 10:46
gary19941208: 用意是指? 02/06 10:46
yupog2003: bit為0代表的意義可能是剛context switch完,而page 02/06 10:47
yupog2003: table的valid bit為0的原因是不在physical memory 02/06 10:47
yupog2003: 這樣講一講好像又不一樣了XD 02/06 10:47
yupog2003: 不過剛context switch完page table也被換掉了,這裡是 02/06 10:49
gary19941208: 我是覺得這樣就不能說這兩個valid bit一樣,不然硬 02/06 10:49
gary19941208: 要說的話都是要讓系統順利進行不就所有東西都一樣了 02/06 10:49
gary19941208: @@ 02/06 10:49
yupog2003: 會直接把TLB的valid bit全清為0嗎?還是會去看 02/06 10:49
yupog2003: page table來設定呢? 02/06 10:49
yupog2003: 也是拉,OS裡面很多東西用意都是一樣的,實踐方法不同 02/06 10:50
yupog2003: 硬說他們一樣也不太對,我覺得我再去研究一下好了 02/06 10:51
gary19941208: 這應該就看怎麼設計了吧,沒有唸到這部分...但全清 02/06 10:51
gary19941208: 為0是一個選項 02/06 10:51
yupog2003: 不過我有一個想法,如果先不考慮context switch的話 02/06 10:53
yupog2003: TLB的valid bit為0應該不太可能是因為不在physical 02/06 10:53
yupog2003: memory?因為在TLB裡面的page應該都是最新剛用到的, 02/06 10:54
yupog2003: 應該都會在physical memory裡面,這觀念是否有誤? 02/06 10:54
gary19941208: 但是過程中也有可能被swap out ,如果你要限制說pro 02/06 10:57
gary19941208: cess都很順利執行,沒有其他事情發生,那應該就沒 02/06 10:57
gary19941208: 錯 02/06 10:57
gary19941208: 所以一般寫操作題目比較不會有這種情況吧,因為不 02/06 10:58
gary19941208: 用考慮那麽多 02/06 10:58
ken52011219: 我的認知是 TLB不需要 Vaild bit 02/06 11:00
ken52011219: 雖然好像在交大的考古題有過一次使用TLB 使用Vaild 02/06 11:01
yupog2003: 嗯嗯,被swap out之後TLB的valid bit會被設為0 02/06 11:01
yupog2003: 還是gary大考慮週到XD 02/06 11:01
yupog2003: 怕就是問True or False沒考慮到一些情況會寫錯QQ 02/06 11:02
ken52011219: 我想錯了QQ 考前一個大崩潰 02/06 11:06
yupog2003: 喔喔我剛剛看到一個東西,張凡書上寫TLB hit imply 02/06 11:10
yupog2003: page table hit,應該就是說若TLB的valid bit為1,則 02/06 11:11
yupog2003: page table的valid bit為1,但TLB valid bit為0的情況 02/06 11:12
yupog2003: page table valid bit倒是沒說,而且他只用imply,不是 02/06 11:13
yupog2003: 用等價的關係,確實是不太一樣 02/06 11:14
ssssIssss: 我也認為不一樣,TLB的Valid bit應該是判斷是不是舊資 02/06 15:33
ssssIssss: 料,因為在TLB中的一定在memory上(SWAP OUT感覺有點 02/06 15:33
ssssIssss: 太細,畢竟學校教的跟講義上都會認為在TLB上就一定在me 02/06 15:33
ssssIssss: mory上),而且PT是專屬的但TLB是共用的buffer 02/06 15:33