2

Я учусь разрабатывать вашу собственную операционную систему. Я знаю, что происходит после загрузки загрузчика, так как я все равно пишу это сам. Однако, какие операции происходят между нажатием выключателя питания и загрузкой загрузчика, не очень понятно.

Я знаю, что на высоком уровне, это то, что происходит:

  • Питание подается на блок питания
  • Проверяется, нет ли проблем с питанием (POST)
  • BIOS загружен
  • BIOS выполняет некоторые проверки
  • BIOS загружает загрузчик

Итак, вот мои вопросы:

  • Я где-то читал о том, что сигнал RESET постоянно посылается процессору, когда он не включен. Когда питание подается, этот сигнал останавливается? Это правда ? Если да, то кто подает этот сигнал и выполняется ли проверка правильности подачи питания до или после прекращения сигнала? Если нет, то что происходит при нажатии кнопки питания?
  • Вкратце, какие операции выполняются в POST? Некоторые источники упоминают, что POST выполняется аппаратно, а некоторые говорят BIOS. Это верно ?
  • Какие проверки выполняются BIOS? Они включают только проверку, все ли устройства настроены правильно?
  • Я также читал кое-что о проверке / чтении с CMOS-чипа. Что это за операция и выполняется ли она в BIOS?

PS: Если этот вопрос не подходит для этого сайта, пожалуйста, закройте его и укажите правильный сайт. И если бы кто-то мог добавить другие подходящие теги, это было бы полезно.

1 ответ1

4

Это скорее зависит от компьютера: BIOS (с таким названием) является относительно новым, и "BIOS загружен" обычно не соответствует действительности, "BIOS уже присутствует" в ПЗУ или флэш-память будет ближе к отметке в системах с BIOS ,

Чтобы ответить на вопросы по порядку:

1) RESET не «постоянно отправляется, когда не включен», кроме RESET, часто активный активный сигнал низкого уровня (то есть 0 В), и это единственное напряжение, присутствующее без питания. Обычно RESET удерживается на низком уровне после подачи питания, и ему разрешается становиться неактивным только после того, как питание стабилизируется достаточно долго.

Более новые настольные ПК могут иметь разную компоновку, потому что у них есть резервный источник питания, который может выполнять такие действия, как питание клавиатуры, Ethernet и т.д., "Пробуждаться по требованию", но это не имеет ничего общего с необработанным включением питания.

2) Обычно нет отдельного теста на источник питания; кроме «напряжение питания> минимум, необходимый для работы ПК» - этот тест позволяет RESET стать неактивным и запустить ЦП.

В некоторых системах RESET сохраняется до тех пор, пока человек, управляющий компьютером, не очистит его, установив переключатель. Это позволяет им загружать BIOS или другую программу запуска с бумажной ленты, переключателей, колоды карт и т. Д .; не очень распространено в наши дни!

3) ЦПУ начинает извлекать и выполнять инструкции по определенному адресу: для процессоров ARM Cortex адрес 0: для других ЦП, возможно, другие адреса; Точный адрес публикуется в базе данных процессора.

Если BIOS или какая-либо другая программа (цифровые часы, контроллер стиральной машины и т.д.) Еще не существует, процессор зависает и ничего не происходит.

4) BIOS выполняет самопроверку. Проверки могут включать измерение напряжения блока питания, тестирование объема памяти, работает ли память и т. Д .; какие есть периферийные устройства; есть ли жесткий диск? - это открытый список. Если в системе установлен чип CMOS, он, вероятно, включает часы с питанием от батареи, поэтому BIOS устанавливает системное время и может включать список настроек (например, на каком диске находится загрузчик).

Предполагая, что есть жесткий диск с загрузчиком на нем, и тесты пройдены, ТОГДА для BIOS нормально загружать и запускать загрузчик, и ваша собственная ОС работает и работает ...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .