作業系統與硬體

作業系統即使面對不主動釋出CPU的程式,仍能每隔一段時間取回CPU並切換到其他行程,主要是靠什麼機制?

  1. A快取未命中
  2. B計時器中斷
  3. C寫入時複製
查看答案與解析

正確答案:B. 計時器中斷

作業系統會設定計時器,使其每隔一段時間(時間片,time slice)就引發計時器中斷。一旦發生中斷,CPU必定會轉移到核心的中斷處理常式,因此即使程式陷入無限迴圈,作業系統也能取回控制權,並環境切換到其他行程。這稱為搶佔式(preemptive)排程。快取未命中與寫入時複製都不是用來取回CPU的機制。

  • A. 快取未命中由硬體處理,控制權不會轉移給作業系統。
  • B. 正確。藉由定時的中斷,作業系統取回控制權。
  • C. 寫入時複製是寫入時才複製分頁的方式。
練習這個領域 前往領域頁面

作業系統與硬體的其他題目

  1. 如上方所示,以記憶體映射I/O(memory-mapped I/O)讀取裝置的狀態暫存器時,加上volatile並將該區域設為不快取,其理由為下列何者?
  2. CPU不使用中斷而是反覆檢查裝置狀態的方式(輪詢,polling),在下列哪種情況較有利?
  3. 在硬體不維持快取一致性(非一致性,non-coherent)的系統中,於CPU讀取裝置以DMA寫入主記憶體的資料之前,軟體必須進行下列何種處理?
  4. 關於IOMMU的主要作用,下列何者正確?
  5. 關於裝置驅動程式(device driver)的作用,下列何者正確?

這個領域的比較