普考-資訊處理計算機概要114 年第 23 題單選題
每當行程需要對硬碟輸入或輸出資料時,它都會向作業系統發出系統呼叫,這項系統呼叫不包括下列那一個資訊?
A資料傳輸的記憶體位址
B傳輸的資料量
C硬碟的存取速度正確答案
D此操作是輸入還是輸出
C正確答案
I/O 系統呼叫需告知作業系統「做什麼、對誰做、做多少」,但硬碟速度是硬體規格,OS 自己會查。
為什麼答案是 C
硬碟存取速度是硬體本身的特性,由裝置驅動程式與硬體控制器處理,行程根本不需要也不應該告訴 OS 這件事。
載入中…
完整詳解
Pro · 無限重點 I/O 系統呼叫需告知作業系統「做什麼、對誰做、做多少」,但硬碟速度是硬體規格,OS 自己會查。
系統呼叫傳的是「參數」,硬體效能是裝置驅動程式管的事,與呼叫參數無關。
逐選項分析
A✕
資料要放到記憶體哪裡(buffer 位址)是必要參數,OS 才知道要把資料讀到哪或從哪寫出。
B✕
傳輸位元組數(count)必須指定,否則 OS 不知道要搬多少資料,這是 read/write 系統呼叫的標準參數。
C✓ 正確
硬碟存取速度是硬體本身的特性,由裝置驅動程式與硬體控制器處理,行程根本不需要也不應該告訴 OS 這件事。
D✕
輸入 (read) 或輸出 (write) 是兩種不同操作,必須明確指定方向,OS 才知道資料流向。
I/O 系統呼叫常見參數
| 參數 | 用途 | 是否必要 | 範例 |
|---|
| 操作類型 | read 或 write | ✅ 必要 | read()/write() |
| 檔案/裝置代碼 | 指定目標 | ✅ 必要 | file descriptor |
| 記憶體位址 | buffer 位置 | ✅ 必要 | &buf |
| 資料量 | 傳輸大小 | ✅ 必要 | 1024 bytes |
| 硬體速度 | 硬體規格 | ❌ 不需要 | 由 driver 管 |
把「硬體規格」和「系統呼叫參數」混在一起。系統呼叫是應用程式對 OS 的請求,只傳達「做什麼」;硬體速度屬於裝置驅動層,OS 透過驅動程式處理,行程不需要、也無從得知硬碟速度。