機械硬盤

1 機械硬盤

1.0 硬盤外部結構

<div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720155854672-455691115.jpg"></div> <center>圖1.0 機械硬盤結構</center>html

1.2 磁盤結構

<div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720160335403-297059461.jpg"></div> <center>圖1.2 磁盤結構</center>安全

磁盤有多個磁片,每一個磁片有兩面,每一個每一個面有一個磁頭,用於讀取磁片信息,磁片被劃分爲多個扇形區域即扇區,同一磁片不一樣半徑的同心圓爲磁道,不一樣磁片相同半徑構成的圓柱面稱爲柱面。服務器

名詞 描述
柱面 各磁盤相同位置上磁道的集合
磁盤容量 磁頭數×磁道(柱面)數×每道扇區數×每扇區字節數

1.3 磁片結構

<div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720160435119-885814320.png"></div> <center>圖1.3 磁片結構</center> - 盤面上的同一個磁道構成一個圓柱(柱面),數據的讀寫按柱面由外向內進行,而不是按盤面進行,定位時,首先肯定柱面,再肯定盤面,而後肯定扇區,以後全部磁頭一塊兒定位到指定柱面,再旋轉盤面使指定扇區位於磁頭之下.寫數據時,當前柱面的當前磁道寫滿後,開始在當前柱面的下一個磁道寫入,只有當前柱面所有寫滿後,纔將磁頭移動到下一個柱面.在對硬盤分區時,各個分區是以柱面爲單位劃分的,即從柱面到柱面,不存在一個柱面同屬於多個分區. - 現代硬盤技術,不用圓心發散的直線劃分扇區,而是從外圈磁道開始取必定長度做爲一個扇區,而後從外向裏一個個編號,這個編號就是扇區的地址,咱們要肯定文件位置全靠這個地址,扇區都有固定的大小,通常爲512字節,如今的支持先進格式化(NTFS)的硬盤都採用4096字節做爲一個扇區. - 術語網絡

序號 術語 描述
1 磁道(Track) 每一個盤面被劃分爲許多同心圓,這些同心圓軌跡稱爲磁道,磁道由外向內,從0開始編號
2 扇區(Sector) 將一個盤面劃分爲若干內角相同的扇形,這樣盤面上的每個磁道就被劃分爲若干段圓弧,每段圓弧叫作一個扇區,每一個扇區中的數據做爲一個單元同時讀出或寫入,硬盤的第一個扇區,叫作引導扇區.舊式硬盤,磁道周長不一樣,每一個磁道上扇區數相同,越往圓心弧越短,存儲密度越高,顯然浪費空間;現代硬盤改成等密度結構,即外圍磁道上扇區數量大於內圈磁道,尋址方式改成以扇區爲單位的線性尋址,對扇區進行查詢和管理,須要對扇區進行編號,扇區的編號從0磁道開始,起始扇區爲1扇區,依次增長,0磁道的扇區編號結束後,1磁道的起始扇區累計編號
3 DOS進行分配的最小單位,當建立一個很小的文件時,如一個字節,則在磁盤上並不僅佔一個字節的空間,而是佔有整個一個簇,簇的大小可在稱爲磁盤參數塊(BPB)中獲取,簇僅適用於數據區,磁盤驅動器在向磁盤讀取和寫入數據時,要以扇區爲單位,在磁盤上,DOS操做系統是以"簇"爲單位,爲文件分配磁盤空間.硬盤的簇一般爲多個扇區,與磁盤的種類,DOS版本和硬盤分區大大小有關,每一個簇智能由一個文件佔用,及時這個文件只有幾個字節,毫不容許兩個以上文件共用一個簇,不然會形成數據混亂
4 扇面 一個磁片面上,同心圓由外到內的扇區組成的一個面,稱爲扇面,磁盤面由分紅多個扇面,扇面分爲多個扇區

1.4 數據讀取

  • 讀取過程 機械硬盤讀取數據,先經過磁頭找到對應的磁道和扇區(對於多碟的機械硬盤首先須要肯定柱面),這所有依靠磁頭的驅動馬達來驅動(磁頭自己是依靠磁片旋轉產生的氣流來懸浮的).馬達等機械裝置的反應速度畢竟不快,因此機械硬盤會浪費大量時間在磁道尋址上(每次尋道大約10ms左右),尤爲是對於零碎的小文件讀取來講,因爲文件所在的扇區不連續,須要不斷進行尋道,這樣性能就大大下降.
  • 讀取性能 平常進行文件讀寫絕大部分是隨機文件讀寫,機械硬盤在這種狀況下花費在尋道的時間不少,系統在機械硬盤上運行速度慢的結果.因此機械硬盤的隨機讀寫能力較差(不超過0.1MB/s),可是持續讀寫性能較好(並且隨着單碟容量的提高和磁片陣列的組建,持續讀寫速度可比固態硬盤更快).若是不使用機械硬盤做爲系統盤,則性能和固態硬盤差異不大,如播放媒體文件.

