海量儲存管理


磁碟是主要使用的海量儲存裝置。它們在當今的作業系統中提供了大部分的輔助儲存。

磁碟結構

每個現代磁碟都包含同心圓軌道,每個軌道都分成多個扇區。磁碟通常被組織成一維的塊陣列,其中塊是最小的儲存單元。塊也可以稱為扇區。對於磁碟的每個表面,都有一個讀/寫磁頭可用。所有表面上的相同軌道稱為柱面。

磁碟排程

有很多磁碟排程演算法可以為磁碟的各種請求提供總的磁頭移動量。以下是磁碟排程演算法的型別:

Disk Scheduling Algorithms

所有這些演算法都是使用以下對磁碟的請求進行解釋的:

10,95,23,78,80

先來先服務排程 (FCFS)

在先來先服務排程中,請求按其到達的順序進行服務。該演算法是公平的,因為它允許所有請求都有機會,但它不提供最快的服務。下面給出了 FCFS 排程的示例:

在上面的示例中,請求按其出現的順序進行服務,即 10、95、23、78、80。尋道磁頭最初位於 50,並從那裡開始。

最短尋道時間優先排程

在最短尋道時間優先排程演算法中,最靠近當前磁頭的請求會在移開之前先得到服務。SSTF 演算法的一個問題是它可能會導致某些請求出現飢餓。下面給出了最短尋道時間優先排程的示例:

SSTF Disk Scheduling

在上面的示例中,請求按 23、10、78、80、95 的順序進行服務。尋道磁頭最初位於 50,並從那裡開始。23 最靠近 50,因此它首先得到服務。然後 10 比 78 更靠近 23,因此它接下來得到服務。在此之後,78、80 和 95 得到服務。

SCAN 排程

在此排程演算法中,磁頭在一個方向上移動,同時服務該方向上的所有請求,直到到達磁碟的末端。之後,它開始向另一個方向移動。這樣,磁頭就會持續地在磁碟上掃描來回移動。下面給出了 SCAN 排程的示例:

Disk Scheduling

在上面的示例中,請求按 23、10、78、80、95 的順序進行服務。磁頭最初位於 50,並向左移動,同時服務請求 23 和 10。當它到達磁碟的末端時,它開始向右移動,並按出現順序服務 78、80 和 95。

LOOK 排程

LOOK 排程演算法類似於 SCAN 排程,但它是其實用版本。在此演算法中,磁頭在一個方向上移動,同時服務該方向上的所有請求,直到到達最後一個請求。之後,它開始向另一個方向移動。下面給出了 LOOK 排程的示例:

LOOK Disk Scheduling

在上面的示例中,請求按 23、10、78、80、95 的順序進行服務。磁頭最初位於 50,並向左移動,同時服務請求 23 和 10。當它到達左側的最後一個請求(即 10)時,它開始向右移動,並按出現順序服務 78、80 和 95。

更新於: 2020-06-22

7K+ 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.