В чем разница между первичным и вторичным загрузчиком?

В чем разница между первичным и вторичным загрузчиком?

В чем разница между первичным и вторичным загрузчиком? Первичный и вторичный относятся к двум частям загрузчика или двум этапам загрузчика? Я запутался.

решение1

Вы запутались, потому что это слишком упрощенный способ описания процесса. Если вы читали ту же статью IBM, что упомянута впервичные и вторичные загрузчики, который, по-видимому, является одним из мест, откуда люди почерпнули это первичное/вторичное понятие, обратите внимание, что оно принимает довольно узкий, только Linux, взгляд на мир (как ясно указано в первом предложении), что оно было написано в 2005 году, и что оно фактически проводит различие междуодинаковыйпрограмма загрузчика (GRUB) установлена ​​в двух разных местах на жестком диске (область MBR-вируса и раздел диска), а не между двумя разными программами загрузчика, одной «первичной» и одной «вторичной».

На самом деле, загрузка большинства операционных систем для ПК-совместимых машин и машин класса рабочих станций (согласно тегу в вопросе) являетсярядпрограмм-загрузчиков, каждая из которых загружает следующую. Первичное/вторичное различие ошибочно подразумевает, что есть только две программы, или (как в ответе Тейна) ошибочно подразумевает, что только две из нескольких программ в последовательности имеют особый статус «первичной» и «вторичной», или ошибочно подразумевает, что современные ПК обязательно вообще используют программы-загрузчики в MBR и VBR.

Три очень кратких примера таких цепочек, содержащих более двух программ:

  • Программа-загрузчик в прошивке старого компьютера PC98/PC-AT загружает программу-загрузчик в главную загрузочную запись, которая загружает программу-загрузчик в загрузочную запись тома, которая загружает часть базовой системы ввода-вывода PC-DOS/DR-DOS из файла, IBMBIO.COMкоторая загружает часть базовой дисковой операционной системы PC-DOS/DR-DOS из IBMDOS.COMфайла.
  • Программа-загрузчик в прошивке старого компьютера PC98/PC-AT загружает программу-загрузчик в главную загрузочную запись, которая загружает программу-загрузчик в загрузочную запись тома, которая загружает программу- OS2BOOTзагрузчик, которая загружает OS2LDRпрограмму-загрузчик, которая загружает OS2KRNLпрограмму.
  • Программа EFI Boot Manager в прошивке нового EFI-устройства загружает программу, bootmgfw.efiкоторая загружает winload.exeпрограмму, которая загружает ntoskrnl.exeпрограмму.

Нет никаких оснований для обозначения любого из них как более "первичного", чем другие. Действительно, нет никаких оснований для обозначения программ-загрузчиковвстроенная в прошивку машиныкак "первичный". Если посмотреть на TianoCore подробно, например, то можно обнаружить, что там даже есть ряд стадий загрузки, которые происходятв прошивкеи что есть даже концепция, известная какФайловая система прошивки(Однако оба эти вопроса выходят далеко за рамки данного ответа, как и процесс загрузки машин с архитектурой IBM MicroChannel, которые загружали данные с DASD даже до программы загрузчика MBR.)

Тот факт, что GRUB 1, как известно, имел «этап 1.5», сам по себе должен говорить о том, что идея о том, что последовательности начальной загрузки в мире PC Compatible состоят всего из двух этапов, а программы начальной загрузки четко делятся на «первичные» и «вторичные», не соответствует действительности, даже если игнорировать тот факт, что, очевидно, есть другая программа-загрузчик, которая изначально загружает «этап 1» GRUB.

дальнейшее чтение

решение2

Первичный загрузчик — это загрузчик, который находится на MBR. Вторичный загрузчик находится на одном из разделов и запускается первичным загрузчиком.

Например, в системе с двойной загрузкой Linux и Windows grub будет основным загрузчиком и загрузит вторичный загрузчик Windows, если выбрана Windows.

Связанный контент