<div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720160518866-1481608968.png"></div> <center>圖1.4 磁盤讀取速度</center>ide

2 磁盤陣列

磁盤輸入輸出系統要求性能

  • 提升存取速度;
  • 容錯,即安全性;
  • 有效利用磁盤空間;
  • 平衡CPU,內存及磁盤性能差別,提升計算機總體工做性能;

<div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720160927995-1045751735.png"></div> <center>圖2.1 磁盤陣列</center>spa

2.1 陣列介紹

磁盤陣列控制器鏈接四個磁盤,這四個磁盤構成一個陣列,二磁盤陣列的控制器(RAID Controller)將四個磁盤視爲單一的磁盤,如DOS環境下的C盤,磁盤擴展將小容量的磁盤擴充爲大容量的單一磁盤,用沒必要規劃數據在各個磁盤的分佈,並且提升了磁盤空間的使用率,DFTRaid的SISC磁盤陣列可鏈接幾十個磁盤,而各個磁片一塊兒存取的動做比單一磁盤快,磁盤陣列將同一陣列的磁盤視爲單一的虛擬磁盤(Virtual Disk)因此器數據是以分段方式順序存放在磁盤陣列中,如上圖所示.操作系統

2.2 數據存儲

數據按需分段,從第一個磁盤開始存放,放到最後一個磁盤在回到第一個磁盤,直到數據分配完畢.分段大小視系統而定,有的系統以1kb或4kb甚至4mb或8mb存取,但除非數據小於一個扇區(512bytes),不然分段應是512bytes的倍數.機械硬盤的數據讀寫以扇區爲單位,若數據小於512bytes,系統讀取該扇區後,還要作組合或分組的動做,耗費時間.從上圖可知,數據分段於不一樣的磁盤,整個陣列的各個磁盤同時讀寫,故數據分段使存取有更好的性能.設計

level 場景
0/1 PC及PC相關的系統,如小型網絡服務器及須要高磁盤容量與快速磁盤存取的工做站,性價比較高
2/3 大型電腦及影像,CAD/CAM等處理
5 多用於OLTP,由於有金融機構及大型數據處理中心的迫切須要,使用較多且名氣較高

2.3 機械硬盤RAID系列

2.3.1 RAID0

RAID0使磁盤的輸入輸出有最高的效率,而磁盤陣列有更高效率的緣由除了數據分段外,還能夠同時執行多個輸入輸出要求,由於陣列中的每一個磁盤都能獨立動做,分段放在不一樣的磁盤,不一樣的磁盤可同時讀寫,並且能在快取內存及磁盤做並行存取的動做,但只有硬件的磁盤陣列纔有此性能表現.code

2.3.2 RAID1

<div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720161005909-1345155772.png"></div> <center>圖2.2 RAID1磁盤陣列</center>

RAID1使用磁盤鏡像(Disk Mirroring)技術,工做方式爲在工做磁盤以外,增長備份磁片,兩個磁盤所存儲的數據徹底一致,數據寫入工做磁盤時,同時將數據寫入備份磁盤.RAID1徹底作到了容錯包括不停機,當某一磁盤發生故障,可將此磁盤拆下來而不影響其餘磁盤的操做,待新的磁盤換上去,系統即時作鏡像,將數據從新複製.

2.3.3 RAID2

RAID2將數據分散爲位元(bit)或塊(block),加入海明碼(Hamming code),在磁盤陣列中做間隔寫入到每一個磁盤中,並且地址都同樣,即在各個磁盤中,數據都在相同的磁道及扇區中,RAID2設計是使用共軸同步(spindle sychronize)的技術,存取數據時,整個磁盤陣列一塊兒動做,在各做磁盤的相同位置做平行存取,因此有最好的存取時間(access time),其總線(bus)是特別的設計,以大寬帶(band wide)並行傳輸所存取的數據,因此有最好的傳輸時間(transfer time),在大型檔案的存取應用,RAID2有最好的性能,若是檔案過小,性能會降低,由於磁盤的存取以扇區爲單位,而RAID2的存取是全部磁盤平行動做,並且是左單位元的存取,故小於扇區的數量會使其性能大打折扣,RAID2是設計給須要連續大量數據的電腦使用,如大型電腦,做影像處理或CAM/CAD的工做站等,並不適用於通常的多用戶環境,網絡服務器,小型機或PC.RAID2的安全採用內存陣列技術,使用多個額外的磁盤做單位錯誤校訂(single-bit correction)及雙位錯誤檢測(double-bit detction).

2.3.4 RAID3

RAID3的數據存儲技術及存取方式和RAID2同樣,共軸同步,可是在安全方面以奇偶校驗(parity check)取代海明碼左錯誤校訂及檢測,全部只要一個額外的校驗磁盤(parity disk),奇偶校驗值的計算是以各個磁盤的對應位做XOR的邏輯運算,而後將結果寫入奇偶校驗磁盤,任何數據的修改都要作奇偶校驗計算,若是某一磁盤故障,換上新的磁盤,整個磁盤陣列(包括奇偶校驗磁盤)須要從新計算一次,將故障磁盤的數據回覆並寫入新磁盤中,如奇偶校驗磁盤故障,則從新計算奇偶校驗值,以達容錯要求.

<div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720161042340-727985778.png"></div> <center>圖2.3 RAID3 結構</center>

RAID3磁盤利用空間比RAID1和RAID2磁盤利用率達85%,性能比RAID2稍差,由於要作奇偶校驗計算,共軸同步的平行存取在讀檔案是有很好的性能,可是在寫入時較慢,須要從新計算及修改奇偶校驗磁盤內容.RAID3和RAID2有一樣的應用方式,適用大檔案及大量數據輸入輸出的應用,不適用於PC及網絡服務器.

2.3.5 RAID4

RAID4以扇區做爲數據分段,各磁盤形同位置分段造成一個校驗磁片分段(parity block),放在校驗磁盤,這種方式可在不一樣的磁片平行執行不一樣的讀取命令,大幅提升磁片陣列的讀取性能,但寫入數據時,因受限與校驗磁盤,同一時間只能做一次,啓動全部磁盤讀取數據造成同一校驗分段的全部數據分段,與要寫入的數據作好校驗計算再寫入,及時如此,小型檔案的寫入仍然比RAID3快,由於校驗計算簡單而非做位(bit level)計算,(RAID3爲bit級操做),但校驗磁盤造成RAID4的瓶頸,下降了性能,有RAID5,因此RAID4不多使用.

<div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720161111650-1088707909.png"></div> <center>圖2.4 RAID4結構</center> ### 2.3.6 RAID5 RAID5避免了RAID4的瓶頸,即不採用校驗磁盤,而將校驗數據以循環的方式放在每個磁盤中,如圖所示,此片陣列的第一個磁盤分段爲校驗值,第二個磁片至後一個磁盤再折回第一個磁盤的分段是數據,而後第二個磁片的分段是校驗值,從第三個再折回第二個磁盤的分段是數據,一次類推,直到數據放完爲止,圖中的第一個校驗值由A0--A4, B0--B4計算,第二個校驗值由B3,B4, ..., C4,D0計算出來,即校驗值由各磁盤的同一位置的分段數據計算出來,這種方式大幅增長了小檔案的存儲性能,不但可同時讀取,甚至可同時執行多個寫入的動做. <div align=center><img src="https://img2018.cnblogs.com/blog/1470483/201907/1470483-20190720161138390-325164532.png"></div> <center>圖2.5 RAID5結構</center>

RAID5的控制比較複雜,尤爲是利用硬件對磁片陣列的控制,這種方式的應用比其餘RAID level要掌握更多的事情,有更多的輸入輸出要求,既要速度快,又要處理數據,計算校驗值,作錯誤校訂,因此價格較高,應用最好是OLTP,至於PC不見得有最佳的性能.

3 小結

機械硬盤中,電路板上的主控芯片負責與芯片組之間的通訊並控制硬盤內部的運轉,盤片使用磁性材料作成的,固定在硬盤中部的馬達上旋轉,磁頭沿着磁片的徑向移動,剃頭讀寫數據時會在磁片上方移動,移動過程也稱硬盤尋道過程. 磁盤陣列:提升HDD性能的方法之一是組建磁盤陣列,磁盤陣列有多種類型,其中有些是爲保證數據安全的,做爲自動備份而組建的,一般用於提升性能的磁盤陣列爲RAID0,使用4塊硬盤組件RAID0以後,當數據從芯片組傳輸給硬盤,這個數據會被自動劃分爲4個部分,每一個硬盤個存儲一部分,理想狀態下,RAID0的寫入速度翻倍;讀取數據,從各個硬盤各自拿出對應存儲的數據,理想狀態下讀取速度也會翻倍.可是,RAID0對於機械硬盤隨機讀寫並無明顯做用,然而,RAID0原理會在SSD中大放異彩. 廉價磁盤冗餘陣列(Redundant Array of Inexpensive Disks, RAID),RAID level使用不一樣的場景.


【參考文獻】 1 https://wenku.baidu.com/view/26a311ccfc0a79563c1ec5da50e2524de518d089 2 https://wenku.baidu.com/view/6635c6f387c24028905fc37c

原文出處:https://www.cnblogs.com/xdq101/p/11218137.html

相關文章
相關標籤/搜索