作業系統與硬體

關於IOMMU的主要作用,下列何者正確?

  1. A將CPU的指令翻譯成輸入輸出裝置的指令後執行
  2. B在輸入輸出裝置閒置時自動切斷電源,以降低耗電量
  3. C轉換裝置DMA的位址,防止非法存取
查看答案與解析

正確答案:C. 轉換裝置DMA的位址,防止非法存取

使用DMA的裝置可以直接讀寫主記憶體,因此誤動作或惡意的裝置有可能改寫作業系統的記憶體。IOMMU就像CPU的MMU一樣,將裝置所使用的位址轉換成實體位址,並阻擋對允許範圍以外的存取。它也能讓不連續的實體記憶體對裝置而言看起來是連續的,並在將裝置直接分配給虛擬機器時使用。它不是負責翻譯指令或控制電源的裝置。

  • A. 它不是翻譯指令的裝置。
  • B. 電源控制是由其他機制負責。
  • C. 正確。轉換裝置DMA的位址以提供保護。
練習這個領域 前往領域頁面

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

  1. 關於裝置驅動程式(device driver)的作用,下列何者正確?
  2. 一般的作業系統不讓應用程式直接讀寫裝置暫存器,其主要理由為何?
  3. 在一台電腦上,讓多個作業系統各自作為獨立的虛擬機器同時運作的軟體稱為什麼?
  4. 關於虛擬機器監視器(hypervisor)類型的說明,下列何者正確?
  5. 在使用巢狀分頁(nested paging,兩層位址轉換)的虛擬化中,關於硬體進行位址轉換的說明,下列何者正確?

這個領域的比較