Master Boot Record: Der erste Bereich einer Festplatte, MBR

Der Master Boot Record, kurz MBR, ist der erste Bereich einer Festplatte. Auf jeder Festplatte gibt es daher genau einen MBR. Der MBR wird häufig als Synonym für den Bootsektor verwendet. Das ist jedoch bei genauer Betrachtung nicht richtig. Denn, anders als beim MBR, kann eine Festplatte mehrere Bootsektoren besitzen, da ein Bootsektor auf jeder Partition ein Mal vorhanden ist. Bei Beschädigungen kann man den MBR reparieren.

Der MBR befindet sich auf dem ersten Sektor. Da ein Sektor 512 Byte groß ist, steht dem MBR maximal 512 Bytes zur Verfügung. Es ist ein speziell reservierter Bereich und kann nur mit speziellen Programmen beschrieben werden. Auch beim Formatieren der Festplatte wird sie nicht berührt.

Auf dem MBR sind zwei Dinge vorhanden. Einmal ein Programm, das Master-Boot-Routine heißt und zweitens die Partitionstabelle. In der Partitionstabelle sind Einträge über die Partitionierung der Festplatte enthalten und für jede Partition stehen 16 Bytes zur Verfügung. Insgesamt kann die Partitionstabelle Informationen über maximal vier Partitionen verwalten. Die letzten zwei Bytes im MBR enthalten immer den Eintrag AA55. Über diesen Eintrag, der auch als Signatur bezeichnet wird, identifiziert man den ersten Sektor als MBR.

Master Boot Record
Beispielaufteilung der Festplatte

Master-Boot-Routine

Die Master-Boot-Routine, auch Startcode genannt, ist die Schnittstelle zwischen BIOS und dem Bootsektor mit einer Länge von 446 Bytes. Nachdem der PC eingeschaltet wurde, startet zunächst das BIOS, führt einige Systemtests durch und ermittelt die vorhandene Hardware. Ist der Schritt abgeschlossen, wird die Master-Boot-Routine von der Festplatte ausgeführt, die im BIOS als erstes Bootlaufwerk eingerichtet wurde.

Dieser prüft die Einträge in der Partitionstabelle und sucht nach dem Eintrag, bei dem eine primäre Partition als aktiv markiert und somit bootfähig ist. Damit nicht mehrere Betriebssysteme gleichzeitig geladen werden, kann pro Festplatte nur eine Partition als aktiv markiert werden.

Ist die aktive Partition ermittelt, wird der Bootsektor der Partition aufgerufen. Auf dem Bootsektor ist ein Startcode des Betriebssystems und dieser sorgt dafür, dass das Betriebssystem gestartet wird und im weiteren Vorgang die Kontrolle über den PC erhält.

Master-Boot-Routine
Das Zusammenspiel beim Startvorgang

Partitionstabelle

Für die Partitionstabelle stehen insgesamt 64 Bytes zur Verfügung. Diese enthält Partitionseinträge für vier Partitionen, für die jeweils 16 Bytes zur Verfügung stehen. Jeder Partitionseintrag besitzt eine feste Struktur.

In jedem Byte sind, je nach Inhalt, Informationen über die Partitionen abgelegt. Die verschiedenen Informationen belegen unterschiedlich viel Platz, so dass für manche Informationen ein Byte, 1 Wort (2 Bytes) oder ein Doppelwort (4 Bytes) benötigt werden.

Partitionstabelle
Aufbau eines Partitionseintrags

Die Informationen werden an verschiedenen Adressen abgelegt wobei die Adresse in hexadezimaler Schreibweise geschrieben werden. Beispielsweise wird die die Information über die Anzahl der Sektoren von der Partition ab der Adresse 0Ch abgelegt. Diese Information belegt ein Doppelwort (4 Bytes), so dass die Bytes 12 - 15 damit belegt werden. In Byte 0 wird angegeben, ob es sich bei der Partition um eine aktive Partition handelt oder nicht. Die Partitionseinträge sind nicht vereinheitlicht. Beispielsweise werden bei kleinen Festplatten (< 8 GB) in Byte 1 - 3 die Startposition der Partition angegeben (Kopf, Spur, Sektor). Größere Festplatten verwenden für diese Informationen z.B. den Platz ab Byte 7.