Книга BIOS. Экспресс-курс онлайн - страница 4



Физическое расположение BIOS

Физически BIOS – это набор микросхем постоянной памяти. Загляните под крышку системного блока, и вы увидите большую микросхему (28 или 32 контакта) на панельке с голографической наклейкой и надписью-логотипом, означающим производителя BIOS (например, Phoenix). Рядом, как правило, находится круглый («таблеточный») аккумулятор. На рисунке 1.1 наглядно показано, как может выглядеть эта микросхема.

Рис. 1.1. Физически BIOS – это всего лишь микросхема постоянной памяти


Поначалу BIOS записывалась в микросхемы ПЗУ путем пережигания перемычек. Изменение содержимого таких микросхем было невозможно. Затем появились микросхемы с возможностью стирания содержимого при помощи ультрафиолетового излучения, например, кварцевой лампы. Но они имели недостаток: для перезаписи необходимо было наличие специального устройства – программатора. Затем наступила эра микросхем, позволяющих стереть их содержимое при помощи электрического сигнала. Появившаяся технология FLASH позволяет перезаписывать содержимое микросхемы при помощи обычных программ, что в свое время довольно быстро утвердило ее позиции на рынке микросхем BIOS.

Сегодня уже редко можно встретить устройство, программное обеспечение которого записано не в микросхему FLASH-памяти.

Микросхему FLASH BIOS достаточно просто отличить от микросхем других типов. Отклейте голографическую наклейку и посмотрите на маркировку микросхемы. Если маркировка начинается не на цифру 28 или 29, то, скорее всего, это не FLASH-память. При наличии на микросхеме окошка можно точно утверждать, что это не FLASH.

Для сохранения информации после выключения питания в микросхеме CMOS-памяти используется никель-кадмиевый аккумулятор, который размещается в непосредственной близости от микросхемы CMOS (рис. 1.2). Во время работы компьютера он постоянно подзаряжается. Срок работы такого аккумулятора обычно составляет 10 лет. Как правило, за это время компьютер (в частности, материнская плата) морально устаревает, и необходимость замены питающего элемента теряет смысл. При некоторых технологиях производства микросхем CMOS элемент питания встраивается прямо внутрь микросхемы. В этом случае при разрядке аккумулятора она подлежит замене. На таких микросхемах обычно имеется надпись Dallas (т. к. чип производится по технологии Dallas Nov-RAM) или ODIN. Учитывая, что сейчас сложно найти уже устаревший чип со встроенной батарейкой, в большинстве случаев замене подлежит вся материнская плата.

Рис. 1.2. Секрет «энергонезависимой» CMOS памяти заключается в этом аккумуляторе


Порядок размещения микросхемы BIOS и аккумулятора не имеет принципиального значения, хотя иногда замена аккумулятора может оказаться воистину адским трудом (рис. 1.3).

Рис. 1.3. Иногда аккумулятор можно заменить только после отключения одной из плат расширения


Для быстрого восстановления содержимого BIOS после воздействия вирусов, а также после неудачного обновления версии, компания Gigabyte предложила технологию Dual BIOS. При этом на материнской плате устанавливается две микросхемы FLASH BIOS, содержимое только одной из них может быть изменено программными средствами. При нормальной работе используется только одна микросхема, а в аварийном случае (когда в контрольной сумме основной микросхемы найдена ошибка) для загрузки компьютера используется вторая микросхема. Первая микросхема называется Main BIOS, а вторая – Backup BIOS.

Встречается иной вариант, где первая микросхема называется Normal Flash ROM, а вторая – Rescue ROM. Технология называется Die-Hard BIOS. Ее впервые предложила компания АОреп.

Выбор микросхемы, из которой будет считываться программный код BIOS, обычно определяется при помощи специальных перемычек или DIP-переключателей.

Логическая структура BIOS

BIOS материнской платы, как и любое программное обеспечение, имеет определенную структуру. В общей сложности можно выделить два уровня подпрограмм.

Первый уровень представляет собой набор подпрограмм, необходимых для запуска устройства (инициализации), в процессе которого проверяются такие параметры, как: работа тактовых генераторов, уровни рабочих напряжений, температура и прочее. В результате определяется возможность работы инициализируемого устройства, после чего активизируется очередной уровень программного обеспечения. Это Boot Block.

 На первом этапе инициализации практически любое устройство, будь то материнская плата или контроллер SCSI, не проявляет "признаков жизни" (таких, как звуковые сигналы, моргание индикаторов и т. п.).

Второй уровень подпрограмм предоставляет сервисные услуги по диагностике, а иногда даже по устранению различных неполадок. На данном этапе осуществляется окончательная инициализация устройства и вывод результатов самодиагностики (звуковые сигналы на системном динамике, сообщения на экране монитора или, в частном случае, вывод определенных кодов на дисплей диагностического устройства). Это Main Block.

Те же программы осуществляют управление компонентами ПК в таких режимах, как Suspend или Sleep Mode, при работе в среде MS-DOS и т. д.

Еще выделяют области, где хранятся данные ESCD и т. п, но в них хранятся вовсе не программы, а некие значения, необходимые для работы компонентов ПК (рис. 1.4).

Рис. 1.4. Так выглядит общая структура BIOS

Глава 2
Процессы, происходящие при включении компьютера

Любой пользователь на этот вопрос ответит: «Компьютер тестирует память, находит подключенные жесткие диски и загружает операционную систему». Это верный ответ. Но отражает ли он действительную ситуацию? Процесс загрузки по своей структуре довольно сложен. Представлять последовательность событий иногда очень полезно, например, при диагностике неисправностей.

В первую очередь электроника блока питания проходит процесс самотестирования, а уже затем на внутренние компоненты компьютера подается напряжение питания. Это происходит менее чем 0,1–0,5 секунды. По окончании тестов на центральный процессор поступает сигнал RESET. Тот самый, который и вы можете вызвать нажатием кнопки RESET, расположенной на системном блоке. Блок питания, не прошедший самотестирования, не включается, и компьютер, естественно, не начнет свою работу. Делается это для уменьшения вероятности повреждения электроники, а в качестве управляющего сигнала используется специальный сигнал, именуемый как "Power Good" ("хорошее напряжение").

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

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

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

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

Разработчики х86-х платформ в свое время предусмотрительно встроили в базовую систему ввода-вывода (BIOS) различные процедуры диагностики неисправностей. Весь комплекс по инициализации компонентов ПК и их проверке носит обобщающее название POST (Power-On Self Test, что в вольном переводе обозначает "Самотестирование по Включению Питания").

Перед началом каждой операции POST генерирует специальный код, размером в один байт (от 00h до FFh), называемый POST-кодом, и записывает значение в диагностический порт с адресом 80h, который используется для этих целей еще со времен самого первого компьютера IBM PC. В случае возникновения неисправности процесс диагностики просто останавливается ("зависает"), а POST-код, заранее выведенный на указанный порт, однозначно определяет операцию, при которой возникла неполадка.

Единственный минус подобной системы – таблицы POST-кодов для BIOS разных производителей различны, а в связи с постоянным появлением новых устройств, что приводит к необходимости внесения изменений в соответствующие спецификации, даже у одного производителя для разных моделей устройств могут использоваться не одинаковые таблицы диагностических кодов. Это несколько путает пользователя и мешает достоверно судить об источнике неполадки. Ориентироваться в таком случае приходится на оригинальные разработки, например, компании AWARD (точнее Phoenix под упомянутой торговой маркой). Остается только надеяться, что производители будут упоминать о внесенных изменениях в руководствах по установке материнских плат. В главе 15 приведены POST-коды AVARD BIOS.

Мониторинг старта осуществляется с помощью специальных плат – контроллеров состояния порта 0080h. Так называемые POST-платы предназначены для захвата диагностических кодов и наглядного их отображения на цифровом индикаторе, что позволяет выполнять раннюю диагностику до запуска операционной системы (рис. 2.1).

Рис. 2.1. Внешний вид POST-платы


В некоторых компьютерных системах для диагностических целей используется порт с номером, отличным от 0080h. Так, в системных платах с архитектурой EISA для диагностических целей используется порт 0300h. В последнее время производители серьезнее стали относиться к идее всеобщей стандартизации, так что особых проблем вы не будете испытывать, ведь старые компьютеры встречаются все реже и реже.

Существуют три основных типа POST-плат:

• "натуральные" POST-платы, отображающие ту информацию, к которой им удается получить доступ. При помощи таких плат определяют узел, в котором произошел сбой (например, если это подсистема оперативной памяти, то следует поменять модуль памяти, используемый слот и т. п.);

• платы, способные эмулировать часть функций любого узла материнской платы (например, PHD PCI). Такие платы позволяют получить более подробную информацию о состоянии компонентов ПК, временно обойтись без видеоконтроллера, произвести полную проверку накопителей и т. д.;

• платы, требующие для своей работы установки вместо BIOS материнской платы, точнее вместо микросхемы, другой микросхемы, содержащей диагностические программы. Например, таким образом работает технология Lite BIOS. Индикация процесса диагностики, как правило, осуществляется на обычной POST-плате. Коды, естественно, будут характерные для применяемой технологии.



Помоги Ридли!
Мы вкладываем душу в Ридли. Спасибо, что вы с нами! Расскажите о нас друзьям, чтобы они могли присоединиться к нашей дружной семье книголюбов.
Зарегистрируйтесь, и вы сможете:
Получать персональные рекомендации книг
Создать собственную виртуальную библиотеку
Следить за тем, что читают Ваши друзья
Данное действие доступно только для зарегистрированных пользователей Регистрация Войти на сайт