Mbr и gpt . основные вопросы
Содержание:
Структура описания раздела
Смещение | Длина | Описание |
---|---|---|
00h | 1 | Признак активности раздела |
01h | 1 | Начало раздела — головка |
02h | 1 | Начало раздела — сектор (биты 0—5), цилиндр (биты 6, 7) |
03h | 1 | Начало раздела — цилиндр (старшие биты 8, 9 хранятся в байте номера сектора) |
04h | 1 | Код типа раздела |
05h | 1 | Конец раздела — головка |
06h | 1 | Конец раздела — сектор (биты 0—5), цилиндр (биты 6, 7) |
07h | 1 | Конец раздела — цилиндр (старшие биты 8, 9 хранятся в байте номера сектора) |
08h | 4 | Смещение первого сектора |
0Ch | 4 | Количество секторов раздела |
Признак активности разделов
Признак активности раздела — признак, обозначающий возможность загрузки операционной системы с данного раздела. Для стандартных загрузчиков может принимать следующие значения:
- 80h — раздел является активным;
- 00h — раздел является неактивным;
- другие значения являются ошибочными и игнорируются.
Начало раздела / Конец раздела
Координаты начала и конца раздела в CHS-формате (цилиндр, головка, сектор). CHS не позволяет выполнять адресацию более чем к 7,8 ГБ данных, и для адресации к разделам, находящимся за пределами 7,8 ГБ, используется LBA-адресация.
Код типа раздела
Код файловой системы, используемой на данном разделе.
Код | Тип раздела |
---|---|
00h | Пустая запись (свободное место) |
01h | FAT-12 (если это логический раздел или раздел расположен в первых 32 мегабайтах диска, иначе используется код 06h) |
02h | XENIX root |
03h | XENIX usr |
04h | FAT-16 до 32 Мбайт (если раздел первичный, то должен находиться в первых физических 32 Мб диска, иначе используется код 06h) |
05h | Расширенный раздел |
06h | FAT-16B, а также FAT-16, не попадающий под условия кода 04h и FAT-12, не попадающий под условия кода 01h |
07h | IFS, HPFS, NTFS, exFAT (и некоторые другие — тип определяется по содержимому загрузочной записи) |
08h | AIX |
09h | AIX загрузочный |
0Ah | OS/2 Boot-менеджер, OPUS |
0Bh | FAT-32 |
0Ch | FAT-32X (FAT-32 с использованием LBA) |
0Dh | Зарезервирован |
0Eh | FAT-16X (FAT-16 с использованием LBA) (VFAT) |
0Fh | Расширенный раздел LBA (то же что и 05h, с использованием LBA) |
10h | OPUS |
11h | Скрытый FAT (аналогичен коду 01h) |
12h | Compaq, Сервисный раздел |
14h | Скрытый FAT (аналогичен коду 04h) |
15h | Скрытый расширенный раздел (аналогичен коду 05h) |
16h | Скрытый FAT (аналогичен коду 06h) |
17h | Скрытый раздел HPFS/NTFS/IFS/exFAT |
18h | AST SmartSleep |
19h | OFS1 |
1Bh | Скрытый раздел FAT-32 (см. 0Bh) |
1Ch | Скрытый раздел FAT-32X (см. 0Ch) |
1Eh | Скрытый раздел FAT-16X (VFAT) (см. 0Eh) |
1Fh | Скрытый расширенный раздел LBA (см. 0Fh) |
20h | OFS1 |
21h | FSo2 |
22h | Расширенный раздел FS02 |
24h | NEC DOS |
25h | Windows Mobile IMGFS |
27h | Скрытый NTFS (Раздел восстановления системы) |
28h | Зарезервирован для FAT-16+ |
29h | Зарезервирован для FAT-32+ |
2Ah | AFS (AthFS) |
35h | JFS |
38h | THEOS 3.2 |
39h | Plan 9 |
3Ah | THEOS 4 |
3Bh | Расширенный раздел THEOS 4 |
3Ch | Partition Magic, NetWare |
3Dh | Скрытый раздел NetWare |
40h | Venix 80286, PICK R83 |
41h | Старый Linux/Minix, PPC PReP Boot |
42h | Старый своп Linux, SFS, раздел на динамическом диске в Windows (Dynamic Disk) |
43h | Старый Linux |
4Ah | ALFS |
4Ch | A2 (Aos) |
4Dh | QNX4.x |
4Eh | QNX4.x 2-я часть |
4Fh | QNX4.x 3-я часть |
50h | OnTrack DM (только чтение) |
51h | OnTrack DM6 (чтение и запись) |
52h | CP/M |
53h | OnTrack DM6 Aux3 |
54h | OnTrack DM6 DDO |
55h | EZ-Drive |
56h | Golden Bow |
56h | Novell VNDI |
5Ch | Priam Edisk |
61h | SpeedStor |
62h | GNU HURD |
63h | UNIX |
64h — 69h | NetWare |
77h | VNDI, M2FS, M2CS |
78h | XOSL |
7Fh | Данный код зарезервирован для исследовательских или учебных проектов |
80h | MINIX (старый) |
81h | MINIX |
82h | Linux swap, Sun Solaris (старый) |
83h | Linux |
85h | Linux extended (расширенный) |
86h | Раздел FAT-16 stripe-массива Windows NT |
87h | Раздел NTFS/HPFS stripe-массива Windows NT |
8Eh | Раздел LVM |
93h | Amoeba, скрытый Linux (см. код 83h) |
94h | Amoeba BBT |
94h | ISO-9660 |
9Eh | ForthOS |
A5h | Раздел гибернации |
A5h | NetBSD (старый), FreeBSD, BSD/386 |
A6h | OpenBSD |
A7h | NeXTSTEP |
A8h | Apple Darwin, Mac OS X UFS |
A9h | NetBSD |
AFh | Mac OS X HFS и HFS+, ShangOS |
B1h | QNX6.x |
B2h | QNX6.x |
B3h | QNX6.x |
B6h | Зеркальный master-раздел FAT-16 Windows NT |
B7h | Зеркальный master-раздел NTFS/HPFS Windows NT |
BEh | Solaris 8 загрузочный |
BFh | Solaris |
C2h | Скрытый Linux |
C3h | Скрытый своп Linux |
C6h | Зеркальный slave-раздел FAT-16 Windows NT |
C7h | Зеркальный slave-раздел NTFS Windows NT |
CDh | Дамп памяти |
D8h | CP/M-86 |
DAh | Данные — не файловая система |
DBh | CP/M-86 |
DDh | Скрытый дамп памяти |
DEh | Dell Utility |
EBh | BFS |
ECh | SkyOS |
EDh | Гибридный GPT |
EEh | GPT |
EFh | Системный раздел UEFI |
F7h | EFAT, SolidState |
FBh | VMFS |
FCh | Своп VMFS |
FEh | LANstep, PS/2 IML |
FFh | XENIX BBT |
Основная статья: Расширенная загрузочная запись
В случае, если используется расширенный раздел, координаты начала раздела указывают на EBR.
Смещение | Длина | Описание |
---|---|---|
1BEh | 16 | Указатель на раздел |
1CEh | 16 | Указатель на следующий EBR |
1DEh | 32 | Не используется (должно быть заполнено нулями) |
1FEh | 2 | Сигнатура (55h AAh) |
Формат указателей аналогичен MBR.
Недостатки
- Противоречивые реализации поддержки GPT, возможно, из-за закрытости большей части стандарта (например, GUID для раздела данных Linux был изменён на другой, в старых версиях parted используется нестандартная кодировка имён).
- Не предусмотрено возможности назначать имя всему диску, как отдельным разделам (хотя у него есть свой GUID).
- По-прежнему сильна привязка раздела к его номеру в таблице (например, многие загрузчики ОС предпочитают номер именам и GUID).
- Количество дубликатов таблиц строго ограничено двумя, их позиции зафиксированы, что в случае повреждения диска, ошибок администрирования или ошибок программ недостаточно для удобного восстановления данных.
- Ни резервная копия GPT, ни основная не позволяют аннулировать другую копию в случае, если та неверна, но имеет правильную контрольную сумму и не может быть стёрта, то есть не предусмотрено защиты от повреждённых секторов (плохих блоков), которая давно есть в некоторых(ext3, ext4) файловых системах.
Структура MBR
Смещение | Длина, байт | Описание | |
---|---|---|---|
0000h | 446 | Код загрузчика | |
01BEh | 16 | Раздел 1 | Таблица разделов |
01CEh | 16 | Раздел 2 | |
01DEh | 16 | Раздел 3 | |
01EEh | 16 | Раздел 4 | |
01FEh | 2 | Сигнатура (55h AAh) |
Код загрузчика
После завершения процедуры POST в ОЗУ по физическому адресу 0x7C00 записывается код загрузчика (первые 446 байт из нулевого сектора диска), после чего ему передаётся управление. Задача этого кода — проанализировать таблицу разделов жёсткого диска, затем передать управление второму загрузочному коду, который может находиться или в начале активного раздела, или на специальной области диска (эта область не занята файловыми системами и обычно является группой секторов № 1-№ 63, разделы на диске обычно начинаются с сектора № 64). Второй загрузчик уже умеет читать хотя бы одну файловую систему, и его задача — передать управление файлам из файловой системы ОС для запуска ОС.
Примеры:
Загрузчик Windows поступает первым способом: он передает управление второму загрузчику, который находится в начале активного Windows-раздела. Далее второй загрузчик обеспечивает поддержку файловой системы и запускает необходимые для дальнейшей загрузки ОС файлы.
Загрузчик GRUB (нашедший популярность в Linux-дистрибутивах) использует второй способ: он передает управление второму загрузчику, который расположен в группе секторов № 1-№ 63. Второй загрузчик ищет корневой Linux-раздел, а на этом разделе ищет файлы конфигурации GRUB (и модули GRUB) для отображения GRUB-меню. При выборе какого-либо пункта в GRUB-меню GRUB действует согласно файлу конфигурации для этого пункта (например, в случае с дистрибутивами Linux в ОЗУ копируется Linux-ядро с initrd и управление передается ядру). Копия первого загрузчика GRUB (446 байт из нулевого сектора диска) находится в файле boot.img, а копия второго загрузчика GRUB (группа секторов № 1 — № 63) находится в файле core.img (собирается при установке GRUB с учётом файловой системы корневого раздела и других факторов).
Сигнатура
Последние два байта MBR называются сигнатурой. Значение этих байтов должно быть 55h AAh. В случае, если это не так, запись считается некорректной.
Как конвертировать между MBR и GPT: резервное копирование и очистка диска
Чтобы преобразовать диск из MBR в GPT или из GPT в MBR, вам нужно сначала стереть содержимое диска. Прежде чем продолжить, сделайте резервную копию всех данных на диске. Приведённые ниже процессы преобразования сотрут с диска все данные и таблицы разделов, а затем вы преобразуете его в новый тип схемы разделов и снова настроите с нуля.
Технически это не единственный способ преобразования между дисками. Некоторые сторонние программы управления разделами обещают, что они могут конвертировать MBR в GPT и GPT в MBR без потери данных. Однако они официально не поддерживаются Microsoft, и всё равно нужно создать резервную копию своих данных перед запуском таких программ на случай, если вы что-нибудь потеряете.
Мы рекомендуем просто создать резервную копию диска, стереть данные и перенести все необходимые данные обратно. Это может занять немного больше времени, чем использование функции преобразования, но это официально поддерживаемый способ, и вы гарантированно не столкнётесь с какими-либо проблемами с разделами или потерей данных.
Вариант первый: использовать Управления дисками
Помните, прежде чем продолжить, сделайте резервную копию всех данных на диске! Эти команды сотрут все данные на диске, который вы выбрали для преобразования!
Чтобы преобразовать диск в другую схему разделов, найдите диск в «Управление дисками». Щёлкните правой кнопкой мыши любой раздел на диске и выберите «Удалить том» или «Удалить раздел», чтобы удалить их. Повторите этот процесс для каждого раздела на этом диске.
Когда все разделы удалены с диска, вы можете щёлкнуть диск правой кнопкой мыши в «Управление дисками» и выбрать «Преобразовать в диск GPT» или «Преобразовать в диск MBR». Эта опция будет доступна только после очистки всех разделов.
После этого вы можете создать один или несколько разделов на диске из окна «Управление дисками». Просто щёлкните правой кнопкой мыши внутри нераспределенного пространства и создайте один или несколько новых разделов. Затем, если хотите, вы можете переместить данные, для которых была создана резервная копия, на новые разделы.
Вариант второй: используйте команду Diskpart
Вы также можете сделать это с помощью команды diskpart из окна командной строки. В некоторых случаях это может быть необходимо, поскольку команда diskpart clean позволяет изменять разделы и диски, которые в графическом средстве управления дисками выглядят заблокированными и не поддающимися изменению.
Помните, прежде чем продолжить, сделайте резервную копию всех данных на диске! Последующие команды сотрут все данные на диске, который вы выбрали для преобразования!
Сначала запустите окно командной строки от имени администратора. Введите следующие команды в окне командной строки одну за другой:
diskpart list disk
Вы увидите список дисков на вашем компьютере
Обратите внимание на номер диска, который вы хотите преобразовать. Вы можете определить диски по их размеру.
Теперь введите следующие команды одну за другой, нажимая Enter после каждой и заменяя «#» номером диска, который вы хотите преобразовать. Команда «clean» сотрёт содержимое диска и записи его разделов, поэтому будьте очень осторожны при выборе правильного номера диска!
select disk # clean
Теперь введите одну из следующих команд, чтобы преобразовать систему разделов диска в MBR или GPT, в зависимости от того, что вы хотите.
Чтобы преобразовать диск из MBR в GPT:
convert gpt
Чтобы преобразовать диск из GPT в MBR:
convert mbr
Теперь все готово, и вы можете использовать окно «Управление дисками» для создания разделов на диске или даже использовать другие команды diskpart в командной строке для создания этих разделов. При желании вы можете переместить данные, для которых была создана резервная копия, на новые разделы.
Опять же, есть способы конвертировать между MBR и GPT без очистки диска — по крайней мере, теоретически. Но мы не можем проверить надёжность этих сторонних инструментов в каждой ситуации, поэтому, как правило, лучше использовать официально поддерживаемый метод очистки диска. Это может занять немного больше времени, но все будет работать правильно.
Стандартизация MBR
Утверждённого стандарта на структуру MBR не существует, однако, есть «сложившиеся традиции», которых придерживаются большинство MBR от разных производителей.
Иные форматы MBR
Загрузчики, отличные от стандартных Windows-загрузчиков, могут использовать всё пространство между MBR и первым разделом (около 32 кБ; 1-й–63-й сектора́) для собственных целей. В таких случаях под MBR понимают весь загрузочный код, а для выделения именно первых 512 байт говорят, что они расположены в MBS (Master Boot Sector) — главном загрузочном секторе.
Для операционных систем Microsoft понятия MBR и MBS совпадают, так как вся MBR содержится в MBS, хотя это не совсем правильно, так как под MBR подразумевают данные, а под MBS — физический сектор.
BIOS (до MBR)
- BIOS проводит начальную инициализацию оборудования (POST).
- BIOS определяет, с какого устройства производить дальнейшую загрузку: дискета, флеш-накопитель, жёсткий диск и т. д. (выбор устройства зависит от версии и от настроек BIOS)
- .
- BIOS считывает один сектор (512 байт), т.е. непосредственно MBR, который находится по адресу: «цилиндр 0, головка 0, сектор 1», и помещает его в область памяти по физическому адресу 0x7C00.
- BIOS проверяет, что этот сектор оканчивается сигнатурой 55ААh
- .
BIOS передаёт управление по физическому адресу 0x7C00 (то есть сектору MBR), предварительно записав в регистр DL номер диска, с которого этот сектор считан. Для первого жёсткого диска это значение будет равно 80h (128 в десятичной системе), для дисковода A: равно 0. Кроме того, Plug-n-Play BIOS может записать в регистры ES:DI указатель на структуру «$PnP».
MBR
Выбор загрузочного раздела и проверка целостности MBR:
- MBR копирует себя на другой адрес, чтобы освободить место для загрузчика ОС (к примеру MBR фирмы Microsoft копирует себя на адрес 0000:0600).
- MBR просматривает по очереди все и ищет первую запись об «активном» («загрузочном») разделе (то есть ищет раздел, отмеченный как 80h).
- В случае успеха (раздел, помеченный как 80h — найден) MBR запоминает номер этого раздела
- .
MBR просматривает все оставшиеся записи и проверяет, что это единственный активный раздел (что больше разделов, помеченных 80h, на данном физическом диске не существует). Если находятся другие разделы, помеченные 80h (и/или хотя бы один раздел содержит неправильную метку), то MBR выводит сообщение об ошибке (обычно это что-то типа «Invalid partition table»), после чего система зависает в бесконечном цикле, из которого можно выйти только перезагрузкой компьютера.
На этом заканчивается проверка MBR и начинается подготовка к загрузке ОС:
- MBR считывает первый сектор логического диска (VBR — Volume Boot Record, или Volume Boot Sector), помеченного как «загрузочный» (80h), и помещает этот сектор по физическому адресу 0x7C00.
- MBR проверяет, что данный сектор заканчивается сигнатурой 55AAh
- .
MBR передаёт управление загрузочному сектору выбранного раздела диска.
Загрузочный сектор логического диска (VBR) (после MBR)
Загрузочный сектор зависит от типа файловой системы на логическом разделе диска и содержит код, выполняющий нахождение и загрузку собственно операционной системы на данном типе файловой системы.
Стандартизация MBR
Утверждённого стандарта на структуру MBR не существует, однако, есть «сложившиеся традиции», которых придерживается большинство MBR от разных производителей.
Иные форматы MBR
Загрузчики, отличные от стандартных Windows-загрузчиков, могут использовать всё пространство между MBR и первым разделом (около 32 кБ; 1-й-63-й секторы) для собственных целей. В таких случаях под MBR понимают весь загрузочный код, а для выделения именно первых 512 байт говорят, что они расположены в MBS (Master Boot Sector) — главном загрузочном секторе.
Для операционных систем Microsoft понятия MBR и MBS совпадают, так как вся MBR содержится в MBS, хотя это не совсем правильно, так как под MBR подразумевают данные, а под MBS — физический сектор.
BIOS (до MBR)
- BIOS проводит начальную инициализацию оборудования (POST).
- BIOS определяет, с какого устройства производить дальнейшую загрузку: дискета, флеш-накопитель, жёсткий диск и т. д. (выбор устройства зависит от версии и от настроек BIOS)
- .
- BIOS считывает один сектор (512 байт), то есть непосредственно MBR, который находится по адресу: «цилиндр 0, головка 0, сектор 1», и помещает его в область памяти по физическому адресу 0x7C00.
- BIOS проверяет, что этот сектор оканчивается сигнатурой 0АА55h (байты 55h,0AAh).
- .
BIOS передаёт управление по физическому адресу 0x7C00 (то есть сектору MBR), предварительно записав в регистр DL номер диска, с которого этот сектор считан. Для первого жёсткого диска это значение будет равно 80h (128 в десятичной системе), для дисковода A: равно 0. Кроме того, Plug-n-Play BIOS может записать в регистры ES:DI указатель на структуру «$PnP».
MBR
Выбор загрузочного раздела и проверка целостности MBR:
- MBR копирует себя на другой адрес, чтобы освободить место для загрузчика ОС (к примеру, MBR фирмы Microsoft копирует себя на адрес 0000:0600).
- MBR просматривает по очереди все и ищет первую запись об «активном» («загрузочном») разделе (то есть ищет раздел, отмеченный как 80h).
- В случае успеха (раздел, помеченный как 80h — найден) MBR запоминает номер этого раздела
- .
MBR просматривает все оставшиеся записи и проверяет, что это единственный активный раздел (что больше разделов, помеченных 80h, на данном физическом диске не существует). Если находятся другие разделы, помеченные 80h (и/или хотя бы один раздел содержит неправильную метку), то MBR выводит сообщение об ошибке (обычно это что-то типа «Invalid partition table»), после чего система зависает в бесконечном цикле, из которого можно выйти только перезагрузкой компьютера.
На этом заканчивается проверка MBR и начинается подготовка к загрузке ОС:
- MBR считывает первый сектор логического диска (VBR — Volume Boot Record, или Volume Boot Sector), помеченного как «загрузочный» (80h), и помещает этот сектор по физическому адресу 0x7C00.
- MBR проверяет, что данный сектор заканчивается сигнатурой 55AAh
- .
MBR передаёт управление загрузочному сектору выбранного раздела диска.
Загрузочный сектор логического диска (VBR) (после MBR)
Загрузочный сектор зависит от типа файловой системы на логическом разделе диска и содержит код, выполняющий нахождение и загрузку собственно операционной системы на данном типе файловой системы.
Что такое MBR на жестком диске
Главная загрузочная запись (Master Boot Record, MBR) — представляет собой код и набор данных, необходимый для последующей загрузки операционной системы. Применялась с 1983 года вплоть до введения в эксплуатацию UEFI схемы GPT в 2010-м году.
Как вы помните, ранее в ходу были компьютеры с операционной системой, которая поддерживала только 32-битный формат. При запуске этих машин, первым в работу вступает BIOS (MBR использует версию Legacy) и далее происходит выбор устройства, с которого будет произведен последующий запуск. Это может быть дискета, жесткий диск или любой указанный в настройках сетевой ресурс. В случае же, если в компьютере установлен только один раздел, выбор будет однозначен и загрузка произойдет только с единственного уникального устройства.
Master Boot Record работает с дисками размером до 2 Тб и не поддерживает носители, превышающие этот порог. Кроме того, MBR поддерживает только до 4 основных разделов. Если вам нужно больше, придется один из основных блоков сделать расширенным. Это приведет к потере одного из разделов, который сольется с основным, выбранным вами.
Legacy BIOS, с которым работает MBR, характеризуется следующими особенностями:
- Драйверы загружаются при старте операционной системы после загрузки самого BIOS.
- Все подключенные устройства запускаются в порядке очереди.
- Может быть создано только 4 логических раздела размером до 2 Тб.
В 2020 году Master Boot Record морально устарел и не подходит для использования на современных компьютерах. Почти все они используют GPT.
Способ #1: Как проверить стандарт разделов в управлении дисками Windows
Самый лёгкий вариант, доступный даже начинающему пользователю, предполагает применение «вшитой» утилиты Disk Management Tool. Её можно найти в любой версии «майкрософтовской» ОС, а чтобы вызвать окошко программы, просто следуйте инструкции:
- Если вы пользуетесь «Семёркой», щёлкните, не открывая соответствующего меню, правой клавишей мыши по значку «Компьютер». Как только появится меню, — пункты в нём могут несущественно различаться, — кликните по заголовку «Управление». Теперь достаточно перейти к вышеназванной утилите — в русской версии она носит название «Управление дисками». Теперь узнать тип диска MBR или GPT будет совсем несложно.
- Не хотите или по какой-либо причине не можете использовать этот способ? Попробуйте другой! Зажмите Windows — клавишу, в большинстве случаев располагающуюся в нижнем сегменте клавиатуры слева. Теперь, не отпуская первой, воспользуйтесь второй кнопкой — X. Когда комбинация будет применена, вы увидите похожий перечень опций — чтобы продолжить работу, просто выберите в нём пункт «Управление дисками». Попробуйте первый или второй способ — один из них обязательно окажется действенным.
- В появившемся на мониторе списке отметьте накопитель, о котором желали бы получить больше информации. Снова воспользовавшись правой клавишей, выберите опцию «Свойства/Properties» — скорее всего, заголовок будет расположен внизу списка.
Получилось? Отлично, но пока недостаточно
Чтобы продолжить работу, обратите внимание на верхний ряд следующего окошка. Здесь расположены заголовки вкладок
Выберите тот, что имеет название «Тома/Volumes». Нужная вам информация будет содержаться в этом поле, в строке «Стиль раздела/Partition Style». Теперь вы знаете, как посмотреть MBR или GPT. Узнать диск, как оказалось, достаточно просто. Единственный недостаток процесса — невозможность скопировать сведения в «Блокнот».
Как можно видеть на приведённом примере, наименование разметки всегда указывается латиницей, в то время как пояснение к аббревиатуре — на языке интерфейса. Вы не запутаетесь в терминах, какой бы ОС ни пользовались, и всегда сможете однозначно установить, какой именно способ используется на вашей машине.
Структура MBR
Смещение | Длина, байт | Описание | |
---|---|---|---|
0000h | 446 | Код загрузчика | |
01BEh | 16 | Раздел 1 | Таблица разделов |
01CEh | 16 | Раздел 2 | |
01DEh | 16 | Раздел 3 | |
01EEh | 16 | Раздел 4 | |
01FEh | 2 | Сигнатура (55h AAh) |
Код загрузчика
После завершения процедуры POST в ОЗУ по физическому адресу 0x7C00 записывается код загрузчика (первые 446 байт из нулевого сектора диска), после чего ему передаётся управление. Задача этого кода — проанализировать таблицу разделов жёсткого диска, затем передать управление второму загрузочному коду, который может находиться или в начале активного раздела, или на специальной области диска (эта область не занята файловыми системами, и обычно является группой секторов №1–№63, разделы на диске обычно начинаются с сектора №64). Второй загрузчик уже умеет читать хотя бы одну файловую систему, и его задача — передать управление файлам из файловой системы ОС для запуска ОС.
Примеры:
Загрузчик Windows поступает первым способом: он передает управление второму загрузчику, который находится в начале активного Windows раздела. Далее второй загрузчик обеспечивает поддержку файловой системы и запускает необходимые файлы для дальнейшей загрузки ОС.
Загрузчик GRUB (нашедший популярность в Linux дистрибутивах) использует второй способ: он передает управление второму загрузчику, который расположен в группе секторов №1-№63. Второй загрузчик ищет корневой linux раздел, а на этом разделе ищет файлы конфигурации GRUB (и модули GRUB) для отображения GRUB меню. При выборе какого-либо пункта в GRUB меню, GRUB действует согласно файлу конфигурации для этого пункта (например, в случае с дистрибутивами linux в ОЗУ копируется linux ядро с initrd, и управление передается ядру). Копия первого загрузчика GRUB (446 байт из нулевого сектора диска) находится в файле boot.img, а копия второго загрузчика GRUB (группа секторов №1 — №63) находится в файле core.img (собирается при установке GRUB с учетом файловой системы корневого раздела и других факторов)
Сигнатура
Последние два байта MBR называются сигнатурой. Значение этих байтов должно быть 55h AAh. В случае, если это не так, запись считается некорректной.