POST (Power-On Self-Test)¶
POST (Power-On Self-Test) — это последовательность диагностических процедур, выполняемых аппаратным обеспечением компьютера или другого электронного устройства сразу после подачи питания и до загрузки операционной системы. Основная цель POST — проверка работоспособности критически важных компонентов системы (процессора, оперативной памяти, контроллеров, видеоподсистемы, накопителей) и выявление аппаратных неисправностей, препятствующих нормальному запуску.
¶История
Процедура POST возникла вместе с первыми персональными компьютерами. В 1981 году IBM включила базовую систему ввода-вывода (BIOS) в IBM PC/XT, где POST выполнялась микропрограммой, записанной в ПЗУ. В ранних версиях тест был примитивным: проверялся только центральный процессор, контроллер прерываний и минимальный объём памяти. С развитием архитектуры x86 и усложнением аппаратуры POST становилась всё более детальной.
В 1990-х годах, с появлением стандарта Plug and Play, POST начал включать инициализацию периферийных устройств и распределение ресурсов (IRQ, DMA, адреса ввода-вывода). В 2000-х годах, с переходом от BIOS к UEFI (Unified Extensible Firmware Interface), процедура POST была модернизирована: UEFI-прошивки выполняют более быстрый и гибкий тест, поддерживая проверку больших объёмов памяти и сложных периферийных интерфейсов (NVMe, USB 3.x, Thunderbolt).
¶Процесс выполнения
POST запускается автоматически при включении питания или после аппаратного сброса (reset). Последовательность действий заложена в прошивке BIOS или UEFI и обычно включает следующие этапы:
- Инициализация процессора — проверка регистров, кэш-памяти, системной шины. Если процессор не отвечает, POST останавливается.
- Проверка контрольной суммы BIOS/UEFI — целостность микрокода; при ошибке система может не загрузиться.
- Тестирование оперативной памяти — запись и чтение тестовых паттернов (обычно проверяется первый мегабайт, а затем — весь объём). В современных UEFI возможен быстрый тест или полный (Extended Memory Test).
- Инициализация чипсета и системной логики — настройка контроллеров памяти, шин PCIe, SATA, USB.
- Обнаружение и тестирование видеокарты — инициализация VGA-совместимого режима; если видеокарта неисправна, система может выдать звуковой сигнал.
- Проверка контроллеров накопителей — определение подключённых дисков (SATA, NVMe, IDE) и их базовых параметров.
- Инициализация периферийных устройств — клавиатура, мышь, USB-контроллеры, сетевые карты.
- Запуск загрузчика — передача управления операционной системе (INT 19h в BIOS, Boot Manager в UEFI).
Если на каком-либо этапе обнаружена критическая ошибка, POST прерывается, и система выводит сообщение об ошибке (на экран или через звуковые сигналы) либо переходит в состояние «зависания» (halt).
¶Способы индикации ошибок
При обнаружении неисправности POST использует несколько способов оповещения:
- Звуковые сигналы (beep codes) — последовательность коротких и длинных гудков, воспроизводимых через динамик материнской платы. Код зависит от производителя BIOS (Award, AMI, Phoenix). Например, один длинный и два коротких сигнала у AMI указывают на ошибку видеокарты.
- Светодиодные индикаторы — на материнских платах и некоторых устройствах (например, на серверах) устанавливаются светодиоды, сигнализирующие о прохождении этапов POST (CPU, DRAM, VGA, Boot).
- POST-карты (POST code display) — специализированные платы расширения или встроенные семисегментные индикаторы, показывающие шестнадцатеричный код текущей операции. По коду можно определить точный этап сбоя.
- Вывод на экран — в современных UEFI ошибки могут отображаться текстовыми сообщениями (например, «No bootable device found» или «Memory error at address 0x1234»).
¶Типы тестов
POST может выполняться в разных режимах в зависимости от настроек BIOS/UEFI:
- Быстрый POST (Quick Boot) — сокращённая проверка, при которой тестируется только минимально необходимый объём памяти и пропускаются некоторые этапы инициализации. Используется для ускорения загрузки.
- Полный POST (Full Test) — выполняется при первом включении после сброса настроек или при обнаружении изменений в конфигурации (например, установка новой планки памяти). Включает полный цикл проверки оперативной памяти и всех устройств.
- POST при ошибке — если система не загрузилась ранее, при следующем включении может выполняться расширенный тест.
¶POST в различных устройствах
Хотя термин чаще всего ассоциируется с персональными компьютерами, процедура POST применяется и в других электронных устройствах:
- Серверы — имеют более сложный POST, включающий проверку RAID-контроллеров, сетевых интерфейсов, резервных источников питания. Часто оснащаются удалённым управлением (IPMI), позволяющим видеть POST-коды через сеть.
- Ноутбуки — выполняют POST с учётом встроенных компонентов (веб-камера, тачпад, аккумулятор). Встроенные диагностические утилиты (например, ePSA у Dell) могут запускаться отдельно от POST.
- Встраиваемые системы — промышленные контроллеры, одноплатные компьютеры (Raspberry Pi, Arduino) имеют упрощённый POST, часто без звуковой индикации.
- Смартфоны и планшеты — используют аналогичную процедуру при включении, но без вывода на экран; ошибки могут отображаться через вибрацию или мигание светодиода.
¶Критика и ограничения
POST не является всеобъемлющей диагностикой. Основные недостатки:
- Ограниченная глубина тестирования — проверяется только базовая функциональность (например, память тестируется простыми паттернами, не выявляющими все возможные ошибки). Для полной диагностики требуется специализированное ПО (MemTest86, Prime95).
- Зависимость от прошивки — ошибки в микрокоде BIOS/UEFI могут приводить к ложным срабатываниям или пропуску реальных неисправностей.
- Отсутствие стандартизации — коды ошибок и звуковые сигналы различаются между производителями, что усложняет диагностику для пользователя.
- Время выполнения — полный POST на системах с большим объёмом памяти (64 ГБ и более) может занимать несколько минут, что замедляет загрузку.
¶Интересные факты
- В ранних компьютерах IBM PC/XT при ошибке POST система могла выдать сообщение «ROM BASIC» на экране, после чего запускался встроенный интерпретатор BASIC (если он был в ПЗУ).
- Некоторые материнские платы (например, ASUS ROG) имеют встроенный OLED-дисплей, отображающий POST-коды в реальном времени.
- В UEFI-системах POST может быть полностью отключён в настройках (Fast Boot), что сокращает время загрузки до 1–2 секунд, но лишает пользователя возможности увидеть ошибки инициализации.
¶Источники
- IBM PC/XT Technical Reference Manual (1981)
- Intel Platform Innovation Framework for EFI Specification (2005)
- American Megatrends (AMI) BIOS POST Codes Reference
- Award BIOS Beep Codes Documentation
- UEFI Forum Specification 2.10 (2023)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


