BIOS-Parameterblock - BIOS parameter block
In der Berechnung der BIOS - Parameterblock , häufig zu einem verkürzten BPB , ist eine Datenstruktur in dem Datenträger - Boot - Record (VBR) , um das physikalische Layout eines beschreibenden Datenspeichervolumens . Auf partitionierten Geräten wie Festplatten beschreibt die BPB die Volume-Partition, während sie auf unpartitionierten Geräten wie Disketten das gesamte Medium beschreibt. Ein Basis-BPB kann auf jeder Partition erscheinen und verwendet werden, einschließlich Disketten, wo sein Vorhandensein oft erforderlich ist; bestimmte Dateisysteme verwenden es jedoch auch, um grundlegende Dateisystemstrukturen zu beschreiben. Zu den Dateisystemen, die einen BIOS-Parameterblock verwenden, gehören FAT12 (außer in DOS 1.x), FAT16 , FAT32 , HPFS und NTFS . Aufgrund unterschiedlicher Feldtypen und der darin enthaltenen Datenmenge ist die Länge des BPB für FAT16-, FAT32- und NTFS-Bootsektoren unterschiedlich. (Eine ausführliche Erläuterung der verschiedenen FAT-BPB-Versionen und ihrer Einträge finden Sie im FAT- Artikel.) In Kombination mit der 11-Byte-Datenstruktur ganz am Anfang von Volume-Boot-Records unmittelbar vor dem BPB oder EBPB wird dies auch als FDC bezeichnet Deskriptor oder erweiterter FDC-Deskriptor in ECMA-107 oder ISO/IEC 9293 (der FAT wie für flexible/Floppy- und optische Plattenkassetten beschreibt).
FAT12 / FAT16
DOS 2.0 BPB
Format von Standard-DOS 2.0 BPB für FAT12 (13 Byte):
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | WORT | Byte pro logischem Sektor |
0x00D | 0x02 | BYTE | Logische Sektoren pro Cluster |
0x00E | 0x03 | WORT | Reservierte logische Sektoren |
0x010 | 0x05 | BYTE | Anzahl der Fette |
0x011 | 0x06 | WORT | Einträge im Stammverzeichnis |
0x013 | 0x08 | WORT | Gesamte logische Sektoren |
0x015 | 0x0A | BYTE | Medienbeschreibung |
0x016 | 0x0B | WORT | Logische Sektoren pro FAT |
DOS 3.0 BPB
Format von Standard-DOS 3.0 BPB für FAT12 und FAT16 (19 Byte), das bereits von einigen Versionen von MS-DOS 2.11 unterstützt wird:
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | 13 Byte | DOS 2.0 BPB |
0x018 | 0x0D | WORT | Physische Sektoren pro Spur |
0x01A | 0x0F | WORT | Anzahl der Köpfe |
0x01C | 0x11 | WORT | Versteckte Sektoren (inkompatibel mit DOS 3.31 BPB ) |
DOS 3.2 BPB
Format von Standard-DOS 3.2 BPB für FAT12 und FAT16 (21 Byte):
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | 19 Byte | DOS 3.0 BPB |
0x01E | 0x13 | WORT | Gesamtsektoren (inkompatibel mit DOS 3.31 BPB ) |
DOS 3.31 BPB
Format von Standard-DOS 3.31 BPB für FAT12 , FAT16 und FAT16B (25 Byte):
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | 13 Byte | DOS 2.0 BPB |
0x018 | 0x0D | WORT | Physische Sektoren pro Spur (identisch mit DOS 3.0 BPB ) |
0x01A | 0x0F | WORT | Anzahl Köpfe (identisch mit DOS 3.0 BPB) |
0x01C | 0x11 | DWORD | Versteckte Sektoren (inkompatibel mit DOS 3.0 BPB) |
0x020 | 0x15 | DWORD | Große logische Gesamtsektoren |
DOS 3.4 EBPB
Format von PC DOS 3.4 und OS/2 1.0-1.1 Extended BPB für FAT12 , FAT16 und FAT16B (32 Byte):
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | 25 Byte | DOS 3.31 BPB |
0x024 | 0x19 | BYTE | Nummer des physischen Laufwerks |
0x025 | 0x1A | BYTE | Flaggen usw. |
0x026 | 0x1B | BYTE | Erweiterte Boot-Signatur ( 0x28 aka "4.0") (ähnlich DOS 4.0 EBPB und NTFS EBPB ) |
0x027 | 0x1C | DWORD | Seriennummer des Volumens |
FAT12 / FAT16 / HPFS
DOS 4.0 EBPB
Format von DOS 4.0 und OS/2 1.2 Extended BPB für FAT12 , FAT16 , FAT16B und HPFS (51 Byte):
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | 25 Byte | DOS 3.31 BPB |
0x024 | 0x19 | BYTE | Physische Laufwerksnummer (identisch mit DOS 3.4 EBPB ) |
0x025 | 0x1A | BYTE | Flags etc. (identisch mit DOS 3.4 EBPB) |
0x026 | 0x1B | BYTE | Erweiterte Boot-Signatur ( 0x29 aka "4.1") (ähnlich DOS 3.4 EBPB und NTFS EBPB ) |
0x027 | 0x1C | DWORD | Volume-Seriennummer (identisch mit DOS 3.4 EBPB) |
0x02B | 0x20 | 11 Byte | Datenträgerbezeichnung |
0x036 | 0x2B | 8 Bytes | Dateisystemtyp |
FAT32
DOS 7.1 EBPB
Format des kurzen DOS 7.1 Extended BIOS Parameter Block (60 Byte) für FAT32 :
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | 25 Byte | DOS 3.31 BPB |
0x024 | 0x19 | DWORD | Logische Sektoren pro FAT |
0x028 | 0x1D | WORT | Spiegelung von Flags usw. |
0x02A | 0x1F | WORT | Ausführung |
0x02C | 0x21 | DWORD | Stammverzeichniscluster |
0x030 | 0x25 | WORT | Standort des FS-Informationssektors |
0x032 | 0x27 | WORT | Standort des/der Backup-Sektor(s) |
0x034 | 0x29 | 12 Byte | Reserviert (Bootdateiname) |
0x040 | 0x35 | BYTE | Nummer des physischen Laufwerks |
0x041 | 0x36 | BYTE | Flaggen usw. |
0x042 | 0x37 | BYTE | Erweiterte Boot-Signatur ( 0x28 ) |
0x043 | 0x38 | DWORD | Seriennummer des Volumens |
Format des vollständigen DOS 7.1 Extended BIOS Parameter Block (79 Bytes) für FAT32 :
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | 25 Byte | DOS 3.31 BPB |
0x024 | 0x19 | DWORD | Logische Sektoren pro FAT |
0x028 | 0x1D | WORT | Spiegelung von Flags usw. |
0x02A | 0x1F | WORT | Ausführung |
0x02C | 0x21 | DWORD | Stammverzeichniscluster |
0x030 | 0x25 | WORT | Standort des FS-Informationssektors |
0x032 | 0x27 | WORT | Standort des/der Backup-Sektor(s) |
0x034 | 0x29 | 12 Byte | Reserviert (Bootdateiname) |
0x040 | 0x35 | BYTE | Nummer des physischen Laufwerks |
0x041 | 0x36 | BYTE | Flaggen usw. |
0x042 | 0x37 | BYTE | Erweiterte Boot-Signatur ( 0x29 ) |
0x043 | 0x38 | DWORD | Seriennummer des Volumens |
0x047 | 0x3C | 11 Byte | Datenträgerbezeichnung |
0x052 | 0x47 | 8 Bytes | Dateisystemtyp |
NTFS
Format von Extended BPB für NTFS (73 Byte):
Sektor-Offset | BPB-Offset | Feldlänge | Beschreibung |
---|---|---|---|
0x00B | 0x00 | 25 Byte | DOS 3.31 BPB |
0x024 | 0x19 | BYTE | Physische Laufwerksnummer (identisch mit DOS 3.4 EBPB ) |
0x025 | 0x1A | BYTE | Flags etc. (identisch mit DOS 3.4 EBPB) |
0x026 | 0x1B | BYTE | Erweiterte Boot-Signatur ( 0x80 aka "8.0") (ähnlich DOS 3.4 EBPB und DOS 4.0 EBPB ) |
0x027 | 0x1C | BYTE | Reserviert |
0x028 | 0x1D | QWORD | Sektoren im Volumen |
0x030 | 0x25 | QWORD | MFT erste Clusternummer |
0x038 | 0x2D | QWORD | Nummer des ersten MFT-Spiegels |
0x040 | 0x35 | DWORD | MFT-Datensatzgröße |
0x044 | 0x39 | DWORD | Größe des Indexblocks |
0x048 | 0x3D | QWORD | Seriennummer des Volumens |
0x050 | 0x45 | DWORD | Prüfsumme |
exFAT BPB
exFAT verwendet kein BPB im klassischen Sinne. Trotzdem ist der Volume Boot Record in Sektor 0 ähnlich wie BPBs organisiert.
Sektor-Offset | Feldlänge (Byte) | Beschreibung |
---|---|---|
0x000 | 3 | JumpBoot. Muss 0xEB, 0x76, 0x90 sein. |
0x003 | 8 | Dateisystemname. Muss "EXFAT" sein . |
0x00B | 53 | Leer (traditioneller BPB-Bereich). Muss ganz null sein. |
Siehe auch
Verweise
Weiterlesen
- de Boyne Pollard, Jonathan. "Alles über BIOS-Parameterblöcke" . Häufig gegebene Antworten . Archiviert vom Original am 09.09.2017 . Abgerufen 2016-04-18 . — eine Beschreibung der BPBs von Version 2.0 bis Version 7.0
- Christopher, Ken W.; Feigenbaum, Barry A.; Saliga, Shon O. (1990). "9: DOS-Festplattennutzung". Entwicklung von Anwendungen mit DOS . Wiley . ISBN 0-471-52231-7. — Im Abschnitt "Verarbeitung des BIOS-Parameterblocks" beschreiben die Autoren die Entwicklung des BIOS-Parameterblocks von der MS-DOS-Version 2.0 BPB zur PC-DOS-Version 4.0 BPB und beschriften jedes Feld mit der DOS-Version, die es eingeführt hat.
- Townsend, Carl (1989). "4: Datenträgerorganisation und -verwaltung". Erweiterte MS-DOS-Expertentechniken für Programmierer . Howard M. Sams . ISBN 0-672-22667-7.— Abbildung 4.3 enthält ein Diagramm des BPB der Version 4.0 und gibt an, dass das Layout von BPBs „nicht von Microsoft definiert wird und je nach Anbieter variieren kann“. Zu der Zeit, als das Buch geschrieben wurde, war dies wahr. Microsoft hat die BPB-Struktur erstmals öffentlich im OS/2 Developers' Toolkit dokumentiert.
-
Verstak, Alex (1998-03-10). "FAT-Boot-Sektor" . Archiviert vom Original am 30.07.2016.— Verstak entwickelt den BIOS-Parameterblock zurück. Das Papier enthält mehrere Fehler. Eine davon ist die Aussage, dass "das Vorhandensein des EBPB in FAT32 von Microsoft nicht dokumentiert ist". Sehen:
- Microsoft . "Kapitel 10 - Festplatten und Dateisysteme" . Microsoft Windows 98-Ressourcenkit . Archiviert vom Original am 09.09.2017 . Abgerufen 2017-09-09 . — Microsoft dokumentiert einen BPB der Version 4.0 und einen neuen „FAT32 BIOS Parameter Block (BPB)“ (einen BPB der Version 7.0) für DOS-Windows 98, der „größer als ein Standard-BPB“ ist, eine „identische Struktur zu einem Standard-BPB“ hat , aber das beinhaltet auch "mehrere zusätzliche Felder".
- Microsoft . "Kapitel 32 - Datenträgerkonzepte und Fehlerbehebung" . Microsoft Windows 2000 Professional-Ressourcenkit . Archiviert vom Original am 10.08.2006 . Abgerufen 2006-06-01 .— Microsoft dokumentiert erweiterte BPBs sowohl auf FAT16- als auch auf FAT32-Volumes. Es dokumentiert auch BPBs auf NTFS-Volumes.
- Microsoft . "Wie NTFS funktioniert" . Technische Referenz zu Microsoft Windows Server 2003 NTFS . Archiviert vom Original am 30.07.2016.— Die Tabelle „BPB- und erweiterte BPB-Felder auf NTFS-Volumes“ beschreibt BPBs auf NTFS-Volumes. Die Beschreibungen einiger Felder widersprechen denen im Windows 2000 Resource Kit.
- de Boyne Pollard, Jonathan. "Die Bedeutung und Verwendung des OEM-Namensfelds in Volume-Boot-Blöcken" . Häufig gegebene Antworten . Archiviert vom Original am 09.09.2017 . Abgerufen 2016-06-04 . – ein Problem, das BPBs betrifft
- Paul, Matthias R. (2004-08-25). "NOVOLTRK.REG" . www.drdos.org . Archiviert vom Original am 2016-03-04 . Abgerufen 2011-12-17 . [1]
- Paul, Matthias R. (2002-02-20). "Benötige DOS 6.22 (nicht OEM)" . Newsgroup : alt.msdos.programmer . Archiviert vom Original am 09.09.2017 . Abgerufen 2006-10-14 . — zum Missbrauch von OEM-Labels und Microsofts Volume Tracker
- Paul, Matthias R. (2002-08-12). "Dateisystem-ID - "Der Standardausschuss für Bootsektordeskriptoren von alt.os.development " " . Newsgroup : alt.os.development . Abgerufen 2019-07-29 .
- Bass, Wally (1994-02-14). "Clustergröße" . Newsgroup : comp.os.msdos.programmer . Archiviert vom Original am 09.09.2017 . Abgerufen 2006-10-14 .
- Elliott, John C. (2006-04-17) [2004-06-18]. "Auf OEM-IDs" . Seasip.info . 1.3. Archiviert vom Original am 08.04.2019 . Abgerufen 2019-07-29 .
- Dye, Charles E. (1999-03-20). "FDISK-Probleme" . delorie.com . Archiviert vom Original am 29.07.2019 . Abgerufen 2019-07-29 .
- Anonym (2004-06-15). "Ich hoffe, dies ist hilfreich zu Microsoft und Caldera DR-DOS und OEM-IDs" . Groklaw . Abgerufen 2019-07-29 .
- Kilmer, Jen (2013-05-21). "Böse :) DOS6 FAT" . Newsgroup : comp.os.os2.misc . Abgerufen 2019-07-29 .