複製鏈接
請複製以下鏈接發送給好友

分區表

鎖定
分區表是將大表的數據分成稱為分區的許多小的子集,類型有FAT16,FAT32,NTFS,exFAT,Ext2/3/4,HFS+,VMFS。另外,分區表的種類劃分主要有:range(範圍)、list(列表)和hash(散列)分區。劃分依據主要是根據其表內部屬性。同時,分區表可以創建其獨特的分區索引。倘若硬盤丟失了分區表,數據就無法按順序讀取和寫入,導致無法操作。
中文名
分區表
外文名
partition table
定    義
分區的許多小的子集
作    用
在訪問和移植時更有效率。
類    型
FAT32,NTFST32,NTFS

分區表方案

分區表MBR分區表

MBR分區表 MBR分區表
傳統的分區方案(稱為MBR分區方案)是將分區信息保存到磁盤的第一個扇區(MBR扇區)中的64個字節中,每個分區項佔用16個字節,這16個字節中存有活動狀態標誌、文件系統標識、起止柱面號磁頭號、扇區號、隱含扇區數目(4個字節)、分區總扇區數目(4個字節)等內容。由於MBR扇區只有64個字節用於分區表,所以只能記錄4個分區的信息。這就是硬盤主分區數目不能超過4個的原因。後來為了支持更多的分區,引入了擴展分區邏輯分區的概念。但每個分區項仍用16個字節存儲。
主分區數目不能超過4個的限制,很多時候,4個主分區並不能滿足需要。另外最關鍵的是MBR分區方案無法支持超過2TB容量的磁盤。因為這一方案用4個字節存儲分區的總扇區數,最大能表示2的32次方的扇區個數,按每扇區512字節計算,每個分區最大不能超過2TB。磁盤容量超過2TB以後,分區的起始位置也就無法表示了。在硬盤容量突飛猛進的時代,2TB的限制早已被突破。由此可見,MBR分區方案已經無法再滿足需要了。

分區表GPT分區表

一種由基於 Itanium 計算機中的可擴展固件接口 (EFI) 使用的磁盤分區架構。與主啓動記錄(MBR) 分區方法相比,GPT 具有更多的優點,因為它允許每個磁盤有多達 128 個分區,支持高達 18 千兆兆字節的卷大小,允許將主磁盤分區表和備份磁盤分區表用於冗餘,還支持唯一的磁盤和分區 ID (GUID)。  與支持最大卷為 2 TB (terabytes) 並且每個磁盤最多有 4 個主分區(或 3 個主分區,1 個擴展分區和無限制的邏輯驅動器)的主啓動記錄 (MBR) 磁盤分區的樣式相比,GUID 分區表 (GPT) 磁盤分區樣式支持最大卷為 18 EB (exabytes,1EB=1024PB,1PB=1024TB,1TB=1024GB,1GB=1024MB,1MB=1024KB。18EB=19 327 352 832GB) 並且每磁盤最多有 128 個分區。與 MBR 分區的磁盤不同,至關重要的平台操作數據位於分區,而不是位於非分區或隱藏扇區。另外,GPT 分區磁盤有多餘的主要及備份分區表來提高分區數據結構的完整性。

分區表類型

分區表分區類型

A、如果需要將行映射到基於列值範圍的分區時,就使用範圍分區方法--條件是數據可以被劃分成邏輯範圍;當數據在整個範圍內能被均等地劃分時性能最好,明顯不能均分時須使用其他分區方式。
B、如果數據不那麼容易進行範圍分區,但為了性能和管理的原因又想分區時,就使用散列分區方法--散列分區方法提供了在指定數量的分區中均等地劃分數據的方法。基於分區鍵的散列值將行映射到分區中。
C、當需要明確地控制如何將行映射到分區時,就使用列表分區方法--每個分區的描述中為該分區列制定一列離散值。是特意為例三支的模塊化數據劃分而設計的,可以將無序的和不相關的數據集進行分組和組織到一起。不支持多列分區。
D、組合分區方法是在分區中使用範圍分區方法分區數據,而在子分區中使用散列分區方法--適合於歷史數據和條塊數據兩者,改善了範圍分區及其數據防止的管理型,並提供了散列分區的秉性機制的優點;實際數據存儲在自分區,分區只是個邏輯屬性
文件分配表FAT(File Allocation Table)用來記錄文件所在位置的表格.它對於硬盤的使用是非常重要的,假若丟失文件分配表,那麼硬盤上的數據就會因無法定位而不能使用了。不同的操作系統所使用的文件系統不盡相同,在個人計算機上常用的操作系統中,DOS 6.x及以下版本和Windows 3.x使用FAT16OS/2使用HPFSWindows NT則使用NTFS;而MS-DOS7.10/8.0(Windows 95 OSR2及Windows 98自帶的DOS)及ROM-DOS 7.x同時提供了FAT16及FAT32供用户選用。其中我們接觸最多的是FAT16、FAT32文件系統。
Windows95 OSR2和Windows 98開始支持FAT32 文件系統,它是對早期DOS的FAT16文件系統的增強,由於文件系統的核心--文件分配表FAT由16位擴充為32位,所以稱為FAT32文件系統。在一邏輯盤(硬盤的一分區)超過 512兆字節時使用這種格式,會更高效地存儲數據,減少硬盤空間的浪費,一般還會使程序運行加快,使用的計算機系統資源更少,因此是使用大容量硬盤存儲文件的極有效的系統。

