■ Поддержка функций ввода/вывода с помощью программных прерываний BIOS. В составе системной BIOS есть встроенные функции для работы с клавиатурой, видеоадаптером, дисководами, жесткими дисками, портами ввода/вывода и др. Эти функции широко используются в операционных системах, подобных MS-DOS, и практически не применяются в современных версиях Windows.

Микросхемы BIOS и их расположение

В первых персональных компьютерах код BIOS записывался в микросхему постоянной памяти ПЗУ, или ROM (Read-Only Memory), которая создавалась на заводе. Во всех современных компьютерах BIOS хранится в микросхеме на основе flash-памяти (Flash Memory), которая является одной из разновидностей памяти EEPROM (Electrically Erasable Programmable Read-Only Memory). Такая микросхема может быть перезаписана с помощью специальных программ прямо на компьютере. Запись новой версии BIOS обычно называется «перепрошивкой». Эта операция может понадобиться, чтобы добавить в код BIOS новые функции, исправить ошибки или заменить поврежденные версии.

В большинстве случаев flash-память устанавливается на панель системной платы (рис. 2.1), что позволяет при необходимости микросхему заменить, но в некоторых случаях она распаяна прямо на «материнке».

В старых компьютерах встречались микросхемы BIOS различных типов и форм, но чаще они помещались в прямоугольный корпус DIP32 (см. рис. 2.1, вверху); практически во всех современных системных платах используются микросхемы BIOS в квадратном корпусе (см. рис. 2.1, внизу). Обычно на них есть наклейка с обозначением версии BIOS, а если ее нет – маркировка чипа flash-памяти.

Рис. 2.1. Примеры установки микросхемы BIOS на панель системной платы


BIOS использует параметры конфигурации, которые хранятся в специальной CMOS-памяти. Свое название она получила по технологии изготовления чипов, где применялся комплементарный металлооксидный полупроводник (Complementary Metal Oxide Semiconductor). CMOS-память питается от специальной батарейки на системной плате, которая также используется для питания часов реального времени.

Процедура POST

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

POST решает несколько основных задач.

1. Инициализирует и настраивает основные системные компоненты: процессор, чипсет, оперативную память и видеоадаптер.

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

3. Тестирует процессор и оперативную память. Результаты обычно выводятся на экран (рис. 2.2).

4. Инициализирует и настраивает периферийные устройства: клавиатуру, мышь, дисководы, жесткие диски и др. Сведения об обнаруженных накопителях обычно выводятся на экран (см. рис. 2.2).

Рис. 2.2. Сообщения процедуры POST


5. Распределяет ресурсы между устройствами и выводит таблицу с обнаруженными устройствами и назначенными для них ресурсами (рис. 2.3).

6. Ищет и инициализирует устройства с собственной BIOS.

7. Вызывает загрузчик операционной системы.

Рис. 2.3. Итоговая таблица процедуры POST


После того как успешно завершилась процедура POST, запускается поиск загрузочного сектора, который может находиться на жестком диске или сменном носителе. Порядок опроса устройств устанавливается с помощью параметров BIOS First Boot Device, Second Boot Device, Third Boot Device