海量儲存管理
磁碟是主要使用的海量儲存裝置。它們在當今的作業系統中提供了大部分的輔助儲存。
磁碟結構
每個現代磁碟都包含同心圓軌道,每個軌道都分成多個扇區。磁碟通常被組織成一維的塊陣列,其中塊是最小的儲存單元。塊也可以稱為扇區。對於磁碟的每個表面,都有一個讀/寫磁頭可用。所有表面上的相同軌道稱為柱面。
磁碟排程
有很多磁碟排程演算法可以為磁碟的各種請求提供總的磁頭移動量。以下是磁碟排程演算法的型別:
所有這些演算法都是使用以下對磁碟的請求進行解釋的:
10,95,23,78,80
先來先服務排程 (FCFS)
在先來先服務排程中,請求按其到達的順序進行服務。該演算法是公平的,因為它允許所有請求都有機會,但它不提供最快的服務。下面給出了 FCFS 排程的示例:
在上面的示例中,請求按其出現的順序進行服務,即 10、95、23、78、80。尋道磁頭最初位於 50,並從那裡開始。
最短尋道時間優先排程
在最短尋道時間優先排程演算法中,最靠近當前磁頭的請求會在移開之前先得到服務。SSTF 演算法的一個問題是它可能會導致某些請求出現飢餓。下面給出了最短尋道時間優先排程的示例:
在上面的示例中,請求按 23、10、78、80、95 的順序進行服務。尋道磁頭最初位於 50,並從那裡開始。23 最靠近 50,因此它首先得到服務。然後 10 比 78 更靠近 23,因此它接下來得到服務。在此之後,78、80 和 95 得到服務。
SCAN 排程
在此排程演算法中,磁頭在一個方向上移動,同時服務該方向上的所有請求,直到到達磁碟的末端。之後,它開始向另一個方向移動。這樣,磁頭就會持續地在磁碟上掃描來回移動。下面給出了 SCAN 排程的示例:
在上面的示例中,請求按 23、10、78、80、95 的順序進行服務。磁頭最初位於 50,並向左移動,同時服務請求 23 和 10。當它到達磁碟的末端時,它開始向右移動,並按出現順序服務 78、80 和 95。
LOOK 排程
LOOK 排程演算法類似於 SCAN 排程,但它是其實用版本。在此演算法中,磁頭在一個方向上移動,同時服務該方向上的所有請求,直到到達最後一個請求。之後,它開始向另一個方向移動。下面給出了 LOOK 排程的示例:
在上面的示例中,請求按 23、10、78、80、95 的順序進行服務。磁頭最初位於 50,並向左移動,同時服務請求 23 和 10。當它到達左側的最後一個請求(即 10)時,它開始向右移動,並按出現順序服務 78、80 和 95。
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP