A Master Boot Record (~Fő indítórekord) talán az egyik legfontosabb része a merevlemeznek, mert sérülése esetén nem indítható operációs rendszer, legyen az Windows, DOS, UNIX, OS/2 vagy bármi. Minden partícióhoz (kötethez) tartozik egy indító rekord. Elhelyezkedésük operációs rendszerenként változik: van, ahol a kötet közepén kapott helyett (NT 3.5), van, ahol a végén (NT 4.0, 2000). Mindegyik indítórekord közül a legfontosabb az MBR, ami a merevlemez legelején az első szektorban található. A számítógép bekapcsolása után az alaplap itt keresi és ide adja át a vezérlést. Ettől kezdve az MBR feladata a gép indításának folytatása.
Az MBR akkor jön létre, amikor megtörténik a merevlemez partícionálása. Mérete nem túl tetemes: 512 bájt. Ebben a csekély méretben egy futtatható kód található, melynek a neve: master boot code. Itt található még a lemez aláírása (disk signature) és a partíciós tábla (partition table). Az utolsó két bájt jelzi, hogy hol ér véget az MBR, értéke mindig 0x55AA (megtalálható a boot rekordok végén is). A lemez aláírása egy egyedi szám a 0x01B8 ofszet címen, azonosítja a lemezt az operációs rendszer számára. A Windows 2000 indexként használja a regisztrációs adatbázis következő címének olvasásához:
[HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices]
MBR nem, csak boot rekord található a floppy lemezeken, a merevlemezek mindegyikén (amelyiken van partíció) van MBR, függetlenül attól, hány merevlemez és milyen sorrendben találhatók a gépben. Bekapcsolás után azonban csak a BIOS által meghatározott egység MBR-je lép működésbe. Mindez függetlenül az operációs rendszerektől.
Nézzük meg sorban az MBR részeit:
Master Boot Code
A futtatható kód az alábbi lépéseket hajtja végre:
- Megkeresi a partíciós táblában az aktívnak jelölt partíciót.
- Megkeresi az aktív partíció első szektorát.
- Betölti az aktív partíció indítórekordját (boot szektor) a memóriába.
- Átadja a vezérlést az indítórekord számára.
Amennyiben a fenti műveletek végrehajtása nem jár sikerrel, megjelenít egy hibaüzenetet.
Partíciós tábla
A partíciós tábla feladata meghatározni a merevlemezen található partíciók helyét és típusát. Összes mérete 64 bájt és minden bejegyzés 16 bájt hosszú. Ebből következik, hogy maximum négy lehet egy merevlemezen. Logikailag ugyan meghatározhatunk többet is, de akkor kiterjesztett partíción létrehozott logikai kiosztásról van szó, valójában az is csak egy partíció.
Az alábbi ofszet címeken találhatók az egyes partíciók bejegyzései:
- Partíció1\ 0x01BE(446)
- Partíció2\ 0x01CE(462)
- Partíció3\ 0x01DE(478)
- Partíció4\ 0x01EE(494)
Windows 2000-től kezdődően áll rendelkezésünkre a dinamikus lemezkezelő szolgáltatás. Egyik tulajdonsága, hogy megszünteti a maximálisan négy partíciós korlátot, de úgy, hogy nem írja felül az MBR-t, hanem a merevlemez végén hoz létre egy táblát, ezért nem kompatibilis a korábbi vagy más operációs rendszerekkel.
Két címet emelnénk ki a partíciós táblából az első, amelyik az aktivitást jelzi, ez a 0x01E ofszet címen található (az MBR elejéhez viszonyítva, egyébként a tábla első bájtja), 1 bájt (8 bit) hosszú, értéke 00, ha nincs aktív a partíció és ettől eltérő, ha van.
A másik cím a 0x01C2 ofszet címen helyezkedik el és jelzi milyen típusú fájlrendszer található a partíciókon. Minden operációs rendszernek megvannak a saját azonosítói, a Windows 2000/XP a következőket használja:
| Érték |
Típus |
| 0x01 |
FAT12 elsődleges vagy logikai |
| 0x04 |
FAT16 elsődleges vagy logikai |
| 0x05 |
Kiterjesztett |
| 0x06 |
BIGDOS FAT16 elsődleges vagy logikai (max. 4 GB méretig, de csak 2000/XP alatt) |
| 0x07 |
Installable File System (IFS) elsődleges vagy logikai |
| 0x0B |
FAT32 elsődleges vagy logikai |
| 0x0C |
FAT32 elsődleges vagy logikai BIOS INT 13h bővítéssel |
| 0x0E |
BIGDOS FAT16 elsődleges vagy logikai BIOS INT 13h bővítéssel |
| 0x0F |
Kiterjesztett BIOS INT 13h bővítéssel |
| 0x12 |
EISA partíció |
| 0x42 |
Dinamikus lemezkezelés van használatban |
| 0x86 |
FT FAT16 |
| 0x87 |
FT NTFS |
| 0x8B |
FT FAT32 |
| 0x8C |
FT FAT32 BIOS INT 13h bővítéssel |
Tükrözött köteteknél a felső bit jelzi a tükrözés tényét.
Extended Boot Record (EBR)
Joggal merülhet fel a kérdés, hogy a fenti szigorú rendszerbe hogy lehet beilleszteni a logikai meghajtókat? Ha kiterjesztett partíción definiálva vannak logikai meghajtók, akkor ezek az Extended Boot Record-ban találhatók, mely helyileg nem az MBR-ben helyezkednek el, hanem a merevlemez 32. vagy 63. relatív szektorában. Ha nincs logikai meghajtó, akkor a szektor üres.