BIOS

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Основная и дублирующая микросхемы ПЗУ материнской платы фирмы Gigabyte. На ПЗУ содержится код BIOS, созданный фирмой Award (англ.)
Микросхема ПЗУ, содержащая код BIOS, созданный фирмой Phoenix Technologies (англ.)

BIOS (англ. basic input/output system — «базовая система ввода-вывода»), также БСВВ — набор микропрограмм, реализующих API для работы с аппаратурой компьютера и подключёнными к нему устройствами.

BIOS относится к системному программному обеспечению (ПО).

Виды BIOS:

Термин «BIOS»[править | править вики-текст]

Термин «BIOS» употребляется по отношению к устройствам, совместимым с персональными компьютерами фирмы IBM. Для устройств, построенных на базе иных платформ, используются другие термины. Например, для компьютеров архитектуры SPARC набор микропрограмм может называться «PROM» или «Boot».


Учитывая нерусское происхождение термина и его принадлежность к аббревиатурам, русскоязычные пользователи при произношении слова «BIOS», обычно, используют транслитерацию и произносят «би́ос». Надо помнить, что это русифицированное, искажённое произношение, и правильно произносить это название как «ба́йос» (/ˈb.ɒs/). Правильное название базовой системы ввода-вывода — именно «байос» — позволяет избежать путаницы с BeOS (операционная система, созданная фирмой «Be, Inc.»; произносится «би́-ос») и с другими похожими по написанию или звучанию словами.

BIOS материнской платы[править | править вики-текст]

В IBM PC-совместимом компьютере, использующем микроархитектуру x86, код BIOS хранится на микросхеме EEPROM (ЭСППЗУ). ЭСППЗУ — электрически стираемое перепрограммируемое постоянное запоминающее устройство.

Микросхема ПЗУ, хранящая код BIOS фирмы Award (англ.)

Назначение BIOS:

Начальная загрузка компьютера[править | править вики-текст]

После включения IBM PC-совместимого компьютера процессор, реализующий микроархитектуру x86, читает код BIOS из ПЗУмикросхемы EEPROM), записывает его в ОЗУ (оперативную память) и передаёт управление коду BIOS.

Затем код BIOS:

  • выполняет тестирование оборудования компьютера (см. POST, англ. power-on self-test);
  • читает настройки из энергозависимого ПЗУ;
  • применяет настройки;
  • ищет и загружает в память код загрузчика;
  • передаёт управление загрузчику.

Таким образом BIOS обеспечивает начальную загрузку IBM PC-совместимого компьютера.

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

BIOS реализует API для работы с внутренними и внешними устройствами компьютера. Загрузчик ОС и сама ОС используют это API для работы с оборудованием до тех пор, пока не загрузят собственные драйверы.

В настоящее время компания Intel на новых платформах предлагает использовать extensible firmware interface (UEFI) вместо BIOS.

Инициализация и проверка работоспособности аппаратуры (POST)[править | править вики-текст]

Бо́льшую часть кода BIOS составляют микропрограммы, предназначенные для инициализации контроллеров, расположенных на материнской плате, и устройств, подключённых к материнской плате (которые, в свою очередь, могут иметь контроллеры с собственными BIOS).

Сразу после включения питания компьютера процессор читает код BIOS из EEPROM, записывает код BIOS в память и передаёт ему управление. Первым делом код BIOS начинает проверку аппаратного обеспечения компьютера — POST (англ. power-on self-test). В ходе POST код BIOS проверяет работоспособность контроллеров, расположенных на материнской плате, задаёт низкоуровневые параметры их работы (например, частоту шины и параметры центрального микропроцессора, контроллера оперативной памяти, контроллеров шин FSB, AGP, PCI, USB).

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

См. также:

Загрузка операционной системы[править | править вики-текст]

Если POST выполнен без ошибок, код BIOS начнёт поиск кода загрузчика ОС. Поиск выполняется на доступных и разрешённых в настройках носителях:

Код BIOS загрузит код загрузчика ОС в память и передаст ему управление.

Загрузчик ОС и сама ОС по ходу работы могут изменять большинство настроек, установленных кодом BIOS.

Некоторые реализации BIOS поддерживают загрузку через интерфейсы, изначально для этого не предназначенные (USB и IEEE 1394).

Утилиты, доступные без загрузки ОС[править | править вики-текст]

Старые компьютеры семейства IBM PC/XT не имели полноценной операционной системы (либо её загрузка не была необходима пользователю), вызывали встроенный интерпретатор языка BASIC.

Некоторые BIOS предоставляют дополнительную функциональность:

API[править | править вики-текст]

IBM-совместимые компьютеры изначально конструировались так, чтобы предоставить возможность расширения. По этой причине работа с дисками и экраном выполнялась через API (функции) BIOS. Ранее для этого использовались порты ввода-вывода и блоки памяти.

