Peter Böttcher: Die GUID Partitions Tabelle (GPT) aus Entwicklersicht

Einleitung:

Wie kommt jemand auf die Idee, ein GPT-Partitions Programm (interner Gebrauch) zu schreiben? Zudem plattformunabhängig?

Betriebssysteme: Linux, Windows, Mac OSX, FreeBSD.
CPU: X86/AMD64/ARM.

Hauptteil:

Wie wird ein Datenträger beschrieben?
Welche Voraussetzungen sind notwendig?

Betriebssystem-Interna:
SYSCALLS.

Unterschiede/Keine Unterschiede 32/64 Bit Linux und Windows etc.

Warum ist 64 Bit Linux bzgl. schreiben, positionieren POSIX kompatibel und 32 Bit Linux nicht?

Wie kann man die Eckdaten eines Datenträgers ermitteln? (Sektor-Größe, Datenträger-Größe)
Alles unter Berücksichtigung der Plattformunabhängigkeit und der unterschiedlichsten Datenträger.

Umsetzung der GPT Referenz und Erklärung der GPT.

Kein GPT Partitions Programm setzt die GPT REFERENZ richtig um.

Gilt für alle Betriebssysteme (Gilt nicht für die Betriebssysteme selbst, sondern nur für die Partitions-Programme!).

Warum setzt LINUX die Referenz der GPT nicht vollständig um, bzw. beschränkt diese. (Einschränkung kann leicht behoben werden)

Besonderheiten bzw. gefährliche Fallstricke: USB Festplatten mit großer Kapazität!

Praktische Beispiele