Frage MBR vs GPT (logische Blockadressierung)


Durchgehen MBR/GPT Ich bin etwas verwirrt über den Übergang von MBR (2 ^ 32) zu GPT (2 ^ 64).

Wenn Sie die Geschichte von CHS-zu-LBA Adressierung:

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

---- Hier ist eine Aufschlüsselung der ATA Geschichte --- 


Wikipedia (LBA):

wohingegen die Größe von Einträgen in Datenstrukturen auf der Platte und im Speicher   das Halten der Adresse ist typischerweise 32 oder 64 Bits.

Dies basiert auf dem Prozessor (32/64) ....

Also, was stoppt einen MBR von der Adressierung (2 ^ 64)?


4
2017-09-22 16:46


Ursprung




Antworten:


Während es nichts gibt, das das begrenzt Computer von logisch alle 2 adressieren64 Adressen erfolgt die Einschränkung aufgrund der Implementierung von MBR-artigen Partitionsheadern. In dem Standard DOS-ähnlichen MBR, der in den meisten IBM-kompatiblen Computern allgemein implementiert ist, hat jeder 16-Byte-Partitionseintrag nur Platz für eine 4-Byte- (32-Bit-) LBA-Sektoradresse.

Weil damit nur maximal 2 angesprochen werden können32 Sektoren und für jeden Sektor 512 Bytes, ist der maximal mögliche Bereich, auf den für jede Partition im MBR-Stil zugegriffen werden kann, 232 x 512 Bytes, was 2048 GiB oder 2 TiB entspricht. Wenn ein Laufwerk mit einer größeren Sektorgröße (z. B. 4096 Byte) verwendet wird, wird der maximale Bereich auf 16 TiB erweitert, dies erfordert jedoch einen Computer und ein Betriebssystem, das mit größeren Sektorgrößen als dem standardmäßigen 512-Byte-Sektor kompatibel ist.


Dies wird auch kurz im Wikipedia-Artikel für logische Blockadressierung:

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 gängige MBR-Partitionstabelle (DOS: Master Boot Record) 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 dieselbe 64-Bit-Grenze wie die aktuellen INT 13h Extensions aufweist.

Tatsächlich gibt es in Partitionen im GPT-Stil zwei 8-Byte-Felder, die die Start- und Endadresse des logischen Blocks für diese Partition angeben und den adressierbaren Bereich auf 2 erweitern64 Sektoren. Ähnliche Berechnungen können wie oben ausgeführt werden, um die maximale Partitionsgröße für eine Platte zu berechnen, indem die Sektorgröße (normalerweise 512 oder 4096 Byte) mit 2 multipliziert wird64.

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


9
2017-09-22 17:20





Rückwärtskompatibilität.

Ein Partitionseintrag in der MBR-Partitionstabelle hat 4 Bytes (32 Bits), um den Start einer Partition zu speichern, plus weitere 4 Bytes, um die Länge der Partition zu speichern. Wenn Sie dies ändern, kann vorhandene Software den MBR nicht mehr lesen.

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


2
2017-09-22 17:22



Immer auf der Suche, danke nochmal 8bit! - Jordan Davis
"Nun, warum hörst du auf, nur das zu ändern?" - Sie tun dies nicht, das ist, wie Standards wie GPT erstellt werden, oder neue Revisionen bestehender Standards. - Ramhound
@Ramhound genau. - 8bittree