MBR vs GPT (Logische Blockadressierung)

1069
Jordan Davis

Beim Durchlaufen von MBR / GPT bin ich etwas verwirrt beim Übergang von MBR (2 ^ 32) zu GPT (2 ^ 64).

Wenn Sie die Historie von der CHS- zu- LBA- Adressierung aufschlüsseln :

  • CHS (24Bits) - 8 GB Limit (1979 - Einführung in " Fixed-Block-Architektur ")
  • CHS (28Bits) - 128 GB (1994 - EIDE / ATA2)
  • LBA (22 Bit) - 2 GB Grenze (1986 - IDE)
  • LBA (28Bits) - 128 GB (1994 - ATA-1)
  • LBA (48 Bit) - 144 PB (2002 - ATA-6)

---- Hier ist eine Zusammenfassung der ATA-Geschichte ---


Wikipedia (LBA):

während die Größe der Einträge in den Datenstrukturen auf der Festplatte und im Speicher, die die Adresse enthalten, typischerweise 32 oder 64 Bit beträgt.

Dies basiert auf dem Prozessor (32/64).

Was hält also einen MBR von der Adressierung ab (2 ^ 64)?

4

2 Antworten auf die Frage

9
Breakthrough

Zwar schränkt der Computer nicht alle 2 64 Adressen logisch ein, die Einschränkung geschieht jedoch durch die Implementierung von Partitionsköpfen im MBR-Stil. Im Standard-MBR des DOS-Typs, der üblicherweise in den meisten IBM-kompatiblen Computern implementiert wird, bietet jeder 16-Byte-Partitionseintrag nur Platz für eine 4-Byte-LBA-Sektoradresse (32-Bit).

Da dies nur einem erlaubt, maximal 2 32 Sektoren zu adressieren, und wenn jeder Sektor 512 Bytes ist, ist der maximal mögliche Bereich, auf den eine Partition im MBR-Stil zugreifen kann, 2 32 x 512 Bytes, was 2048 GiB oder 2 TiB entspricht . Wenn Sie ein Laufwerk mit einer größeren Sektorgröße (z. B. 4096 Byte) verwenden, wird der maximale Bereich auf 16 TiB erweitert. Dies erfordert jedoch einen Computer und ein Betriebssystem, das mit größeren Sektorgrößen als dem Standardsektor mit 512 Byte kompatibel ist.


Dies wird auch im Wikipedia-Artikel zur Adressierung logischer Blöcke kurz besprochen :

Das aktuelle 48-Bit-LBA-Schema, das 2003 mit dem ATA-6-Standard eingeführt wurde, ermöglicht die Adressierung von bis zu 128 PiB. [...] Die Master Boot Record (MBR) -Partitionstabelle im DOS-Stil unterstützt jedoch nur Festplattenpartitionen mit einer Größe von bis zu 2 TiB. Bei größeren Partitionen muss dies durch ein anderes Schema ersetzt werden, z. B. die GUID-Partitionstabelle (GPT), die die 64-Bit-Grenze der aktuellen INT 13h-Erweiterungen aufweist.

Tatsächlich gibt es in GPT-artigen Partitionen zwei 8-Byte-Felder, die die Anfangs- und Endadresse des logischen Blocks für diese Partition angeben, wodurch der adressierbare Bereich auf 2 64 Sektoren erweitert wird. Ähnliche Berechnungen können wie oben ausgeführt werden, um die maximale Partitionsgröße für eine Festplatte zu berechnen, indem die Sektorgröße (normalerweise 512 oder 4096 Byte) mit 2 64 multipliziert wird .

Als abschließende Anmerkung unterscheiden sich GPT-Partitionstabellen auch in ihrer Implementierung / ihrem Layout. Partitionen im MBR-Stil speichern sowohl den Anfangs- als auch den Endsektor im CHS-Format (3 Byte) sowie den Anfangssektor und die Größe der Partition im LBA-Format (jeweils 4 Byte). GPT verzichtet auf diese Konvention und speichert stattdessen zwei LBA-Werte (8 Byte), die den Anfangs- und den Endsektor einschließlich dieser Partition darstellen.

2
8bittree

Rückwärtskompatibilität.

Ein Partitionseintrag in der MBR-Partitionstabelle enthält 4 Byte (32 Bit) zum Speichern des Starts einer Partition und weitere 4 Bytes zum Speichern der Länge der Partition. Wenn Sie dies ändern, kann die vorhandene Software den MBR nicht mehr lesen.

Wenn Sie sich nicht so sehr für die Rückwärtskompatibilität interessieren, warum sollten Sie das nicht einfach ändern? Es gibt andere Probleme mit MBR (begrenzt auf 4 primäre Partitionen). Warum also nicht einfach einen neuen, besseren Standard erstellen? Auch als GPT bekannt.

Immer aufpassen, danke nochmal 8bit! Jordan Davis vor 8 Jahren 0
"Nun, wieso einfach damit aufhören, das zu ändern?" - Das ist nicht der Fall, so werden Standards wie GPT oder neue Versionen bestehender Standards erstellt. Ramhound vor 8 Jahren 0
@ Ramhound genau. 8bittree vor 8 Jahren 0