Der Partitions-Sektor ist eigendlich eine Brücke zum Bootsektor und beinhaltet zusätzliche
Informationen über den Aufbau der Festplatte.
Der Partitions-Sektor wird durch den Befehl FDISK angelegt nicht aber der Bootsektor das macht der
Befehl FORMAT (bei DOS/WIN). Eine Festplatte kann mit dem Befehl FDISK zu mehreren Laufwerken mit
unterschiedlichen Grössen unterteilt werden. Alle bisherigen Daten gehen dadurch verloren.
Damit der PC beim nächsten Start weiss, wie gross jedes Laufwerk auf dieser Festplatte ist, braucht
der PC(das Bios) Informationen, und diese findet er im Partitions-Sektor in der
Partitions-Tabelle. Auch Windows benötigt diese Daten.
Wenn man eine Festplatte in mehrere Laufwerke unterteilt bei Dos mit FDisk,
so hat jedes Logische ob Primary oder Extended Laufwerk, eine Partititions-Tabelle
und einen Boot-Sektor, egal ob es das Boot-Laufwerk ist, oder nicht, es wird auf
jeden Fall angelegt. Des weiteren ist es undurchschaubar warum es 4 Einträge in
der Partitions-Tabelle gibt, denn 2 sind immer unbenutzt. Der 2 Eintrag verweist
immer auf das nächste Dos Laufwerk dessen Partitions-Sektor(also c,d,e,f,g,h,i...)
Also von C:\ nach D:\ und dann von D:\ nach E:\ u.s.w . Hier hangelt sich die
Partitions-Routine durch, von einem Laufwerk zum anderen.
Zu bedenken ist vielleicht dass man mehr als 4 Laufwerke anlegen kann und damit die Tabelle mit
4Einträgen zu klein ist und deswegen die Hangelversion eingeführt hat(Heute, das war nicht immer so)
(und aus Kompalität zu UNIX, da hatte die Partitions-T. einen ganz
anderen Aufbau).
-------------------------------------------------------------------------------
Den "Master Boot Record" also den Partitions-Sektor konnte man sich nur über das Bios holen
mit
(
int13 Funktion 2 Sektor lesen), Dos stellte keine Funktion zur Verfügung.
Ab WinXP geht noch nicht einmal die Biosfunktion, da diese abgefangen wird, es sei den man bastellt sich eine Bootdiskette mit altem Dos.
Xp/Win2000 hat aber (API)Funktionen die man sich mal genauer anschauen sollte.
XP (API)
Der Partitions-Sektor beginnt an der physikalischen Adresse bei Kopf 0 Sektor 1 Spur 0
und hat eine länge von 512Byte. Dieser
Partitions-Sektor
wird vom Bios nach dem Reset oder Systemstart zu der Adresse 0000:7C00h in den Speicher geladen,
dann wird die
Partitions-Routine ausgeführt.
Die Partitions-Routine macht dann folgendes: sie kopiert sich zur Adresse 0000:0600h, als
nächstes wird getestet welcher Partitions-Eintrag bootfähig ist und ob der Erkennungscode
$AA55, der sich an der Adresse 0000:7DFEh befindet, gültig ist, also von welchem Laufwerk
gebootet wird. Wurde der Eintrag gefunden, so wird der
Bootsektor in die Adresse 0000:7C00h
geladen und ausgeführt.
Das ist alles Dos und kann auch ganz anders aussehen. So z.B. Virus oder andere Betriebsysteme
oder Bootmanager.