身心障礙人員考試身障四等-資訊處理類科計算機概要110 年第 9 題單選題
可以將資料與指令綁定於記憶體中的位址的時機共有三個時期,其中不包含下列何者?
A編譯時期(compile time)
B載入時期(load time)
C除錯時期(debug time)正確答案
D執行時期(execution time)
C正確答案
位址綁定 (address binding) 三大時機:編譯、載入、執行,沒有除錯時期。
為什麼答案是 C
除錯時期不是作業系統課本所定義的位址綁定時機,它是開發人員使用 debugger 檢查程式的階段,與記憶體位址綁定無關,為本題答案。
載入中…
完整詳解
Pro · 無限重點 位址綁定 (address binding) 三大時機:編譯、載入、執行,沒有除錯時期。
記口訣「編譯→載入→執行」三階段,除錯是開發動作不是綁定時機。
逐選項分析
A✕
編譯時期綁定:若已知程式將載入記憶體哪個位址,編譯器可直接產生絕對碼 (absolute code),MS-DOS 的 .COM 檔即是典型。
B✕
載入時期綁定:編譯時產生可重定位碼 (relocatable code),載入器 (loader) 載入時才決定最終位址,程式不能在記憶體中移動。
C✓ 正確
除錯時期不是作業系統課本所定義的位址綁定時機,它是開發人員使用 debugger 檢查程式的階段,與記憶體位址綁定無關,為本題答案。
D✕
執行時期綁定:程式執行中才決定位址,需要 MMU 硬體支援 (base/limit register),可在記憶體中動態搬移,是現代 OS 最常用的方式。
Address Binding 三時期比較
| 時期 | 誰負責 | 特性 | 代表 |
|---|
| 編譯時期 | Compiler | 產生絕對碼,位址固定 | MS-DOS .COM |
| 載入時期 | Loader | 產生可重定位碼,載入才定址 | 早期 OS |
| 執行時期 | MMU 硬體 | 執行中動態決定,可搬移 | 現代 OS (虛擬記憶體) |
命題者將「debug time」混入選項,看似合理的開發階段名詞,但 Silberschatz《作業系統》教科書明確只列 compile/load/execution 三時期,除錯不屬於位址綁定範疇,考生若不熟定義容易被誤導。