Аппаратная и программная части BIOS
Как уже упоминалось, BIOS представляет собой интерфейс между аппаратным обеспечением и операционной системой
🕛 23.10.2009, 14:38
BIOS не похожа на стандартное программное обеспечение, поскольку находится в микросхемах, установленных на системной плате или платах адаптеров.BIOS в ПК обычно можно найти в следующих компонентах системы:
- ПЗУ системной платы;
- ПЗУ платы адаптера (например, видеоадаптера);
- данные на диске, загружаемые в ОЗУ (драйверы устройств).
Системная BIOS содержит драйверы основных компонентов (клавиатуры, дисковода, жесткого диска, последовательного и параллельных портов и т.д.), необходимые для начального запуска компьютера. По мере появления новых устройств (видеоадаптеров, накопителей CD-ROM, жестких дисков с интерфейсом SCSI, портов USB и т.д.) их процедуры инициализации не добавлялись в системную BIOS. Острая необходимость в таких устройствах при запуске компьютера отсутствует, поэтому нужные драйверы загружаются с диска во время запуска операционной системы. Это относится к звуковым адаптерам, сканерам, принтерам, устройствам PC Card (PCMCIA) и т.д.
В то же время существует целый ряд драйверов, которые должны быть активизированы во время начальной загрузки. Например, можно ли загрузиться с жесткого диска, если драйверы, требующиеся для выполнения этой операции, должны быть загружены непосредственно с этого диска? Очевидно, что необходимые драйверы должны быть предварительно загружены в ПЗУ (read-only memory - ROM) системной платы или платы адаптера.
Однако некоторые устройства необходимы при запуске компьютера. Например, для отображения информации на экране монитора требуется активизировать видеоадаптер, но его поддержка не встроена в системную BIOS. Кроме того, сейчас существует огромное количество видеоадаптеров, и все их драйверы невозможно поместить в системную BIOS. В таких случаях необходимые драйверы помещаются в микросхему BIOS на плате этого устройства. А системная BIOS при загрузке ищет BIOS видеоадаптера и загружает ее до запуска операционной системы. Создавая персональный компьютер, IBM нашла более эффективное решение. ПЗУ системной платы сканировало разъемы платы на предмет наличия в них установленных адаптеров с собственным ПЗУ. Если адаптер был найден, код ПЗУ выполнялся на этапе первоначальной системной загрузки до того, как начиналась загрузка операционной системы с жесткого диска.
Такое расположение BIOS предотвращает необходимость постоянной модернизации системной BIOS при появлении новых моделей устройств, особенно используемых при начальной загрузке компьютера. Собственная BIOS, как правило, устанавливается на следующих платах:
- видеоадаптеры - всегда имеют собственную микросхему BIOS;
- адаптеры SCSI - обратите внимание, что эта BIOS не поддерживает все устройства SCSI, т.е. с диска необходимо загружать дополнительные драйверы для накопителей CD-ROM, сканеров, устройств Zip и прочих с интерфейсом SCSI; большинство новых адаптеров SCSI поддерживают загрузку с накопителя SCSI CD-ROM, однако при загрузке с другого диска или устройства все равно понадобятся драйверы CD-ROM;
- сетевые адаптеры - платы, поддерживающие загрузку непосредственно с файлового сервера; имеют так называемое загрузочное ПЗУ или модуль IPL (Initial program load - первоначальная загрузка системы), которые необходимы для начальной инициализации устройства либо нормального функционирования в бездисковых рабочих станциях или терминалах;
- платы обновления IDE или дисковода - для поддержки функции загрузочного устройства при запуске системы.
BIOS и CMOS RAM
Иногда пользователи путают BIOS и CMOS RAM системы. Причиной путаницы является то, что программа Setup BIOS используется для установки и хранения параметров конфигурации в CMOS RAM. Следует заметить, что это совершенно разные компоненты.Обычно BIOS находится в отдельной микросхеме системной платы. Кроме того, на системной плате расположена так называемая микросхема RTC/NVRAM, содержащая часы истинного времени и энергонезависимую память. По сути, эта микросхема представляет собой цифровой датчик времени с несколькими дополнительными байтами памяти. Обычно она называется CMOS-микросхемой, поскольку создана на основе комплементарных металлооксидных полупроводников (complementary metal-oxide semiconductor - CMOS). Микросхема Motorola MC146818, использованная впервые в качестве RTC/NVRAM, содержала 64 байт памяти, из которых 10 байт были выделены для функционирования часов. Несмотря на то что она называется энергонезависимой, при выключенном питании параметры времени/даты и данные, находящиеся в памяти, будут уничтожены. Микросхема, созданная на основе технологии Complementary Metal-Oxide Semiconductor (CMOS), имеет пониженное потребление электроэнергии, и для нее вполне достаточно мощности батареи компьютера. Именно поэтому микросхема носит название CMOS RAM, хотя, с технической точки зрения, ее следовало бы назвать микросхемой RTC/NVRAM. Сила тока, потребляемого большинством микросхем RTC/NVRAM, не превышает одного микроампера (миллионной доли ампера), поэтому для их работы достаточно одной небольшой батареи. В течение последних пяти лет для этого использовалась литиевая батарея, при выходе из строя которой вся хранимая в микросхеме информация разрушается. В отдельных системах используются микросхемы Dallas Semiconductor RTC/NVRAM (например, DS12885 или DS12887), также содержащие батарею.
При загрузке программы BIOS Setup и последующем конфигурировании/сохранении параметров жесткого диска или других устройств установочные параметры системы записываются в соответствующую область памяти RTC/NVRAM (или CMOS RAM). При каждой загрузке системы для определения ее конфигурации проводится считывание параметров, хранящихся в микросхеме CMOS RAM. Несмотря на наличие определенной связи между BIOS и CMOS RAM, это абсолютно разные компоненты.