Почему BIOS включает защищенный режим?

Я проводил лабораторные работы по mit6.828, и мне очень любопытно, почему BIOS включает защищенный режим, а затем отключает его (поскольку загрузчик должен запускаться в реальном режиме)?

1 ответ

Большинство современных BIOS основаны на UEFI. А UEFI BIOS довольно велик на современных платформах — это сложные части аппаратного обеспечения, требующие большого количества инициализации (даже самая базовая настройка процессора и памяти нетривиальна). Следовательно, код вышел за пределы того, что может (легко) обрабатывать реальный режим.

Когда платформа затем настроена на использование CSM и запускается в устаревшем режиме BIOS, у нее нет другого выбора, кроме как переключиться в реальный режим перед передачей управления любому устаревшему дополнительному ПЗУ (но обратите внимание, что ЦП остается в так называемом «большом» реальном режиме, согласно спецификации PCI для дополнительных дисков) или устаревший загрузчик.

Если вы остаетесь в режиме загрузки UEFI — нет необходимости в таком переключении, как загрузка, если она выполняется еще одним бинарником UEFI.

Другие вопросы по тегам