民國110年 第2梯次 電腦軟體設計(C++)乙級 學科

第41題

若有P1、P2、P3、P4 四個行程,每個行程的到達時間依序為第0 秒、第1 秒、第3 秒、第5 秒,而每個行程所需的時間依序為7 秒、5 秒、4 秒、8 秒。…

題目

若有P1、P2、P3、P4 四個行程,每個行程的到達時間依序為第0 秒、第1 秒、第3 秒、第5 秒,而每個行程所需的時間依序為7 秒、5 秒、4 秒、8 秒。若以最短工作先做排班法則(SJF)且 是可搶先(Preemptive)的方式來排班,則其平均等待時間為何?

  1. (1) 5.75 秒
  2. (2) 5 秒
  3. (3) 6 秒
  4. (4) 5.5 秒

官方答案

(1) 5.75 秒

解析

可搶先 SJF 即 SRTF,每次比較剩餘執行時間。t=0 僅 P1 存在,先執行 P1;t=1 P2 到達且 5<6,搶先執行 P2;t=3 P3 到達,因 4>3 不搶先,P2 於 t=6 完成;t=6 比較 P1 剩 6、P3 需 4,執行 P3 至 t=10;之後 P1 於 10~16 完成,P4 於 16~24 完成。等待時間=完成時間-到達時間-執行時間:P1=16-0-7=9、P2=6-1-5=0、P3=10-3-4=3、P4=24-5-8=11,合計 23,平均 23÷4=5.75 秒。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料