分區表分區表標記

分區表一般位於硬盤0柱面,0磁頭,1扇區偏移量 0x1BE (hex),長度64字節。
(一)FAT32 文件系統將邏輯盤分為三部分
依次是引導區(BOOT區)、文件分配表區(FAT區)、數據區(DATA區)。引導區和文件分配表區又合稱為系統區。
(二)引導區從第一扇區開始
使用了三個扇區,保存了該邏輯盤每扇區字節數,每簇對應的扇區數等等重要參數和引導記錄。之後還留有若干保留扇區。而FAT16文件系統的引導區只佔用一個扇區,沒有保留扇區。
(三)文件分配表區共保存兩個文件分配表
因為文件所佔用的存儲空間(簇鏈)及空閒空間的管理都是通過FAT實現的,FAT如此重要,保存兩個以便第一個損壞時,還有第二個可用。文件系統對數據區的存儲空間是按簇進行劃分和管理的,簇是空間分配和回收的基本單位,即,一個文件總是佔用若干個整簇,文件所使用的最後一簇剩餘的空間就不再使用,而是浪費掉了。
從統計學上講,平均每個文件浪費0.5簇的空間,簇越大,存儲文件時空間浪費越多,利用率越低。因此,簇的大小決定了該盤數據區的利用率。FAT16系統簇號用16位二進制數表示,從0002H到FFEFH個可用簇號(FFF0H到FFFFH另有定義,用來表示壞簇,文件結束簇等),允許每一邏輯盤的數據區最多不超過FFEDH(65518)個簇。FAT32系統簇號改用32位二進制數表示,大致從00000002H到FFFFFEFFH個可用簇號。FAT表按順序依次記錄了該盤各簇的使用情況,是一種位示圖法。
每簇的使用情況用32位二進制填寫,未被分配的簇相應位置寫零;壞簇相應位置填入特定值;已分配的簇相應位置填入非零值,具體為:如果該簇是文件的最後一簇,填入的值為FFFFFF0FH,如果該簇不是文件的最後一簇,填入的值為該文件佔用的下一個簇的簇號,這樣,正好將文件佔用的各簇構成一個簇鏈,保存在FAT表中。0000000H、00000001H兩簇號不使用,其對應的兩個DWORD位置(FAT表開頭的8個字節)用來存放該盤介質類型編號。FAT表的大小就由該邏輯盤數據區共有多少簇所決定,取整數個扇區
(四)FAT32系統一簇對應8個邏輯相鄰的扇區
理論上,這種用法所能管理的邏輯盤容量上限為16TB(16384GB),容量大於16TB時,可以用一簇對應16個扇區,依此類推。FAT16系統在邏輯盤容量介於128MB到256MB時,一簇對應8個扇區,容量介於256MB到512MB時,一簇對應16個扇區,容量介於512MB到1GB時,一簇對應32個扇區,容量介於1GB到2GB時,一簇對應32個扇區,超出2GB的部分無法使用。顯然,對於容量大於512MB的邏輯盤,採用FAT32的簇比採用FAT16的簇小很多,大大減少了空間的浪費。
但是,對於容量小於512MB的盤,採用FAT32雖然一簇8個扇區,比使用FAT16一簇16個扇區,簇有所減小,但FAT32的FAT表較大,佔用空間較多,總數據區被減少,兩者相抵,實際並不能增加有效存儲空間,所以微軟建議對小於512M的邏輯盤不使用FAT32。
另外,對於使用FAT16文件系統的用户提一建議,硬盤分區時,不要將分區(邏輯盤)容量正好設為某一區間的下限,例:將一邏輯盤容量設為1100M(稍大於1024M),則使用時其有效存儲容量比分區為950M的一般還少,因其簇大一倍,浪費的空間較多。還有,使用FDISK等對分區指定容量時,由於對1MB的定義不一樣(標準的二進制的1MB為1048576B,有的系統將1MB理解為1000000B,1000KB等),及每個分區需從新磁道開始等因素,實際分配的容量可能稍大於指定的容量,亦需注意掌握。
(五)根目錄區可看作是數據區的一部分
根目錄區(ROOT區)不再是固定區域、固定大小,可看作是數據區的一部分。因為根目錄已改為根目錄文件,採用與子目錄文件相同的管理方式,一般情況下從第二簇開始使用,大小視需要增加,因此根目錄下的文件數目不再受最多512的限制。FAT16文件系統的根目錄區(ROOT區)是固定區域、固定大小的,是從FAT區之後緊接着的32個扇區,最多保存512個目錄項,作為系統區的一部分。
(六)目錄區中的目錄項變化較多
一個目錄項仍佔32字節,可以是文件目錄項、子目錄項、卷標項(僅跟目錄有)、已刪除目錄項、長文件名目錄項等。目錄項中原來在DOS下保留未用的10個字節都有了新的定義,全部32字節的定義如下:
(1) 0-- 7字節 文件正名。
(2) 8--10字節文件擴展名
(3) 11字節文件屬性,按二進制位定義,最高兩位保留未用,0至5位分別是隻讀位、隱藏位、系統位、卷標位、子目錄位、歸檔位。
(4) 11--13字節 僅長文件名目錄項用,用來存儲其對應的短文件名目錄項的文件名字節校驗和等。
(5) 13--15字節 24位二進制的文件建立時間,其中的高5位為小時,次6位為分鐘。
(6) 16--17字節 16位二進制的文件建立日期,其中的高7位為相對於1980年的年份值,次4位為月份,後5位為月內日期。
(7) 18--19字節 16位二進制的文件最新訪問日期,定義同(6)。
(8) 20--21字節 起始簇號的高16位。
(9) 22--23字節 16位二進制的文件最新修改時間,其中的高5位為小時,次6位為分鐘,後5位的二倍為秒數。
(10)24--25字節 16位二進制的文件最新修改日期,定義同(6)。
(11)26--27字節 起始簇號的低16位。
(12)28--31字節 32位的文件字節長度。
其中第(4)至(8)項為以後陸續定義的。 對於子目錄項,其(12)為零;已刪除目錄項的首字節值為E5H。在可以使用長文件名的FAT32系統中,文件目錄項保存該文件的短文件名,長文件名用若干個長文件名目錄項保存,長文件名目錄項倒序排在文件短目錄項前面,全部是採用雙字節內碼保存的,每一項最多保存十三個字符內碼,首字節指明是長文件名的第幾項,11字節一般為0FH,12字節指明類型,13字節為校驗和,26--27字節為零。
(七)以前版本的 Windows 和DOS與 FAT32 不兼容,不能識別FAT32分區,有些程序也依賴於 FAT16 文件系統,不能和 FAT32驅動器一道工作。將硬盤轉換為 FAT32,就不能再用雙引導運行以前版本的 Windows(Windows 95 [Version 4.00.950]、Windows NT 3.x、Windows NT 4.0和 Windows 3.x)。

