磁盤分區詳解


        磁盤分區的理解,必須從硬件入手。常見的存儲設備主要有硬盤,CD,DVD,U盤等。這里我們主要講的是硬盤的分區。

        因為半導體技術和工藝的不斷提高,現在大的半導體提供商已經可以生產出大容量的固態硬盤,市場上也有固態硬盤可供大家選購。固態硬盤雖然存取速度要比機械硬盤快上許多,但是從容量與價格的性價比上,機械硬盤還是占優。接下來主要講的就是與機械硬盤相關的磁盤分區知識。

                                                                                                                                                      圖1:硬盤物理示意圖

       如圖1所示,機械硬盤的主要物理組成有磁盤、主軸、磁頭、磁力臂、音圈馬達和永磁鐵等組成。我們所有寫入硬盤的信息都是通過磁頭寫入磁盤中的,同時,也可以通過磁頭將磁盤中的信息讀取出來。廠家生產出一塊硬盤之后,會對其進行低級格式化,我們可以理解為廠家在磁盤中已經輸入了一小段的程序。這段小程序將我們的一陣塊磁盤划分出了磁道和柱面。

                                                 圖2:磁道與柱面                        圖3:扇區

        圖中示意出了磁道與柱面與磁盤實際物理層面的關系。當磁盤高速轉動起來,磁頭能夠感應到的只是此盤上一個環形區域內的磁性信息,所以我們將一個環形區域組織成一個磁道。同時,磁頭在多層的盤片上讀取的是相同位置的磁道,因此將多片盤片上的這些同位置的磁道組織成柱面。我們將磁道再細分為容量相同的扇區,如圖3所示。

    另外,每個扇區容量是相同的。早期生產的磁盤每個磁道上的扇區數是相同的,那么外磁道扇區的長度必然比內磁道的長度要長,所以廠家通過控制內外磁道的磁密度來保障每個扇區的容量個相同。這種簡單的划分極大的限制了磁盤的容量。現代的磁盤制作時,不同磁道的磁密度是相同的,因此不同磁道的扇區數是不相同的,不過磁盤對其進行了內部轉換,使得磁盤看起來像是每個磁道還擁有相同的扇區數。  

    以上是對磁盤的物理層面划分,接下來,我們從操作系統的層面來分析系統的磁盤分區(高級格式化)與實際磁盤物理層面分區的映射關系。

    從Windows系統的角度來看,我們常常將磁盤划分為C、D、E、F盤;Linux系統中,磁盤分區的命名方式有所不同,是根據磁盤的類型加上加上編號組合而成,例如sd1,hd2之類的。其基本的組織原理是相通的,我們以Linux的磁盤分區來示例說明。

    每個磁盤的第一個扇區至關重要,因為在其上存儲了兩個重要的信息,分別是:

    主引導分區(Master Boot Record,MBR):可以安裝引導加載程序的地方,有446bytes。

    分區表(partition table):記錄整塊硬盤分區的狀態,有64bytes。

    MBR是十分重要的,系統在開機的時候回讀取這一段內容,然后才能知道去哪里選擇哪個操作系統開機,其具體的實現和功能,在這暫不表。主要說說分區表的用法。

    分區表有64bytes的容量,我們將其分為四份,即用16bytes的內容來記錄一個分區的開始柱面和結束柱面號。注意,分區是以柱面為基本單位的。

                

                                圖4:分區示意圖                                                               圖5:擴展分區

    如圖4所示,假設共有400個柱面,我們將磁盤平均分為了4個分區,每個分區100個柱面的容量,對於windows而言可以說是C、D、E、F盤。當然,我們也可以將每個分區的容量划分為不同大小。有時,我們需要更多的分區,但是分區表最多只能實現4個分區,這時候,要用到邏輯分區的概念來分出更多的分區。我們將分區表中某個區域作為擴展分區,記錄邏輯擴展分區的起始與結束柱面,再在這些柱面的選擇一段扇區存儲邏輯分區的分區表(數量任意)。

      

 

 

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM