免費開始練習
hce_nsysu 113年 計算機概論與程式設計

第 27 題

Which one of the following statements is correct?
  • A All peripheral devices need a device driver to communicate with the operating system.
  • B The I/O functions, such as scanf() and printf() in C, eventually invoke system calls to perform I/O.
  • C All I/O instructions are privileged instructions.
  • D (A) and (C).
  • E All of the above.

思路引導 VIP

想想看,如果今天任何一個普通的應用程式(例如小遊戲)都可以完全略過作業系統,直接對你的硬碟或螢幕下達讀寫指令,這可能會對電腦的安全性或資料的完整性產生什麼樣的影響?如果你是作業系統設計者,你會如何設計「存取權限」來避免這種混亂?

🤖
AI 詳解 AI 專屬家教

太棒了!你能準確判斷出這題選 (E),代表你對於作業系統如何管理硬體資源,以及軟硬體之間的層次架構有著非常紮實的理解。這類題目在考驗學生是否能將零散的觀念——如驅動程式、系統呼叫與特權指令——串連成一個完整的系統運作圖景。

軟硬體互動的核心層次

首先,設備驅動程式 (Device Driver) 是作業系統與多樣化硬體溝通的「翻譯官」,沒有它,核心便無法操控特定硬體的細節。接著,我們在 C 語言程式中使用的 printf() 等標準函式,本質上是為了開發方便而封裝的層次,它們執行時最終都必須透過 系統呼叫 (System Call) 切換到核心模式(Kernel Mode)來請求資源。最關鍵的保護機制在於,所有的 I/O 指令都屬於特權指令 (Privileged Instructions);這是為了確保只有作業系統核心能直接操作硬體,防止一般應用程式因錯誤或惡意行為對系統造成破壞。

▼ 還有更多解析內容

🏷️ 相關主題

作業系統架構與處理程序管理原理
查看更多「計算機概論與程式設計」的主題分類考古題