Когда компьютер включен: как он узнает, с какой инструкции ему нужно начать выполнение? - PullRequest
5 голосов
/ 05 февраля 2010

Когда компьютер включен: как он узнает, с какой инструкции ему нужно начать выполнение?

Сначала это программа BIOS, которую нужно выполнить.Итак, что именно там происходит?Я хочу знать процесс до загрузки ОС.

Ответы [ 4 ]

3 голосов
/ 05 февраля 2010

Это очень зависит от процессора, как и следовало ожидать.

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

Обычно первая выполняемая инструкция - это переход к программному обеспечению начального загрузчика, который затем подготавливает аппаратное обеспечение и загружает следующий программный этап. Повторите этот процесс установки / загрузки столько раз, сколько вы хотите, и до этого - вы в ОС!

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

Если вы уточните свой вопрос немного подробнее, мы могли бы заполнить некоторые подробности о конкретном процессе системы, которая вас интересует.

2 голосов
/ 05 февраля 2010

Я думаю, В статье Википедии о загрузке есть больше деталей, чем вы могли бы хотеть.

0 голосов
/ 05 февраля 2010

Два самых популярных варианта

  • начиная с фиксированного адреса (часто 0)

  • начиная с адреса, который хранится в фиксированном месте (вектор сброса)

Зависит от конкретного процессора.

0 голосов
/ 05 февраля 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...