大話儲存——磁碟原理與技術筆記(一)

Junzz發表於2021-07-16

大話儲存——磁碟原理與技術筆記(一)

1.硬碟的組成

硬碟的組成:碟片、讀寫頭、馬達、底座、電路板等。

1.1 碟片

  • 要求無塵、表面光滑平整
  • 邏輯上被劃分為柱面、磁軌和扇區
    • 磁軌是對盤面進行同心圓劃分,最外圈為0道,每個碟片兩面都可用,每面包括300-1023個磁軌,外圈讀寫快
    • 柱面是對多個盤的同位置同心圓的磁軌構成的柱體,讀寫時按照柱面進行,首先讀寫0磁頭面的磁軌,滿了後移動到同柱面的下一磁軌中
    • 扇區是對每個磁軌進行等距離的劃分得到的圓弧,定址時通過<柱面,磁頭,扇區>(CHS)方式。但目前主要使用的是LBA的編址方式,即將整個磁碟視為一條線性磁軌,對應關係儲存在磁碟控制電路的ROM晶片中
    • 扇區編號最簡單方法為直接順序編號,但由於磁碟電路讀取一個扇區資料進行處理的過程中,磁碟可能已經旋轉進入了下一個扇區的頭標,導致要讀取就需要再等一圈,因此產生了帶交叉因子的編號方式MFM。交叉因子為3:1的編號方式為1,x,x,2,...。磁頭扭斜為了解決磁頭換道可能延遲到達的問題,相當於是對每個磁軌的交叉因子。

1.2 磁頭

磁頭用以改變磁碟表面的磁性粒子簇達到儲存資訊的目的,磁頭不可接觸盤面,需要低空飛行。

1.3 步進電機

可以使磁頭進行微米級別的位移。

1.4 其他概念

硬碟控制電路:介於儲存介質和主機的介面之間,用以讀取和寫入資料的電路

磁碟的IO單位:讀寫是以扇區為最小單位的,有512B和4KB的

2.硬碟相關高層技術

2.1 磁碟中的佇列技術

由於不同的指令可能訪問的區域涉及到不同的柱面磁軌,為了減少磁頭的尋道時間引入了排隊技術,磁碟控制電路可能會無視順序而優先訪問相同區域的資料(個人理解這可能是和系統共同進行的指令重排優化?)。磁碟控制器(位於主機板上)需要配合磁碟控制電路。

2.2 無序傳輸技術

假如磁頭位於資料尾部,採取就近原則能讀就讀,讀取的資料發給控制器,通過DMA放在記憶體,等旋轉到頭部再讀出剩餘部分。

2.3 幾種可控磁頭掃描方式

(1)FCFS 先來先服務:完全按照IO順序進行尋道操作

(2)SSTF (Shortest Seek Time First):優先到最近的磁軌進行操作,因此特別遠的可能會被餓死

(3)SCAN 迴旋掃描模式:類似電梯模型,從一端到另一端,無需訪問的磁軌不停止,必然到達最內/外圈。

(4)C-SCAN 單向掃描模式:僅從內圈向外掃描,到達最外後迅速返回

(5)LOOK 智慧監察掃描模式:和SCAN不同之處為無需到達最內外圈,完成兩端的IO即可返回

(6)C-LOOK:單向的LOOK

負載不高時SSTF效能最佳,高負載條件SCAN,C-SCAN,C-LOOK

2.4 磁碟快取

SCSI控制引數

  • DPO(Disable Page Out):禁止快取中的資料頁被換出,配置了的資料不會被覆蓋
  • FUA(Force Unit Access):強制碟片訪問,對於寫操作,磁碟必須將資料寫入碟片才返回成功訊號;對於讀操作,磁碟收到指令直接讀取碟片而不搜尋快取

2.5 影響磁碟效能的因素

  • 轉速(影響連續IO的首要因素)
  • 尋道速度(影響隨機IO的首要因素)
  • 單碟容量(容量越高,資料密度越大)
  • 介面速度(不太重要)

3.硬碟介面技術

3.1 IDE硬碟介面

IDE(Integrated Drive Electronics,電子整合驅動器),本質上將控制電路、碟片和磁頭放在了一個容器。價格低,相容性強。IDE介面也稱為PATA介面,Parallel ATA。

共有7個版本的ATA介面:

  • IDE
  • Fast ATA
  • Fast ATA-2
  • ATA-33
  • ATA-66
  • ATA-100
  • ATA-133

IDE資料傳輸模式:

(1)PIO模式(Programming I/O):一種通過CPU執行IO埠指令來進行資料讀寫的資料交換模式。傳輸大量資料是會導致CPU的大量佔用問題。已淘汰。

(2)DMA模式(Direct Memory Access):直接記憶體訪問,不經過CPU直接從記憶體存取資料的資料交換模式。CPU向DMA控制器下達指令,讓其來處理資料傳送,DMA控制器直接將資料複製到記憶體對應地址,然後反饋資訊給CPU。

(3)Ultra DMA:在DMA的基礎上增加了CRC技術,保障資料傳輸安全。

3.2 SATA硬碟介面

SA他的優勢:

  • 傳輸速率高:1.0可以達到150MB/s
  • 資料可靠性高:可同時對指令和資料進行CRC
  • 節省空間:線纜瘦,有利於機箱內部的散熱

SATA2.0的新特性:

  • 3Gb/s傳輸速率:等同於300MB/s,但帶來的好處不明顯,因為硬碟內部的傳輸速率達不到該介面傳輸速度,內部更多的時間花在了尋道上,如果配較大容量的快取可能好處會大一些
  • 支援NCQ技術:Native Command Queue,即自身命令佇列,一種排隊技術

3.3 SCSI硬碟介面

// To Be Continued

相關文章