Interested Article - BIOS

Основная и дублирующая микросхемы ПЗУ на материнской плате фирмы Gigabyte . В этих ПЗУ содержится код BIOS, созданный фирмой
Извлекаемая микросхема ПЗУ, содержащая код BIOS, созданный фирмой

BIOS ( МФА [ ˈ b a ɪ ə s ], от англ. b asic i nput/ o utput s ystem — «базовая система ввода-вывода »), БИОС , также БСВВ — набор микропрограмм , реализующих низкоуровневые API для работы с аппаратным обеспечением компьютера, а также создающих необходимую программную среду для запуска операционной системы у IBM PC-совместимых компьютеров. BIOS относится к системному программному обеспечению.

C начала XXI века BIOS стал постепенно заменяться UEFI . Однако многие производители материнских плат компьютеров, учитывая инертность основной массы потребителей, используют объединённый термин UEFI/BIOS , неверный с технической точки зрения, но дающий возможность понять потребителям, что речь идёт о подсистеме, аналогичной BIOS.

Термин BIOS

Название «BIOS» появилось потому, что инженеры IBM рассматривали прошивку как своего рода ранний вариант уровня аппаратной абстракции , и включили в неё помимо программ проверки аппаратуры , инициализации шин и загрузчика ОС также набор низкоуровневых драйверов для устройств материнской платы (таких как контроллер клавиатуры и НГМД), а также некоторых подключаемых устройств, вроде графических адаптеров MDPA и CGA . Предполагалось, что разработчики периферийных устройств и карт расширения также будут включать драйвера своих устройств в поставляемые с ними ПЗУ и опубликуют их программные интерфейсы, так что программистам не нужно будет обращаться непосредственно «к железу». Однако эта идея оказалась лишь частично успешной: драйвера BIOS имели весьма ограниченную функциональность, были довольно медленными в работе и имели неудобный интерфейс, поэтому большинство программистов игнорировало их и обращалось непосредственно к аппаратуре. Достаточно распространёнными оказались лишь драйвера жёстких дисков и сетевых адаптеров, реализующие стандартные протоколы обмена ATA/SCSI и т.п.

Следует отметить, что несмотря на его широкое распространение, 100% корректно термин BIOS может употребляться только по отношению к устройствам, совместимым с персональными компьютерами фирмы IBM . Для устройств, построенных на базе иных архитектур , используются другие термины. Например, для компьютеров архитектуры SPARC набор микропрограмм может называться PROM или Boot . У ранних Apple Macintosh набор записанного в ПЗУ ПО назывался « Toolbox » и включал в себя большую часть операционной системы, а у компьютеров Amiga похожая прошивка называлась « Kickstart » и включала в себя помимо загрузчика также библиотеки GUI (Intuition), дисковую подсистему с интерфейсом командной строки (AmigaDOS) и микроядро ОС (Exec). Более того, хотя прошивки современных (начиная с конца 2000-х) материнских плат IBM PC-совместимых компьютеров и поддерживают стандарт BIOS, фактически они отвечают стандарту UEFI , и делают это в особом режиме совместимости.

BIOS материнской платы

Микросхема ПЗУ, хранящая код BIOS фирмы

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

  • проверка работоспособности оборудования ;
  • загрузка операционной системы (ОС) ;
  • предоставление API для работы с оборудованием ;
  • настройка оборудования .

Начальная загрузка компьютера

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

Затем код BIOS [ источник не указан 2773 дня ] :

  • выполняет тестирование оборудования компьютера (см. POST , англ. p ower- o n s elf- t est );
  • читает настройки из энергонезависимого ПЗУ;
  • применяет настройки;
  • ищет и загружает в оперативную память код загрузчика;
  • передаёт управление загрузчику.

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

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

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

В настоящее время компания Intel на новых материнских платах предлагает использовать e xtensible f irmware i nterface (UEFI) вместо BIOS.

Инициализация и проверка работоспособности аппаратуры

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

