→ kyuudonut: software-based interrupt12/05 10:13
那非法存取也是softbased嗎
→ kyuudonut: 2. 第一個index不用算吧12/05 10:19
我的筆記抄的答案是這樣,我也有點困惑@@
※ 編輯: newpuma (114.136.171.105), 12/05/2016 11:19:58
推 kyuudonut: yes 12/05 11:36
推 DZASHIANG: Page fault 算hw-generated吧 非法存取是sw-generated 12/05 12:19
→ DZASHIANG: 有誤請指正 12/05 12:19
→ DZASHIANG: 另外借標題問一下 一個執行中的process 若TLB miss ,pa 12/05 12:25
→ DZASHIANG: ge table hit ,會被中斷到waiting狀態嗎 是不是依據TLB 12/05 12:25
→ DZASHIANG: miss 由軟體or硬體處理有不同結果? 12/05 12:25
→ kyuudonut: no, page fault is software-based interrupt 12/05 13:19
→ kyuudonut: 會有不同結果 但這個時間極短 存取一次memory而已 12/05 13:22
→ kyuudonut: 除非是page failt或做I/o才有可能到waiting 12/05 13:22
→ kyuudonut: 存取一次memory應該都還在cycle time以內 不至於切到 12/05 13:23
→ kyuudonut: waiting 12/05 13:23
→ DZASHIANG: Pagefault是trap沒錯,謝謝指正。另外再請問TLB miss pa 12/05 14:05
→ DZASHIANG: ge table hit時,cpu會直接從page table 讀入需要的pag 12/05 14:05
→ DZASHIANG: e還是把TLB更新後再存取一次TLB?os課本寫的是第一種, 12/05 14:05
→ DZASHIANG: 計組課本的說法好像是第二種,是有兩種版本嗎 12/05 14:05
→ DZASHIANG: 剛剛翻到,如果TLB miss且由硬體處理,cpu只會stall , 12/05 14:15
→ DZASHIANG: 正在執行的process維持running. 若由interrupt to os 12/05 14:15
→ DZASHIANG: 處理,process切到waiting,這樣的說法有錯嗎 12/05 14:15
→ kyuudonut: 不太清楚計組課本是哪種 還請你貼圖一下 我prefer更 12/05 14:32
→ kyuudonut: 新TLB再存取TLB一次 12/05 14:32
→ kyuudonut: process不會切到waiting, 除非有啟動scheduler 12/05 14:33
→ kyuudonut: 若為linux則會切到interrupted的狀態 12/05 14:35
→ ken52011219: TLB miss 時 就會trap了 12/05 17:42
→ ken52011219: 接著 OS 尋找 memory 的page table中的reference 12/05 17:44
→ ken52011219: 若直接找到該frame 即可使用 並且同時將該frame 的 12/05 17:45
→ ken52011219: NO 值 以及 Page no 值增加到TLB上 12/05 17:45
推 kyuudonut: @ken 如果該系統有MMU的話 應該會由MMU來做這些固定的 12/05 22:18
→ kyuudonut: (不過好像TLB通常會實作在MMU裡就是了) 12/05 22:21
→ kyuudonut: 不過在白算盤裡 TLB miss是由OS負責 因為課本的MIPS 12/05 22:28
→ kyuudonut: 沒有MMU 不過我當時在學校上課時 老師有補充實務上由 12/05 22:28
→ kyuudonut: MMU來做就可以了 因為切到OS太花時間了 除非是 12/05 22:28
→ kyuudonut: 像page fault需要額外預測的工作 切給OS會比較有效益 12/05 22:29
→ kyuudonut: 有點離題 結論是還是要看實作啦~ 12/05 22:30
推 ken52011219: 了解, 其實OS版本裡有提到 藉由 hardware or via 12/05 22:33
→ ken52011219: interrupt 去執行 12/05 22:33