Master Boot Record (MBR)


  • Mod

    else if ( ( ((*((uint8_t*)addr)) == 0x00) || ((*((uint8_t*)addr)) == 0xEB) || ((*((uint8_t*)addr)) == 0xFA) || ((*((uint8_t*)addr)) == 0x33) )  && ((*((uint16_t*)((uint8_t*)addr+444))) == 0x0000) )
    

    Das ist der Anfang der Erkennung von MBR. Die Frage ist aber: wie kann man einen Master Boot Record sicher erkennen? Wir wissen bereits, dass in 510/511 55AAh steht. Reicht der Check der Doppel-Null an 444 und die 55AA an 510/511?

    0xEB habe ich hinzu gefügt wegen http://de.wikipedia.org/wiki/Partitionstabelle, und die 0x00 haben wir bei Cuervo gesehen.

    Was erzeugt “fdisk /mbr” bzw. “fixmbr” an byte0?



  • Es gibt von Microsoft ein Dokument: FAT32 File System Specification.
    Man muss hier ein "License agreement" akzeptieren:
    http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx
    und dann kommt man auf eine Seite, wo man ganz rechts im Kleingedruckten, damit man es leicht übersieht, eine doc-Datei herunterladen kann.
    Ich kann die Datei grad nicht öffnen, aber ich erinnere mich, dort werden alle Strukturen genau beschrieben, auch die von Boot Sector. Vielleicht hilft es weiter...


Anmelden zum Antworten