普考-資訊處理計算機概要115 年第 23 題單選題
假如時間量(time quantum)比就緒佇列(ready queue)中的每個行程的執行時間長,那麼依序排班法(round-robin scheduling)會退化為下列何種排班法?
A最短的工作先做(shortest-job-first)
B先來先做(first-come, first served)正確答案
C最短剩餘時間優先(shortest-remaining-time-first)
D優先權排班法(priority scheduling)
B正確答案
時間量極大時行程不會被中斷,依序執行完畢,等同先來先做(FCFS)。
為什麼答案是 B
當時間量大於所有行程的執行時間時,每個行程分配到 CPU 後都能一次性執行完畢,不會被強制中斷排回佇列尾端,完全符合先來先做(FCFS)的特性。
載入中…
完整詳解
Pro · 無限重點 時間量極大時行程不會被中斷,依序執行完畢,等同先來先做(FCFS)。
時間量 > 所有行程執行時間 ➔ 不會被強制換下 ➔ 誰先來誰先做完 ➔ FCFS。
逐選項分析
A✕ 陷阱
SJF 需要依執行時間長短來挑選最短的行程。RR 的時間量再大,也不會改變行程進入就緒佇列的先後順序,因此不會退化為 SJF。
B✓ 正確
當時間量大於所有行程的執行時間時,每個行程分配到 CPU 後都能一次性執行完畢,不會被強制中斷排回佇列尾端,完全符合先來先做(FCFS)的特性。
C✕
SRTF 是 SJF 的搶佔式版本,會根據剩餘時間重新排序。RR 排班法本身不具備依據剩餘時間調整順序的機制。
D✕
RR 排班法是以時間量為基礎進行輪流,本身並不考慮行程的優先權,因此不會退化為優先權排班法。
時間量 (Time Quantum) 對 RR 排班法的影響
| 時間量設定 | 系統行為 | 退化結果 |
|---|
| 極大 (大於所有行程) | 行程不會被中斷,一次執行完畢 | FCFS (先來先做) |
| 極小 (趨近於 0) | 頻繁中斷,上下文切換成本極高 | Processor Sharing (處理器共享) |
| 適中 | 平衡回應時間與切換成本 | 標準 RR (時間輪轉) |
考生易誤以為時間量變大,系統就會去挑選最短的行程來執行。其實 RR 的核心是「依序輪流」,時間量夠大隻是讓每個行程能「一次性執行完畢」,並未改變原本進入佇列的先後順序,因此是退化為 FCFS 而非 SJF。