Инициализация процессора
Коротко: Инициализация процессора — это первый шаг после включения питания: процессор приводит себя в определённое начальное состояние и начинает выполнять прошивку с фиксированного адреса.
Подробнее: Как только блок питания сообщает «power good», чипсет снимает сброс. Процессор запускается в простейшем режиме работы, 16-битном реальном режиме (x86), и выполняет первую команду по адресу вектора сброса (на x86 чуть ниже 4 ГиБ, 0xFFFFFFF0). Там находится переход в прошивку.
Подробности
- Сброс: регистры, флаги и кэши имеют определённые начальные значения, кэш и виртуальная память ещё выключены.
- Вектор сброса: прошивка (во флеш-чипе, отображённом через чипсет) выдаёт первую команду.
- Ранняя прошивка (SEC/PEI в UEFI): процессор готовится к работе: загружается микрокод, кэши используются как временная память («cache as RAM»), настраивается контроллер памяти.
- Настройка основной памяти: обучение DRAM — прошивка измеряет задержки и устанавливает тайминги. После этого есть пригодная для использования RAM.
- Запуск остальных ядер: первое ядро (BSP, bootstrap processor) будит остальные (AP, application processors) стартовым сигналом.
- Переключение режима: от 16-битного реального режима через 32-битный защищённый к 64-битному длинному режиму. UEFI делает это рано; при BIOS — только загрузчик.
- Передача управления: прошивка запускает драйверы, POST и затем загрузчик.
- Обновления микрокода процессора приходят через UEFI или операционную систему и устраняют ошибки и уязвимости.
- Безопасность: современные процессоры проверяют подписи прошивки сразу при запуске (Boot Guard, PSP, защищённый процессор).
- ARM: запускается в собственном загрузочном ROM, который загружает и проверяет следующую стадию.
См. также: Сигнал power-good, POST (power-on self-test), Процесс загрузки компьютера с Windows 11