Назначение и устройство базовой системы ввода/вывода (BIOS)

Предназначение базовой системы ввода/вывода это обслуживание компонентов компьютера, определение и установка взаимосвязи между этими компонентами, режимов их работ. Установка параметров BIOS – одна из самых серьезных проблем, возникающих при изменении конфигурации компьютера. Частые зависания, некорректная работа оборудования и прикладных программ – все это может быть следствием неправильно установленных параметров BIOS. Для обеспечения правильной работы ОС и прикладных программ с помощью специальной программы в BIOS вводятся параметры всех компонентов компьютера. Правильно настроив содержимое BIOS, можно увеличить производительность работы компьютера до 30%. Настройка параметров системы производителем обычно имеет минимальный или усредненный характер, обеспечивающей стабильную работу независимо от комплектации. При изменении конфигурации компьютера технология Plug and Play (вставь и работай) позволяет ограничиться минимальным вмешательством в процесс настройки, но она слишком часто дает сбои.

Основы BIOS

BIOS (от англ. Basic Input/Output System, базовая система ввода/вывода) – набор программ небольшого размера, в функции которых входят начальное тестирование оборудования и обеспечения взаимодействия компонентов компьютера. Кроме системной, существует еще BIOS адаптеров, которые загружаются при запуске системы. Например, видео-BIOS обеспечивает работу видеоплаты, начиная от ее тестирования в момент включения и заканчивая взаимодействием видеоплаты с процессором, BIOS SCSI-контроллера выполняет роль переводчика между интерфейсом и системной шиной и т.п. Итак, базовая система ввода/вывода – это комбинация всех типов BIOS, а также загружаемые драйвера. Часть BIOS содержащаяся в микросхеме на системной плате или платах адаптеров, называется firmware. Но наиболее важной в компьютере является системная BIOS, в функции, которой входят:
• тестирование компьютера при включении питания с помощью специальных тестовых программ;
• поиск и подключение к системе других BIOS, расположенных на платах расширения;
• распределение ресурсов между компонентами компьютера.
Связь между приложениями и ОС осуществляется с помощью соответствующего API (Application Programming Interface). Этот интерфейс определяет, например, как выполняется запись и считывание данных на диск, печать и др. функции. Поскольку приложение не зависит от установленного аппаратного обеспечения, то все его вызовы обрабатывает ОС, которая уже содержит информацию об установленном оборудовании. ОС в свою очередь через БИОС обращается непосредственно к аппаратному обеспечению. Эта связь реализована в виде драйверов. Содержимое BIOS доступно процессору без обращения к дискам, что позволяет компьютеру работать даже при повреждении дисковой системы. Содержащиеся в системной BIOS программы обеспечивают взаимодействие процессора, оперативной и кэш-памяти, микросхем чипсета с периферийными устройствами, а также друг с другом. Работа в ОС DOS производится с помощью прямого обращения к подпрограммам BIOS. Семейство ОС Windows имеет собственные функции контроля аппаратного обеспечения компьютера и при работе довольно редко использует BIOS.

Аппаратная и программная части

BIOS Как уже упоминалось, BIOS представляет собой интерфейс между аппаратным обеспечением и ОС. BIOS находится в микросхемах, установленных на системной плате или платах адаптеров, либо загружается с диска (драйверы). Системная BIOS содержит драйверы основных компонентов (клавиатуры, дисковода, жесткого диска, последовательного и параллельных портов и т.д.), необходимые для начального запуска компьютера. По мере появления новых устройств (видеоадаптеров, накопителей CD-ROM, жестких дисков с интерфейсом SCSI и т.д.) их процедуры инициализации не добавлялись в системную BIOS, т.к. острой необходимости в этом нет, и поэтому нужные драйверы загружаются с диска во время запуска ОС.
Однако, некоторые устройства необходимы при запуске компьютера. Например, для отображения информации на экране монитора требуется активизировать видеоадаптер, но его поддержка не встроена в системную BIOS. Кроме того, сейчас существует огромное количество видеоадаптеров, и все их драйверы невозможно поместить в системную BIOS. В таких случаях необходимые драйверы помещают в микросхему BIOS на плате этого устройства. А системная BIOS при загрузке ищет видеоадаптер и загружает ее до запуска ОС. Собственная BIOS, как правило, устанавливается на следующих платах:
• видеоадаптеры – всегда имеют собственную микросхему BIOS;
• SCSI-адаптеры – эта BIOS не поддерживает все SCSI-устройства, т.е. с диска необходимо загружать дополнительные драйверы для накопителей CD-ROM, сканеров, устройств Zip и прочих с интерфейсом SCSI;
• сетевые адаптеры – для начальной инициализации устройства, либо нормального функционирования в бездисковых рабочих станциях или терминалах;
• платы обновления IDE или дисковода – для поддержки функции загрузочного устройства при запуске системы;
• платы для решения проблемы Y2K – в них содержится корректная процедура перехода в новое тысячелетие.

 

