linux檔案系統 磁碟硬體篇

2021-09-22 10:06:46 字數 2438 閱讀 1139

本系列磁碟管理,本週在學習磁碟管理的知識。本系列準備將磁碟以及檔案系統都整理一遍。因為本渣渣不是計算機專業畢業的,所以最近在學習基礎的計算機知識,如有不對的,望指正。

以下主要介紹機械式硬碟

固態硬碟(ssd) 採用快閃儲存器顆粒來儲存

機械硬碟(hdd) 採用磁性碟片來儲存

扇區,磁軌(或柱面)和磁頭數構成了硬碟結構的基本引數

儲存容量 = 每個扇區位元組數×每個磁軌的扇區數×磁軌數×磁頭數

上圖 算每個扇區的位元組數為512位元組,每個磁軌劃分12個扇區,每個盤面上有7個磁軌,三個盤面(6個磁頭數)

儲存容量 512×12×7×6 = 258048

每個磁軌的扇區數一樣?

老的硬碟,外圈的密度小,內圈的密度大,每圈可儲存的資料量是一樣的,外圍的扇區明顯比內圈的扇區要寬,這就浪費了很多磁軌長度

有了多多區記錄技術,外圍的磁軌就可以劃分為更多的扇區,新的磁碟資料的密度都一致,這樣磁軌的周長越長,扇區就越多,儲存的資料量就越大

因此現在這裡說的每個磁軌扇區數一樣是整個盤面平均算的

如果要讀取某個位置(盤面,磁軌,扇區)的內容,首先,磁臂要移動磁頭到響應的磁軌位置,以及對應的盤面,這就是尋道時間。

但是這時,你的資料不一定當好就在這時的扇區,所以你得等,等轉到所要讀取的扇區後在進行資料讀取,這要靠硬碟的轉速

旋轉延遲:碟片旋轉將請求資料所在扇區移至讀寫磁頭下方所需要的時間,旋轉延遲取決於磁碟轉速。

筆記本的硬碟 5400轉/分

台式電腦的硬碟 7200轉/分

小結一下:從上面的指標來看、其實最重要的、或者說、我們最關心的應該只有兩個:尋道時間;旋轉延遲。

cpu要從磁碟讀入乙份資料的過程

cpu傳送一條指令,讀取資料

這條指令通過系統匯流排,橋間匯流排,pci匯流排傳遞到磁碟控制器。控制器收到指令後明白這次是一次讀請求,且讀完了是否要中斷的資訊。做好準備工作,等待讀取資料

cpu 再傳送一條指令,讀入記憶體位址

這條指令還是通過一系列匯流排發給磁碟控制器之後,磁碟控制器就開始忙活,找到邏輯塊對應的物理塊位址,查詢,尋道等工作,就開始讀取資料

cpu再傳送一條指令說讀取記憶體的位址

當收到這條指令後,cpu就不管了,他告訴乙個叫dma的匯流排,說接下來就靠你了。dma裝置會接管匯流排,負責將磁碟資料通過pci匯流排,橋間匯流排,記憶體匯流排同步到記憶體指定位置

注:對於磁碟控制器式如何管理各個磁碟的,在之後篇幅進行描述

cpu要從磁碟讀入乙份資料的過程

cpu傳送一條指令,讀取資料

這條指令通過系統匯流排,橋間匯流排,pci匯流排傳遞到磁碟控制器。控制器收到指令後明白這次是一次讀請求,且讀完了是否要中斷的資訊。做好準備工作,等待讀取資料

cpu 再傳送一條指令,讀入記憶體位址

這條指令還是通過一系列匯流排發給磁碟控制器之後,磁碟控制器就開始忙活,找到邏輯塊對應的物理塊位址,查詢,尋道等工作,就開始讀取資料

cpu再傳送一條指令說讀取記憶體的位址

當收到這條指令後,cpu就不管了,他告訴乙個叫dma的匯流排,說接下來就靠你了。dma裝置會接管匯流排,負責將磁碟資料通過pci匯流排,橋間匯流排,記憶體匯流排同步到記憶體指定位置

注:對於磁碟控制器式如何管理各個磁碟的,在之後篇幅進行描述

讀寫過程分兩頭,一頭將資料從各個盤面中讀取出來,一頭將資料送給計算機

1.從盤面中讀取資料

在磁碟中,順序讀取會比隨機讀取快很多。如果我們按順序遍歷磁碟的資料,那麼讀取順序是這樣的:

1.讀取0盤面的0磁軌(最下面的盤面的最外磁軌),等盤面旋轉完一圈後,這個磁軌被讀取完畢

2.切換到第二個盤面,讀第二塊盤面的最外面乙個磁軌,以此類推。

3.磁臂在向內移動乙個磁軌,重複剛剛過程,直到讀到最裡面的磁軌

磁臂移動速度慢,剛剛是按順序讀取的時候,但往往在真實情況下,會有大量的隨機訪問的情況下,就需要考慮磁臂排程演算法。例如rss,fifo,pri,sstf,scan/look等

2.將資料送給計算機

從磁碟中讀取到資料,接下來我們磁碟通過什麼樣的介面跟計算機做互動?這個介面也叫磁碟管理協議

磁碟管理協議的定義又分成兩部分:軟體和硬體。其中軟體是指指令級,目前指令級就兩個:ata和scsi;硬體代表資料傳輸方式,一般都是主機板上的導線傳輸原理,但並不限制,資料甚至可以通過tcp/ip傳輸。定義乙個協議需要同時定義了指令級以及硬體傳輸方式

扇區,磁軌(或柱面)和磁頭數構成了硬碟結構的基本引數

讀寫一次磁碟資訊所需的時間可分解為:尋道時間、延遲時間、傳輸時間。為提高磁碟傳輸效率,軟體應著重考慮減少尋道時間和延遲時間。

比如講常用的資料存放在0磁軌(最外面的磁軌),因為這個扇區在最外層,角速度一樣,每秒走過的周長就越長,讀的資料就多。

以上介紹的是磁碟的物理儲存方式,接下來會有邏輯層面的資料管理。

linux磁碟 檔案系統

計算機儲存和組織資料的方法或者機制。軟體 磁碟是物理介質 磁粒子物理元素。硬體需要軟體驅動使用。檔案系統實現通過磁碟管理規劃 儲存資料。windows ntfs fat32 msdos linux ext2 ext3 c5 ext4 c6 xfs centos7 8 btrfs 在虛擬機器建立乙個磁...

三 磁碟與檔案系統篇(1) 初識檔案系統

1.檔案系統詳解 linux檔案系統主要是ext2 ext3 ext4等等,它主要是管理系統的資料,資料是儲存在磁碟裡面的,當磁碟被分割槽 格式化後就可以正常的訪問資料了,其實格式化就是向分割槽的部分寫入檔案系統,在檔案系統的概念中,資料是怎麼儲存的,還有那些檔案的屬性 許可權等又是儲存在什麼地方的...

Linux磁碟和檔案系統

linux一般使用fdisk來分割槽,fdisk基本支援所有的作業系統。fdisk是基於mbr的分割槽工具,如果使用gpt分割槽的話是不能使用fdisk的。fdisk l可以列出所有安裝的磁碟及其分割槽資訊 cat proc partitions可以檢視分割槽資訊,proc儲存系統的實時資訊 fdi...