看板 Grad-ProbAsk 關於我們 聯絡資訊
抱歉,版上討論時冷時熱,沒注意到之前那篇還有人回, 以下將你的說明套色,後面附上我的說明 1. 12(B) : 我看恐龍書寫說 program counter 記錄的是下一個指令的位址,而不是目前 在執行的? 當下沒想那麼多,不過你說的是對的,因為計組中指令再算branch target時 , PC代表的值也是下個指令所再的記憶體位置,會修正於第一篇文的答案 2. 想請問13(B) :我覺得 waiting time是指在ready queue 中等待的時間,所以P2第二 次執行等待的時間應該不用計入waiting time裡,所以B應該是對的? 我是照你的說法算的,所以average waiting time = [0+(7+3)+9]/3 [...]分別就是p1,p2,p3的 waiting time , 看看和你的做法出入在哪 3. 13(D) 正確答案應該是什麼呢?? 13(D)我是把它當成每單位時間完成的job數量 , 所以我認為答案是 3/16 因為沒看過Average throughput的定義,所以不是很嚴謹,只是單從字面上猜測 如果有版友有原文出處再請幫忙補充 4. 想確認17(C)做法是:只要被reference過則reference bit就變成1,replace過後refe rence bit也立刻變1。然後每次要replace時都從第一個開始檢查,若reference bit 是1 ,則改成0 並且繼續往下找;若reference bit 是0 則replace. (這個選項怎麼樣都做不 出這個答案...) 有2個假設 1.每次page fault的時候都是由第一個page往下依序判斷誰要被替換 2.沒有考慮是否modified 白色代表還有一次機會,紅色代表機會用完了 做法:遇到白色就變紅色,遇到紅色就直接換 當被reference到時,由紅色變白色 0 1 2 3 4 1 5 0 2 1 3 2 4 1 5 2 0 1 3 2 4 1 5 0 0 0 0 4 4 5 5 2 2 2 4 4 4 2 2 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 4 4 4 2 2 2 2 2 0 0 0 0 0 0 5 5 5 5 5 5 5 5 5 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 上述是我對恐龍本理解後的做法,和我之前看到的一些參考資料有些不同 補習班的資料好像是寫<Reference bit , Modify bit>視為二進位,數字小的先被換 因為我不知道modify bit要幹麻 , 所以後來就直接改成看誰被reference而已 , 我不確定正確性,和版友認知有出入麻煩提出來討論,免得我在這誤人子弟 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.166.75.2 ※ 文章網址: http://www.ptt.cc/bbs/Grad-ProbAsk/M.1420882129.A.52C.html
winnie48: 謝謝回答! 01/10 17:39
winnie48: 13D 我那時候眼花看反了@@ 想法和你一樣! 01/10 17:39
winnie48: 13B 我是在想由P2到P3會不會是因為P2要做I/O所以自動放 01/10 17:41
winnie48: 棄,所以我才沒有算進7~9秒那段時間 01/10 17:41
winnie48: 更正:9~12秒 01/10 17:42
你是對的,寫太快想的少了,第7秒應該就去等I/O了,所以waiting queue中的時間 並不算在waiting time中 , 如果做到其他題有出入的在丟上來討論一下 ※ 編輯: qoojordon (118.166.75.2), 01/10/2015 17:54:04
winnie48: 謝謝!! 01/10 18:08