Как определить защищенный режим в загрузочной записи тома (загрузочный сектор раздела)? - PullRequest
1 голос
/ 30 января 2020

Я отлаживаю необычное загрузочное устройство в режиме MBR (без EFI) на x86 P C.
IPL в MBR -> exoti c BootManager* -> Partiton Boot Sector -> экспериментальный OS

Я написал примитивный 512-байтовый загрузочный сектор раздела (PBR) в 16-битной реальной сборке x86, в которой для отображения используются сервисы int 10h B IOS 16-битные регистры, которые передаются ему. Он хорошо работает для отладки.

Я хотел бы улучшить свой отладочный PBR, чтобы он также отображал информацию о режиме ЦП, т.е. о том, переключил ли BootManager ЦП в защищенный режим (32-разрядный или 64-разрядный). Мне нужна эта информация для целей отладки.

Как надежно определить Protected Mode (и его тип) в этом сценарии?

  • BootManger расположен в секторах между MBR и 1-м разделом и перехватывает / эмулирует B / 1028 * службы / прерывания - я видел, что он указывает int 13h вектор к себе в отладчике
...