Как показывает практика, иногда в процессе самотестирования компьютерной системы может возникнуть ошибка, которую не удается локализовать с помощью звуковых сигналов. Для анализа такой ситуации используется POST-плата.
POST-плата – специальная плата расширения для шины PCI (или реже для шины ISA), имеющая специальный цифровой индикатор (например, жидкокристаллический или, чаще, люминесцентно-вакуумный).
Специально для целей индикации результатов самотестирования в пространстве портов выделен специальный порт. Шестнадцатеричный адрес этого порта – 80. Перед тем как проинициализировать то или иное устройство, присутствующее в системе, в этот порт обязательно помещается некоторый код, с помощью которого можно точно определить, что именно инициализируется в данный момент.
Если инициализация одного устройства завершилась успешно, то система перейдет к определению следующего. При этом в 80-й порт будет записан следующий код.
POST-плата считывает коды, которые записывались при инициализации устройств в 80-й порт, и отображает их на своем индикаторе. Соответственно, если работа системы была прервана, можно увидеть код, записанный в 80-й порт последним. По нему можно определить, на какой операции произошел сбой, а также какое устройство не удалось проинициализировать. Например, если на индикаторе последним высветилось значение 04, то это (при использовании системы с Award BIOS) означает, что в системе неправильно формируются сигналы регенерации оперативной памяти.
Значения кодов POST могут различаться для различных производителей BIOS и материнских плат, однако большинство из них одинаковы. В табл. 3.1 приведены коды процедуры POST, которые обычно встречаются в системах на основе Award BIOS.
Применение POST-плат в некоторых случаях может оказать неоценимую помощь в процессе диагностики неработающей или неверно работающей системы.
Однако для применения подобной диагностики необходимо как минимум установить POST-плату в соответствующий слот (PCI или ISA), если, конечно, это не было сделано при сборке системного блока, что встречается достаточно редко.
Некоторые производители материнских плат, чтобы облегчить процедуру диагностики неисправностей, помещают индикаторы кодов POST прямо на поверхность материнской платы. Иногда также на материнской плате помещают выводы индикатора кодов POST, а сам индикатор при этом поставляется в комплекте. В этом случае он может быть выведен в любое место корпуса компьютера.
Такие решения существенно облегчают поиск неисправностей. Однако, к сожалению, они пока еще встречаются достаточно редко и до сих пор не вошли в повсеместное употребление.
Что же происходит после завершения самотестирования компьютерной системы и определения параметров всех установленных устройств?
До этого момента поведением системы управляет встроенная программа BIOS. На данном этапе управление передается в главную загрузочную запись жесткого диска.
В этой области должен быть расположен небольшой код загрузчика, назначение которого состоит только в том, чтобы передать управление в загрузочную запись нужного логического раздела на жестком диске, в которой должен быть размещен загрузчик операционной системы.
Загрузчик операционной системы – это программа, которая считывает в оперативную память ядро операционной системы и запускает программы, инициализирующие ее и передающие ей управление. После этого контроль над компьютерной системой получает операционная система (ОС), под управлением которой совершается вся дальнейшая работа на компьютере.
Однако в главной загрузочной записи жесткого диска можно расположить и более гибкую программу, например, позволяющую вывести на экран меню выбора загрузки нужной операционной системы, если на компьютере установлено несколько ОС.