MBR - это главная загрузочная запись. Обычно это самый первый сектор на жестком диске.
На дискетах вместо MBR применяется BPB. MBR содержит код загрузки, первичную таблицу разделов и два специальных байта в конце: 0x55AA.
Не существует официального стандарта на MBR, но производители системного ПО используют определенные соглашения относительно ее структуры.
Роль MBR в загрузке операционной системы
BIOS после выполнения операций по проверке оборудования и определения загрузочного устройства
читает первый сектор жесткого диска в память по адресу 0000:7C00 и передает туда управление.
Далее все зависит от кода, размещенного в MBR. Задача этого кода определить загрузочный раздел, считать первый сектор этого раздела и исполнить его.
Далее код в загрузочном секторе раздела ищет файлы операционной системы, загрузает их в память и передает им управление.
Поскольку кроме кода загрузки в MBR присутствует таблица разделов жесткого диска, размер этого кода ограничен.
Структура MBR
0000 - 01B7 = загрузчик
01B8 - 01BB = сигнатура диска
01BE - 01CD = первая запись таблицы разделов
01CE - 01DD = вторая запись таблицы разделов
01DE - 01ED = третья запись таблицы разделов
01EE - 01FD = четвертая запись таблицы разделов
01FE - 01FF = байты 55 AA
Для BIOS важны только последние 2 байта MBR. По ним она определяет валидность MBR.
Если после чтения сектора BIOS обнаружит не те байты, она сделает вывод,
что жесткий диск не размечен и проигнорирует его как загрузочное устройство.