免費開始練習
moea_joint 105年 [資訊] 計算機原理、網路概論

第 18 題

假設有一顆傳統硬碟共有5000個磁柱(Cylinder),這些磁柱的編號依序由0開始至4999。目前磁碟讀寫頭正好在第500個磁柱的位置。在佇列中目前總共有8件工作要完成,這8件工作之開始磁柱位置依照抵達時間的先後順序分別是:86, 100, 305, 4103, 450, 222, 1080, 5。如果我們使用最短尋找時間優先(Shortest-seek-time First)演算法,請問磁碟讀寫頭總共得移動多少磁柱距離?
  • A 4372
  • B 4593
  • C 4705
  • D 4883

思路引導 VIP

如果你現在站在一條長長的走廊上(位置 500),左右兩側都有不同距離的房間需要你去開門。如果你被要求每次都只能走向離你「最近」的那扇門,你會如何決定移動的方向?當你處理完一側所有距離較近的房間後,剩下的目標通常會在哪個方向?

🤖
AI 詳解 AI 專屬家教

恭喜你精準地算出了正確數值!這道題目的核心在於理解 SSTF(最短尋找時間優先) 的貪婪性質:讀寫頭每一次移動,都會優先選擇與「當前位置」距離最近的磁柱。你在解題時,顯然細心地捕捉到了讀寫頭在連續處理完靠近 500 的數個磁柱後,必須產生一次較大幅度的位移去處理遠端的要求,這正是此類題目最考驗耐心的部分。

SSTF 的路徑追蹤與計算

從初始位置 500 開始,讀寫頭會依序尋找距離最近的點:$450 \to 305 \to 222 \to 100 \to 86 \to 5$。這段過程是單向遞減的,因此距離總和為 $|500 - 5| = 495$。接著,由於較小的磁柱都已處理完畢,讀寫頭必須轉向,移動至剩下的 1080,最後到達 4103,這段跨度為 $|4103 - 5| = 4098$。將兩段主要路徑相加:

▼ 還有更多解析內容

🏷️ 相關主題

計算機系統架構與作業系統核心概念
查看更多「[資訊] 計算機原理、網路概論」的主題分類考古題