Сразу после включения питания компьютера процессор читает код BIOS из EEPROM , записывает код BIOS в память и передаёт ему управление. Первым делом код BIOS начинает проверку аппаратного обеспечения компьютера — POST ( англ. p ower- o n s elf- t est ). В ходе POST код BIOS проверяет работоспособность контроллеров, расположенных на материнской плате, задаёт низкоуровневые параметры их работы (например, частоту шины и параметры центрального микропроцессора, контроллера оперативной памяти, контроллеров FSB , AGP , PCI , USB ).

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

См. также:

Загрузка операционной системы

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

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

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

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

Утилиты, доступные без загрузки ОС

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

Некоторые BIOS предоставляют дополнительную функциональность [ источник не указан 411 дней ] :

  • воспроизведение аудио-CD или DVD -дисков;
  • обновление кода BIOS с внешних носителей;
  • использование простых браузеров .

Примитивное API

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

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

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

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

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

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

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

Меню BIOS фирмы

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

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

  • настройка даты и времени для системных часов ;
  • настройка периферии, не приспособленной к работе в режиме « Plug and Play », например жёстких дисков , выпущенных в начале 1990-х годов и работающих в режиме адресации CHS ; COM - и LPT -портов;
  • запуск аппаратуры в « форсированном » или «щадящем» режиме;
  • установка заводских настроек (подробнее см. );
  • включение и выключение оборудования, встроенного в материнскую плату (USB-, COM- и LPT-портов, встроенного видео-, сетевого или звукового адаптера);
  • отключение некоторых тестов, выполняемых во время POST, для уменьшения времени выполнения POST (ускорения начальной загрузки);
  • активация обходных ветвей для известных ошибок ОС. Например, если Windows 95 отказывается загружаться на машине без флоппи-дисковода , BIOS может перенаправить векторы IRQ так, чтобы ОС поняла, что дисковода нет . Если неудачно написанный драйвер не работает с жёсткими дисками, подключёнными через интерфейс SerialATA , BIOS может эмулировать интерфейс ATA ;
  • порядок носителей, с которых выполняется загрузка компьютера.
Меню для выбора носителя, на котором код BIOS будет искать код загрузчика

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

Батарейка CR2032 фирмы Panasonic на материнской плате

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

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

    SLIC

    С выходом ОС Windows Vista производители компьютеров стали внедрять в BIOS таблицу SLIC (« ACPI _SLIC table», SLIC — аббревиатура от англ. s oftware lic ensing description table ). В таблице SLIC хранится информация о лицензировании ПО. Таблица SLIC является первым из трёх компонентов, созданных для OEM-активации ОС Windows без доступа к сети Интернет .

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

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

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

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

    Производители

    Основные производители BIOS [ источник не указан 411 дней ] :

    Примечания

    1. (англ.) . Collins English Dictionary. Дата обращения: 12 марта 2017. 13 марта 2017 года.
    2. Воройский Ф. С. Информатика. Энциклопедический систематизированный словарь-справочник. — М. : Физматлит, 2006. — С. 191. — 945 с.
    3. .
    4. , p. 90,172−185.
    5. , с. 160—161.
    6. , p. 203−206.
    7. . Дата обращения: 5 января 2012. 28 января 2012 года.
    8. RTC — англ. real time clock .
    9. от 21 июля 2015 на Wayback Machine (англ.) // Asus .
    10. (недоступная ссылка) (англ.)
    11. (недоступная ссылка) (англ.)

    Литература

    • Степаненко О. С. Настройка персонального компьютера. Установки 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 .
    • Михаил Гук. Глава 5. Организация ввода-вывода и BIOS // Аппаратные средства IBM PC. — 3-е. — СПб. : Питер, 2006. — С. 147−182. — 1072 с. — 5000 экз. ISBN 5-469-01182-8 .
    • Нортон П. Программно-аппаратная организация компьютера IBM PC = Inside the IBM PC. Access to advanced features and programming. — Prentice-Hall Publishing Comp., 1984.
    • Peter Norton . . — Microsoft press, 1985. — ISBN 0-914845-46-2 .

    Ссылки

    Источник —

    Same as BIOS