分區表常見分區表

分區表FAT32

一種從文件分配表(FAT)文件系統派生而來的文件系統。與FAT相比,FAT32能夠支持更小的簇以及更大的容量,從而能夠在FAT32捲上更為高效的分配磁盤空間

分區表NTFS

一種能夠提供各種FAT版本所不具備的性能、安全性、可靠性與先進特性的高級文件系統。NTFS能夠使用日誌文件檢查點信息來恢復文件系統的一致性。在Windows 2000Windows XP中,NTFS還能提供諸如文件與文件夾權限、加密、磁盤配額以及壓縮之類的高級特性。
區別
(1)Win 2000可以同時支持FAT32和NTFS兩種文件系統,FAT32長於與Win 9X的兼容性,NTFS長於系統安全性
(2) FAT32文件系統可重新定位根目錄和使用FAT的備份副本。另外FAT32分區的啓動記錄被包含在一個含有關鍵數據的結構中,減少了計算機系統崩潰的可能性。NTFS分區上的壓縮文件進行讀寫時不需要事先由其他程序進行解壓縮,當對文件進行讀取時,文件將自動進行解壓縮;文件關閉或保存時會自動對文件進行壓縮。

分區表exFAT

exFAT(Extended File Allocation Table File System,擴展FAT,也稱作FAT64,即擴展文件分配表)是Microsoft在Windows Embeded 5.0以上(包括Windows CE 5.0、6.0、Windows Mobile5、6、6.1)中引入的一種適合於閃存的文件系統,為了解決FAT32等不支持4G及其更大的文件而推出。對於閃存,NTFS文件系統不適合使用,exFAT更為適用。

分區表Ext3

EXT3是第三代擴展文件系統(英語:Third extended filesystem,縮寫為ext3),是一個日誌文件系統,常用於Linux操作系統。它是很多Linux發行版的默認文件系統。Stephen Tweedie在1999年2月的內核郵件列表中,最早顯示了他使用擴展的ext2,該文件系統從2.4.15版本的內核開始,合併到內核主線中。