Код BIOS предоставляет несколько интерфейсов, упрощающих составление программ, например, функции для работы с экраном в телетайпном режиме, функции для сканирования клавиатуры. Эти API позволяют работать с оборудованием на низком уровне, поэтому в названии «BIOS» присутствует слово «базовый».

API (функции) BIOS используются простейшими ОС (такими, как DOS), всеми ОС в момент загрузки и в «аварийных» режимах. Современные ОС, такие, как Windows и Linux, после загрузки используют свои драйверы, не используют API BIOS.

С развитием компьютерных систем в коде BIOS продолжали использоваться устаревшие технологии: прежде всего «реальный режим» работы процессора x86.

Для замены BIOS рядом производителей вычислительных систем (Unified EFI Forum (англ.), UEFI) предложена и внедряется технология EFI.

Настройка оборудования с помощью меню[править | править вики-текст]

Чтобы позволить пользователям менять настройки оборудования, код BIOS, как правило, реализует экранное меню.

Меню BIOS фирмы Award (англ.)

Открыть меню BIOS (англ. BIOS setup) можно, если во время POST нажать определённую клавишу. Часто используются клавиши Del, F2, F10 и Esc.

Некоторые возможности меню:

Меню для выбора носителя, на котором код BIOS будет искать код загрузчика

Необходимо чётко понимать, что сами состояния настроек не находятся непосредственно в микросхеме ПЗУ BIOS-а. При завершении конфигурирования настройки записываются в энергозависимое ПЗУ, физически находящейся в другой микросхеме (очень часто - в ячейках памяти южного моста). В выключенном состоянии компьютера данные этого ПЗУ сохраняются питанием от резервного источника, в качестве которого очень часто используются литиевые элементы CR2032 и подобные (одновременно использующиея для резервного питания встроенных аппаратных системных часов).

Так как существует вероятность неправильной настройки оборудования (неудачный разгон, воздействие вирусов, неправильные значения параметров, аппаратный сбой), предусмотрена возможность возврата настроек по умолчанию (сброса настроек). Сбросить настройки можно несколькими способами:

  • программно:
    • с помощью меню BIOS;
    • путём нажатия особой комбинации клавиш во время POST;
  • аппаратно:
Фотография участка материнской платы «p4p800 se» фирмы Asus. На фото видны:
  • батарейка CR2032 (англ.) фирмы «KTS»;
  • микросхема ПЗУ, хранящая код BIOS фирмы American Megatrends (AMI);
  • перемычки для сброса настроек BIOS (надпись на плате — «CLRTC1»).

Информация о назначении пунктов меню BIOS и о сбросе настроек в первоначальное состояние указывается в инструкциях к материнским платам[4][5]. Инструкции поставляются в комплекте с материнскими платами и могут быть скачаны с сайта производителя платы.

SLIC[править | править вики-текст]

С выходом ОС Windows Vista производители компьютеров стали внедрять в BIOS таблицу SLIC («ACPI_SLIC table», SLIC — аббревиатура от англ. software licensing description table). В таблице SLIC хранится информация о лицензировании ПО. Таблица SLIC является первым из трёх компонентов, созданных для OEM активации ОС семейства Microsoft Windows в режиме off-line (без доступа к сети интернет).

ОС Windows при установке проверяет наличие в BIOS таблицы SLIC, ищет в таблице SLIC код продукта OEM и цифровой сертификат OEM для выполнения активации.

Код продукта OEM (OEM SLP или system locked pre-installation (англ.)) — специальный 25‑значный ключ‑лицензия. Выдаётся только крупным производителям комплектующих. Является вторым компонентом OEM активации к режиме off-line.

Цифровой сертификат OEM (OEM certificate) — файл в формате XML с расширением *.xrm-ms. Выдаётся фирмой Microsoft каждому крупному производителю ПК. Является третьим компонентом OEM активации к режиме off-line.

Для активации ОС Windows использует определённый алгоритм. Этот алгоритм проверяет все три компонента и в случае успеха автоматически активирует ОС Windows.

См. также:

Производители[править | править вики-текст]

Основные производители BIOS для ноутбуков, персональных компьютеров и серверов (кроме продавцов-производителей):

См. также[править | править вики-текст]

Литература[править | править вики-текст]

  • Степаненко О. С. Настройка персонального компьютера. Установки BIOS. Самоучитель. — 2 изд. — М.: «Диалектика», 2007. — С. 480. — ISBN 978-5-8459-1231-2.
  • Скотт Мюллер. Модернизация и ремонт ПК = Upgrading and Repairing PCs. — 17 изд. — М.: «Вильямс», 2007. — С. 443—498. — ISBN 0-7897-3404-4.
  • Евгений Панкратов. Операционная система MS-DOS 6.22: Справочное пособие. — 2 изд. — М.: Познавательная книга плюс, 2002. — С. 224. — ISBN 5-8321-0305-1.

Ссылки[править | править вики-текст]

Примечания[править | править вики-текст]