不為什麼,MBR就是這麼定義的。
MBR(Master Boot Record,主引導記錄)分割槽格式的定義只能支援4個主分割槽:每個磁碟的第一個扇區為MBR,大小是512位元組。0-445共446個位元組是Bootstrap(載入程式,負責找到活動分割槽,並加裝活動分割槽上的載入程式),後期不同的MBR結構基本就是在這446個位元組上變化。從第446個位元組開始,每16個位元組為一個分割槽記錄,四個分割槽共64位元組,還有2個位元組是簽名,固定為0x55AA。
最早支援硬碟的DOS版本(PC-DOS 2.0)只能使用四個主分割槽中的一個,使用FAT12格式化;從DOS 3.2開始支援擴充套件分割槽,但支援在擴充套件分割槽內巢狀多個邏輯分割槽則是從DOS 3.3開始。因為擴充套件分割槽的存在只是為了解決DOS只能使用一個主分割槽的問題,因此也只需要一個擴充套件分割槽——反正使用者可以無限制的建立邏輯分割槽——頂多就是碟符不夠用了。
事實上,如果你喜歡,你可以把四個分割槽記錄的分割槽型別(從0起算的第4個位元組)用某個軟體工具改為0x0F,那麼你就有了4個擴充套件分割槽——當然,因為和MBR約定的只能有一個擴充套件分割槽衝突,所以絕大部分的分割槽軟體、作業系統都會認為這是一個被破壞的MBR。如果你喜歡,你可以找一份Linux的原始碼,修改為可以支援4個擴充套件分割槽,每個擴充套件分割槽都包含多個邏輯分割槽。
不為什麼,MBR就是這麼定義的。
MBR(Master Boot Record,主引導記錄)分割槽格式的定義只能支援4個主分割槽:每個磁碟的第一個扇區為MBR,大小是512位元組。0-445共446個位元組是Bootstrap(載入程式,負責找到活動分割槽,並加裝活動分割槽上的載入程式),後期不同的MBR結構基本就是在這446個位元組上變化。從第446個位元組開始,每16個位元組為一個分割槽記錄,四個分割槽共64位元組,還有2個位元組是簽名,固定為0x55AA。
最早支援硬碟的DOS版本(PC-DOS 2.0)只能使用四個主分割槽中的一個,使用FAT12格式化;從DOS 3.2開始支援擴充套件分割槽,但支援在擴充套件分割槽內巢狀多個邏輯分割槽則是從DOS 3.3開始。因為擴充套件分割槽的存在只是為了解決DOS只能使用一個主分割槽的問題,因此也只需要一個擴充套件分割槽——反正使用者可以無限制的建立邏輯分割槽——頂多就是碟符不夠用了。
事實上,如果你喜歡,你可以把四個分割槽記錄的分割槽型別(從0起算的第4個位元組)用某個軟體工具改為0x0F,那麼你就有了4個擴充套件分割槽——當然,因為和MBR約定的只能有一個擴充套件分割槽衝突,所以絕大部分的分割槽軟體、作業系統都會認為這是一個被破壞的MBR。如果你喜歡,你可以找一份Linux的原始碼,修改為可以支援4個擴充套件分割槽,每個擴充套件分割槽都包含多個邏輯分割槽。