เหตุใดจึงมีเพียงสี่พาร์ติชันหลักในดิสก์ MBR


23

ฉันอ่านเอกสารมากกว่าที่ CentOS.org

ในส่วน 25.1.2 พาร์ติชัน: เปลี่ยนหนึ่งไดรฟ์เป็นหลายๆ มีคำสั่งต่อไปนี้:

ตารางพาร์ติชันแบ่งออกเป็นสี่ส่วนหรือสี่พาร์ติชันหลัก พาร์ติชันหลักคือพาร์ติชันบนฮาร์ดไดรฟ์ที่สามารถมีไดรฟ์แบบลอจิคัลเดียว (หรือส่วน) แต่ละส่วนสามารถเก็บข้อมูลที่จำเป็นในการกำหนดพาร์ติชันเดียวซึ่งหมายความว่าตารางพาร์ติชันสามารถกำหนดไม่เกินสี่พาร์ติชัน

ฉันไม่เข้าใจว่าทำไมถึงมีพาร์ติชันได้เพียงสี่พาร์ติชันเท่านั้น นี่เป็นวิธีที่ออกแบบมาตั้งแต่แรกหรือไม่? สามารถมีพาร์ติชันหลักได้เพียงสี่พาร์ติชันหรือไม่

คำตอบ:


36

นี่เป็นวิธีที่ออกแบบมาตั้งแต่แรกหรือไม่? มีพาร์ติชั่นหลักได้แค่ 4 พาร์ติชั่นหรือไม่?

ใช่นั่นแหละ ตารางพาร์ติชั่นที่ด้านหน้าของดิสก์ MBR (ตรงข้ามกับดิสก์สไตล์ GPT) มีโครงสร้างข้อมูลที่เข้มงวดมากซึ่งสร้างขึ้นตั้งแต่ปี 1980 เมื่อพื้นที่มีค่าสิ่งล้ำค่าและมีค่า หลังจากนั้นการตัดสินใจในการออกแบบก็คืออนุญาตให้เพียงสี่พาร์ติชั่นเท่านั้น แต่อนุญาตให้พาร์ติชั่นหนึ่งขยายพาร์ติชั่น 'ขยาย' ซึ่งเป็นตัวชี้ไปยังอีกจุดหนึ่งบนดิสก์ที่อาจมีพาร์ติชัน

(นี่เป็นเหตุผลเดียวกับที่ดิสก์ที่ฟอร์แมต MBR มีปัญหากับดิสก์ 2TB + กลุ่มขนาด 512 ไบต์และฟิลด์ 32 บิตที่มีการนับจำนวนคลัสเตอร์สำหรับขนาดพาร์ติชัน = ขนาดดิสก์สูงสุด 2TB ขนาดคลัสเตอร์ 4KB จะแก้ปัญหาที่ถนน )

GPT เป็นวิธีการอัปเดตการจัดการการแบ่งที่ไม่มีข้อ จำกัด เหล่านี้


1
มันเป็นเพียงข้อ จำกัด ในดิสก์ชนิด IDE ตัวอย่างเช่น SCSI มี 8 โดยที่สามโดยการประชุมเป็นพาร์ติชันที่ทับซ้อนกันซึ่งครอบคลุมอุปกรณ์ทั้งหมด
MadHatter สนับสนุนโมนิก้า

18
@ MadHatter ตารางพาร์ทิชันด้วยตัวเองเป็นผู้ไม่เชื่อเรื่องพระเจ้าประเภทการจัดเก็บ ดูเหมือนว่าคุณกำลังอธิบาย Solaris Slices ซึ่งเป็นแนวคิดที่แตกต่างกันเล็กน้อย
the-wabbit

3
ฉันไม่ได้คิดว่าเป็นอย่างนั้น แต่คุณตายไปแล้วที่ประสบการณ์การแบ่งพาร์ติชัน SCSI ของฉันส่วนใหญ่มาจากโซลาริส ฉันคำนับการแก้ไขของคุณและขอบคุณ!
MadHatter สนับสนุนโมนิก้า

4
ที่จริงพาร์ทิชันขยายมามากภายหลัง ; IBM PC DOS 2.0 แนะนำ MBR เป็นส่วนหนึ่งของการสนับสนุน HDD ในเดือนมีนาคมปี 1983 แต่มันก็ไม่ได้จนกว่า3.3 (เมษายน 1987) ที่พาร์ทิชันขยายกลายเป็นใช้ได้
CVN

อันที่จริง "พาร์ติชันเสริม" เพียงแค่ชี้ไปที่ตารางพาร์ทิชันสไตล์ MBR อื่นซึ่งในทางกลับกันอาจมีเพียง 4 รายการ (แต่ละรายการอาจเป็นรายการพาร์ติชันเสริมที่ชี้ไปยังตารางพาร์ทิชันอื่นซึ่งสามารถมี 4 รายการ) แต่ละอันอาจเป็นพาร์ติชันเสริม…)) ฉันจริง ๆ แล้วระบบปฏิบัติการบางตัวอนุญาตเฉพาะพาร์ติชันเสริมในสล็อต 4 และหากมีหนึ่งแล้วสล็อต 2 และ 3 จะต้องว่างเปล่าดังนั้นสิ่งที่คุณต้องทำในทางปฏิบัติก็คือ รายการที่เชื่อมโยงของตารางพาร์ติชันที่มีตัวหลักในสล็อต 1 และลิงก์ไปยังตารางถัดไปในสล็อต 4
Jörg W Mittag