Системная BIOS

Во всех системных платах есть микросхема, в которой записано ПО, называемое BIOS или ROM BIOS. Эта микросхема содержит стартовые программы и драйверы, необходимые для запуска системы и функционирования основного аппаратного обеспечения. В ней также находится процедура POST (самотестирование при включении питания) и данные системной конфигурации. Все эти параметры записаны в CMOS-память, которая питается от батарейки, установленной на системной плате. Эту CMOS-память часто называют NVRAM (Non-Volatile RAM).
Таким образом, BIOS представляет собой комплект программ, хранящихся в одной или нескольких микросхемах. Эти программы выполняются при запуске компьютера до загрузки ОС. BIOS в большинстве PC-совместимых компьютеров выполняет четыре основные функции:
• POST – самотестирование при включении питания процессора, памяти, набора микросхем системной логики, видеоадаптера, контроллеров диска, дисковода, клавиатуры и других жизненно важных компонентов системы.
• Программа установки параметров BIOS (Setup BIOS) – конфигурирование параметров системы.
• Начальный загрузчик системы – выполнение поиска главного загрузочного сектора на дисковых устройствах. Если последних два байта этого сектора (его сигнатура) равны 55AAh, данный код выполняется.
• BIOS – набор драйверов, предназначенных для взаимодействия ОС и аппаратного обеспечения при загрузки системы. При запуске DOS или Windows в режиме защиты от сбоев используются драйверы устройств из BIOS.

Микросхемы ROM

Тип памяти, которая может хранить данные даже при отключении питания компьютера. Таким образом, для хранения стартовых процедур (и BIOS) наиболее подходит память ROM. Часть адресного пространства ОЗУ отводится для ROM. Это необходимо для хранения ПО, которое позволяет загрузить ОС.
При включение ПК счетчик команд автоматически принимает значение (адрес) FFFF0h; команды, размещенные по этому адресу, должны обеспечить загрузку ОС. Этим командам отводится ровно 16 байт от конца первого мегабайта ОЗУ и от конца ROM.
Обычно первым адресом ROM системы является F0000h, расположенной за 64 или 128 Кбайт от конца первого мегабайта. Емкость современных микросхем ROM может достигать 256 или 512 Кбайт. Такой увеличенный объем позволяет располагать драйверы интегрированных на системной плате устройств. Согласно команде перехода JMP, расположенной за 16 байт от конца ROM, процессор переходит к фактическому началу программы. Подобное соглашение позволяет свободно изменять объем ROM.
Основной код BIOS содержится в микросхеме ROM на системной плате, но на платах адаптеров также имеются аналогичные микросхемы. Они содержат вспомогательные подпрограммы базовой системы ввода-вывода и драйверы, необходимые для конкретной платы, особенно для тех плат, которые должны быть активизированы на раннем этапе начальной загрузки. Микросхема ROM на этих платах содержит драйверы и программы запуска, которые будут выполнены при начальной загрузке. При загрузке программа, хранящаяся в ROM системной платы, сканирует специальную область адаптера ROM ОЗУ (адреса C0000-DFFFFh) в поисках пары байтов сигнатуры (55AAh), которая указывает на начало ROM. BIOS системной платы автоматически выполняет программы в ROM любого адаптера, который она находит в процессе сканирования.

Затенение ROM

Микросхемы ROM очень «медленны»: время доступа равно 150 нс при времени доступа ЗУ DRAM 60 нс или меньше. Поэтому во многих системах ROM затеняется, т.е. ее содержимое копируется в микросхемы динамического ОЗУ при запуске.
Затенение эффективно главным образом в 16-разрядных ОС типа DOS или Windows 3.x. Если компьютер работает под управлением 32-разрядной ОС типа Windows 9x или Windows NT/2000, то затенение фактически бесполезно, потому что эти ОС не используют 16-разрядный код из ROM. Вместо него они загружают 32-разрядные драйвера в ОЗУ, заменяя ими 16-разрядный код BIOS, который, таким образом, используется только в течение запуска системы.

Скачать (переименовать в *.zip) описание параметров BIOS

Сайт управляется системой uCoz