25

มีเพียงสี่รายการเท่านั้นเนื่องจากโครงสร้างข้อมูลสำหรับตารางพาร์ติชัน MBRอนุญาตให้มีเพียงสี่เรคคอร์ดที่อธิบายพาร์ติชันเท่านั้น:

คุณสามารถสร้างตารางพาร์ติชันเพิ่มเติมซ้อนกันในคำจำกัดความของสิ่งที่เรียกว่า "พาร์ติชันเสริม" แต่พาร์ติชันที่กำหนดในนั้นจะเรียกว่าพาร์ทิชัน "ตรรกะ" แบบดั้งเดิม โปรดทราบว่านี่เป็นข้อ จำกัด ของการใช้งานเฉพาะนี้ ประเภทพาร์ติชันอื่น ๆ เช่นตารางพาร์ติชัน GUIDอย่าแชร์ข้อ จำกัด นี้


3

พาร์ติชันหลักเป็นแนวคิดระดับต่ำ - จะทำอย่างไรกับกระบวนการบูทเริ่มต้นของเครื่องและขึ้นอยู่กับข้อกำหนดที่กำหนดไว้อย่างดี ดังนั้นจึงเป็นการยากที่จะเปลี่ยนจำนวนพาร์ติชันหลักเนื่องจากผู้ผลิตดิสก์และแผงวงจรหลักจำนวนมากจะต้องยอมรับที่จะใช้มาตรฐานใหม่

แม้ว่าพูดจริงแล้วนี่คือจุดที่สงสัย - มันมีความเกี่ยวข้องที่ 'เวลาบูต' สำหรับการเริ่มต้นระบบปฏิบัติการของคุณในสถานที่แรก แต่ที่เกี่ยวกับมัน มีพาร์ติชันเสริมซึ่งอนุญาตให้พาร์ติชันเพิ่มเติมบนดิสก์ของคุณ คุณไม่สามารถบูทได้

พื้นฐานมากขึ้น - ระบบปฏิบัติการส่วนใหญ่ทำงานด้วยการลดจำนวนดิสก์มากขึ้น - ตัวจัดการโลจิคัลวอลุ่ม - ซึ่งหมายความว่าทอพอโลยีบนดิสก์จริงไม่เกี่ยวข้องส่วนใหญ่ (และแน่นอนว่ามันมักจะไม่เป็นที่พึงปรารถนาที่จะแบ่งส่วนแหล่งเก็บข้อมูลของคุณ)


1
ฉันคิดว่าคุณผิดที่ไม่สามารถบู๊ตได้ ฉันคิดว่า GRUB ยินดีที่จะบูต Linux จากพาร์ติชันเสริม นอกจากนั้นฉันส่วนใหญ่เห็นด้วยกับคุณ
MadHatter สนับสนุนโมนิก้า

ด้วงเองต้องอยู่ในพาร์ติชันหลักแม้ว่า bootstrap ระดับต่ำจะเริ่มด้วงซึ่งจะช่วยให้คุณสามารถเลือกได้
Sobrique

1
ตัวโหลดสเตจ 1 ไม่ควรอยู่บนพาร์ติชันเลย มันควรจะอยู่ใน MBR ส่วนที่เหลือของรหัสอยู่ใน/bootพาร์ติชันและอย่างที่ฉันพูดฉันเชื่อว่าสามารถเป็นพาร์ติชันเสริม
MadHatter สนับสนุนโมนิก้า

ยุติธรรมพอสมควร ฉันจะไปอ่านและทำการบ้าน แต่ฉันคิดว่ายังคงรองรับกรณีที่แม้ว่าพาร์ทิชันหลักจะถูก จำกัด วงเงินที่ไม่เกี่ยวข้องส่วนใหญ่ในขณะนี้
Sobrique

1
"... เนื่องจากผู้ผลิตดิสก์และแผงวงจรหลักจำนวนมากจะต้องยอมรับที่จะใช้มาตรฐานใหม่" อะไร? เป็นอย่างไร มันไม่เกี่ยวข้องอย่างสมบูรณ์สำหรับดิสก์และแม้แต่เมนบอร์ดก็ไม่จำเป็นต้องใส่ใจกับมัน เมนบอร์ดทั้งหมดที่ต้องทำคืออ่านเซกเตอร์ 0 และเรียกใช้โค้ดของมัน การจดจำพาร์ติชั่นเป็นหน้าที่ของรหัสนั้น
glglgl

0

ไม่แน่ใจว่าฉันมาปาร์ตี้ช้า แต่นี่มันไป:

ขนาดตารางพาร์ติชันได้รับการออกแบบให้มีขนาด 64 ไบต์และแต่ละตารางพาร์ติชันมีขนาด 16 ไบต์ 16 * 4 = 64 และด้วยเหตุนี้จึงไม่มีที่ว่างสำหรับรายการอื่น ๆ ในตารางพาร์ติชัน

เพื่อแก้ไขปัญหานี้รายการที่สี่มีข้อกำหนดสำหรับรายการพาร์ติชันแบบขยายซึ่งสามารถมีตัวชี้ตามลำดับไปยังพาร์ติชันเสริมอื่น ๆ

https://docs.microsoft.com/en-us/windows/win32/fileio/basic-and-dynamic-disks

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.