Что представляет собой bios на программном и аппаратном уровнях
Пользователи зачастую не видят разницы между программной и аппаратной частями компьютера. Это можно объяснить высокой степенью интеграции компонентов системы. Точное представление различия между компонентами компьютера дает ключ к пониманию роли BIOS. За аббревиатурой “BIOS” скрывается понятие базовой системы вводавывода. По существу, BIOS представляет собой “промежуточный слой” между программной и аппаратной частями системы. Большинство пользователей знакомы с BIOS по другому термину — драйверы устройств или просто драйверы. По своей сути BIOS представляет собой совокупность всех драйверов устройств, связывающих программные и аппаратные средства компьютера. Когда был представлен первый ПК, программное обеспечение BIOS содержало драйверы для всех устройств системы, которые записывались в микросхемы ПЗУ, расположенные на системной плате. При этом драйверы предварительно загружались в память и были доступны на протяжении всего времени работы компьютера.
В микросхеме ПЗУ также были записаны программа POST (Power On Self Test — тестирование при включении) и программа самозагрузки. Последняя инициирует загрузку операционной системы, проверяя загрузочный сектор на дискете или на жестком диске. После загрузки операционная система обращается к процедурам низкого уровня (драйверам) BIOS, необходимым для взаимодействия с различными системными устройствами. В начале компьютерной эры в BIOS хранились абсолютно все драйверы устройств, в том числе драйвер клавиатуры, видеоадаптера MDA/CGA, последовательного и параллельного портов, контроллера гибких дисков, контроллера жестких дисков, джойстика и т.д.
После загрузки операционной системы загружать драйверы для работы с устройствами не нужно, так как они уже находятся в ПЗУ. Эта идея была неплоха, однако лишь до тех пор, пока в системе не устанавливалось новое устройство, драйвера которого в ПЗУ не существует. В этом случае есть два выхода. Если вы установили новую плату адаптера, она может быть оснащена собственной микросхемой ПЗУ, содержащей необходимый драйвер. ПЗУ системной платы запрограммировано таким образом, чтобы обнаруживать ПЗУ адаптеров и при обнаружении новых драйверов связывать соответствующие новые функции с существующей BIOS. В результате можно сказать, что ПЗУ системной платы “аккумулирует” данные, хранящиеся в ПЗУ отдельных адаптеров, в результате чего обеспечивается “коллективная” функциональность. Подобный метод добавления драйверов использовался для целого ряда устройств, например видеоадаптеров, которые должны быть полностью функциональными с момента включения компьютера. Код BIOS, хранящийся в ПЗУ системной платы, содержит драйверы только для монохромного видеоадаптера MDA компании IBM, а также цветного видеоадаптера CGA. При установке видеоадаптера иного типа драйверы, хранящиеся в ПЗУ системной платы, оказывались бесполезными. Конечно, это не вызывало проблем, если новый видеоадаптер был оснащен собственной микросхемой ПЗУ, содержимое которой добавлялось в BIOS сразу же после включения компьютера.
Если же использовалось устройство другого типа, существовал иной способ добавления драйвера в “коллекцию” драйверов BIOS. Дело в том, что на ранних этапах загрузки файл загрузки операционной системы (Io.sys) обращался к файлу конфигурации (Config.sys), содержащему сведения о драйверах устройств. Файл Config.sys вместе со всеми указанными в нем драйверами должен находиться на загрузочном диске. После того как файл Io.sys получит необходимые данные, он загружает указанные драйверы в память и связывает их с BIOS. Другими словами, драйверы загружались с диска в ОЗУ и связывались с BIOS, благодаря чему появлялась возможность в любой момент их вызвать.
К этому моменту в BIOS оказывались данные из ПЗУ системной платы и адаптеров, а также драйверы, загруженные с диска в ОЗУ на ранних этапах загрузки. Таким образом, BIOS содержит данные, которые физически расположены в трех разных местах системы, но при этом работают как единое целое, поскольку все программы связываются посредством процедур BIOS. Операционная система или приложение при взаимодействии с каким-либо устройством (например, при необходимости считать данные с компакт-диска) обращается к определенному программному прерыванию, после чего в соответствии с таблицей векторов прерываний вызов направляется к определенной части BIOS (т.е. к драйверу), связанной с работой устройства. При этом не имеет значения, где именно хранится драйвер — в ПЗУ системной платы, адаптера или ОЗУ. Память всегда остается памятью, и если известен адрес, по которому находится нужная программа, ее всегда можно вызвать.
Итак, базовая система ввода-вывода — это комбинация всех типов ПЗУ материнской платы и плат расширения, а также драйверов устройств, загруженных с диска. Часть BIOS, содержащаяся в микросхеме на системной плате или платах адаптеров, называется прошивкой(firmware) (именно из-за наличия этих микросхем пользователи чаще всего относят BIOS к аппаратной части компьютера). После выключения питания компьютера все данные, находящиеся в оперативной памяти компьютера, стираются; нетронутым остается только содержимое ПЗУ. После включения компьютера снова выполняется процесс загрузки, и в память с диска загружаются все отсутствующие драйверы.
По мере эволюции ПК выпускалось все больше различных типов устройств и их моделей. Это означало необходимость предварительной загрузки все большего количества драйверов. Добавление драйверов в ПЗУ системной платы — задача довольно сложная, поскольку микросхемы ПЗУ чаще всего несъемные, а их объем достаточно ограничен. Архитектура PC предполагала использование ПЗУ системной платы объемом всего 128 Кбайт, причем большая часть этого объема уже используется для хранения драйверов, процедуры POST и программ настройки BIOS и загрузки. Запись драйвера в ПЗУ адаптера — также сложная и дорогостоящая задача, а объем ПЗУ адаптеров ограничен теми же 128 Кбайт, из которых 32 Кбайт используются самим видеоадаптером. Поэтому многие компании решили создавать драйверы, которые загружаются в ОЗУ при запуске системы.
С течением времени с диска загружалось все больше и больше драйверов, в том числе таких,которые заменяют драйверы, хранящиеся в ПЗУ системной платы. Например, в Windows 95 был представлен новый 32-разрядный драйвер жесткого диска, который использовался вместо 16-разрядного, хранящегося в ПЗУ системной платы. При этом 16-разрядный драйвер использовался только с момента включения компьютера до того момента, когда в ОЗУ загружался 32-разрядный драйвер, а также изменялась таблица векторов прерываний. Windows 95/98/Me допускали использование как 16-, так и 32-разрядных драйверов, облегчая тем самым переход к 32-разрядным операциям.
Современные 32- и 64-разрядные драйверы загружаются непосредственно с жесткого диска, заменяя все драйверы в ПЗУ системной платы. Это относится к любому компьютеру, работающему под управлением Windows NT/2000/XP или Vista. Эти операционные системы вообще не используют 16-разрядные драйверы, размещенные в ПЗУ (ROM) системной платы или адаптера устройства. Код ПЗУ системной платы необходим лишь для обеспечения успешной загрузки 32-разрядных драйверов и ядра операционной системы, после чего ПЗУ отключается. Другими словами, после загрузки операционной системы все необходимые драйверы (т.е. BIOS) уже находятся в оперативной памяти. Основные функции ПЗУ материнской платы — запуск системы, инициализация необходимых для загрузки системы устройств, а также проверка пароля для входа в систему и выполнение базовой настройки устройств. После загрузки системы управление передается загруженному в память набору драйверов.
Компьютерную систему можно представить в виде нескольких аппаратных и программных слоев, которые взаимодействуют друг с другом. Существует четыре основных слоя, каждый из которых можно разбить на подуровни. Эта концепция представлена в графическом виде на рисунке ниже.
В представленной на рисунке архитектуре программное обеспечение взаимодействует с операционной системой с помощью интерфейса прикладного программирования (Application Programming Interface или API). Этот интерфейс специфичен для каждой операционной системы; он состоит из набора команд и функций, которые операционная система может выполнить для приложения. К примеру, приложение может отдать приказ операционной системе загрузить или сохранить файл. Такой порядок избавляет приложения от необходимости знать специфику работы с конкретным оборудованием, установленным в компьютере, и его набором команд. Оно имеет дело только с операционной системой, выступающей посредником между приложением и аппаратной частью. Поскольку приложение оказывается полностью изолированным от оборудования, оно может выполняться на любом компьютере, на котором установлена операционная система, интерфейс API которой задействован в программе.
Операционная система, в свою очередь, через BIOS обращается непосредственно к аппаратному обеспечению. Эта связь реализована в виде драйверов устройств. Обычно выпуском драйверов устройств занимаются их производители. Поскольку драйверы обеспечивают взаимодействие между аппаратным устройством и операционной системой, они, как правило, предназначены для конкретной ОС. Таким образом, производителям приходится создавать драйверы для таких операционных систем, как DOS, Windows 9x/NT/2000/XP, OS/2, Linux и др. Тем не менее многие операционные системы имеют одинаковые внутренние интерфейсы, и некоторые драйверы подходят для нескольких операционных систем. Например, драйвер для Windows Me обычно подходит для Windows 98/95, а драйвер для Windows XP можно использовать в Windows 2000/NT, и наоборот. Это связано с тем, что операционные системы Windows 95/98/Me имеют одно и то же ядро; то же можно сказать и о системах Windows NT/2000/XP. В новой системе Windows Vista в значительной мере изменено ядро NT, так что в ней зачастую нельзя использовать драйверы, предназначенные для предыдущих версий Windows семейства NT.
Как видно из рисунке, уровни приложений и операционной системы могут быть идентичны для разных систем, в то время как уровни оборудования могут значительно различаться. Поскольку BIOS содержит драйверы, обеспечивающие взаимодействие программного и аппаратного обеспечения, уровень BIOS, с одной стороны, учитывает уникальные особенности оборудования, а с другой — оказывается неизменным с точки зрения операционной системы. На аппаратном уровне сосредоточены основные различия между разными системами. Именно BIOS отвечает за маскирование различий между разными устройствами, чтобы обеспечить нормальную работу операционной системы. В настоящей главе внимание уделяется особенностям работы системной BIOS персонального компьютера.
BIOS — это термин, который используется для описания базовой системы ввода — вывода. По существу, BIOS представляет собой "промежуточный слой" между программной и аппаратной частями системы. Кроме системной, существует еще BIOS адаптеров, которые загружаются при запуске системы.
Итак, базовая система ввода /вывода — это комбинация всех типов BIOS, а также загружаемые драйверы устройств. Часть BIOS, содержащаяся в микросхеме на системной плате или платах адаптеров, называется firmware (именно из-за наличия этих микросхем пользователи чаще всего относят BIOS к аппаратной части компьютера). Операционная система через BIOS обращается непосредственно к аппаратному обеспечению. Эта связь реализована в виде драйверов устройств. Причем в каждой операционной системе — DOS, Windows 9x, Windows NT, Windows 2000, OS/2, Linux или другой — для одного и того же устройства необходимы свои драйверы.
Таким образом BIOS "подстраивается" под определенное аппаратное обеспечение и, независимо от установленного оборудования, обеспечивает стандартный интерфейс для операционной системы.
BIOS представляет собой интерфейс между аппаратным обеспечением и операционной системой. BIOS не похожа на стандартное программное обеспечение, поскольку находится в микросхемах, установленных на системной плате или платах адаптеров.
BIOS в РС-совместимой системе:
находится в микросхеме системной платы;
в микросхеме плат адаптеров, например в видеоадаптере;
или загружается с диска (драйверы).
Системная BIOS содержит драйверы основных компонентов (клавиатуры, дисковода, жесткого диска, последовательного и параллельных портов и т.д.), необходимые для начального запуска компьютера. По мере появления новых устройств (видеоадаптеров, накопителей CD-ROM, жестких дисков с интерфейсом SCSI и т.д.) их процедуры инициализации не добавлялись в системную BIOS. Острая необходимость в таких устройствах при запуске компьютера отсутствует, поэтому необходимые драйверы загружаются с диска во время запуска операционной системы. Это относится к звуковым адаптерам, сканерам, принтерам, устройствам PC Card (PCMCIA) и т.д.
Однако некоторые устройства необходимы при запуске компьютера. Например, для отображения информации на экране монитора необходима активизация видеоадаптера, но его поддержка не встроена в системную BIOS. Кроме того, сейчас существует огромное количество видеоадаптеров, и все их драйверы невозможно поместить в системную BIOS. В таких случаях необходимые драйверы помещаются в микросхему BIOS на плате этого устройства. А системная BIOS при загрузке ищет BIOS видеоадаптера и загружает ее до запуска операционной системы.
BIOS — Базовая система ввода-вывода ( Basic Input Output System ) называется так потому, что включает в себя обширный набор программ ввода-вывода, благодаря которым операционная система и прикладные программы могут взаимодействовать с различными устройствами как самого компьютера, так и подключенными к нему. Вообще говоря, в PS система BIOS занимает особое место. С одной стороны, ее можно рассматривать как составную часть аппаратных средств, с другой стороны, она является как бы одним из програмных модулей операционной системы. Сам термин BIOS , видимо, заимствован из операционной системы CP / M , в которой модуль с подобным названием был реализован програмно и выполнял примерно подобные действия.
BIOS (basic input/output system) — базовая система ввода-вывода — это встроенное в компьютер программное обеспечение, которое ему доступно без обращения к диску. На PC BIOS содержит код, необходимый для управления клавиатурой, видеокартой, дисками, портами и другими устройствами.
Обычно BIOS размещается в микросхеме ПЗУ (ROM), размещенной на материнской плате компьютера (поэтому этот чип часто называют ROM BIOS). Эта технология позволяет BIOS всегда быть доступным, несмотря на повреждения, например, дисковой системы. Это также позволяет компьютеру самостоятельно загружаться. Поскольку доступ к RAM (оперативной памяти) осуществляется значительно быстрее, чем к ROM, многие производители компьютеров создают системы таким образом, чтобы при включении компьютера выполнялось копирование BIOS из ROM в оперативную память. Задейтвованная при этом область памяти называется Shadow Memory (теневая память).
В настоящее время, почти все материнские платы комплектуются Flash BIOS, BIOSом, который в любой момент может бытть перезаписан в микросхеме ROM при помощи специальной программы.
BIOS PC стандартизирован, поэтому, в принципе менять его, также как, например, операционные системы нет необходимости. Дополнительные возможности компьютера можно использовать только использованием нового программного обеспечения.
BIOS, который поддерживает технологию Plug-and-Play, называется PnP BIOS. При использовании этой технологии BIOS должен быть обязательно прошит во Flash ROM.
Большинство современных видеоадаптеров, а также контроллеры накопителей имеют собственную систему BIOS , которая обычно дополняет системную. Во многих случаях программы, входящие в конкретную BIOS , заменяют соответствующие програмные модули основной BIOS . Вызов программ BIOS , как правило, осуществляется через програмные или аппаратные прерывния.
Заметим, что система BIOS помимо программ взаимодействия с аппаратными средствами на физическом уровне содержит программу тестирования при включении питания компьютера POST ( Power – On — Self — Test , Самотестирование при включении питания компьютера). Тестируются основные компоненты, такие как процкссор, память, вспомогательные микросхемы, приводы дисков, клавиатуру и видеоподсистему. Если при включении питания компьютера возникают проблемы (BIOS не может выполнить начальный тест), вы услышите последовательность звуковых сигналов:
Ошибка регенерации DRAM
Отказ схемы четности
Отказ базового ОЗУ 64 Кб
Отказ системного таймера
Ошибка адресной линии A20 контроллера клавиатуры
Ошибка исключения виртуального режима Virtual Mode Exception
Ошибка теста чтения, записи памяти дисплея
Ошибка контрольной суммы ROM-BIOS
Если вы сталкиваетесь с чем-либо подобным, существует высокая вероятность того, что эта проблема связана с аппаратными средствами.
Система BIOS в PS реализована в виде одной микросхемы, установленной на материнской плате компьютера. Заметим, что название ROM BIOS в настоящее время не совсем справедливо, ибо « ROM » — предполагает использование постоянных запоминающих устройств ( ROM — Read Only Memory ), а для хранения кодов BIOS в настоящее время применяются в основном перепрограммируемые (стираемые электрически или с помощью ультрафиолетового излучения) запоминающие устройства. Мало того, наиболее перспективным для хранения системы BIOS является сейчас флэш-память. Это позволяет легко модифицировать старые или добавлять дополнительные функции для поддержки новых устройств, подключаемых к компьютеру.
Поскольку содержимое ROM BIOS фирмы IBM было защищено авторским правом, то есть его нельзя подвергать копированию, то большинство других производителей компьютеров вынуждены были использовать микросхемы BIOS независимых фирм, системы BIOS которых, разумеется, были практически полностью совместимы с оригиналом. Наиболее известные из этих фирм три: American Megatrends Inc . ( AMI ), Award Software и Phoenix Technologies . Заметим, что конкретные версии BIOS неразрывно связаны с набором микросхем ( chipset ), используемым на системной плате. Кстати, компания Phoenix Technologies считается пионером в производстве лицензионно-чистых BIOS . Именно в них впервые были реализованы такие функции, как задание типа жесткого диска, поддержка привода флоппи-дисков емкостью 1,44 Мбайта и т.д. Более того, считается, что процедура POST этих BIOS имеет самую мощную диагностику. Справедливости ради надо отметить, что BIOS компании AMI наиболее распространены. По некоторым данным, AMI занимает около 60% этого сегмента рынка. Кроме того, из программы Setup AMI BIOS можно вызвать несколько утилит для тестирования основных компонентов системы и работы с накопителями. Однако при их использовании особое внимание следует обратить на тип интерфейса, который использует привод накопителя.
Система BIOS в компьютерах, неразрывно связана с SMOS RAM . Под этим понимается «неизменяемая» память, в которой хранится информация о текущих показаниях часов, значении времени для будильника, конфигурации компьютера: количестве памяти, типах накопителей и т.д. Именно в этой информации нуждаются программные модули системы BIOS. Своим названием SMOS RAM обязана тому, что эта память выполнена на основе КМОП-струкгур (CMOS-Complementary Metal Oxide Semiconductor), которые, как известно, отличаются малым энергопотреблением. Заметим, что CMOS -память энергонезависима только постольку, поскольку постоянно подпитывается, например, от аккумулятора, расположенного на системной плате, или батареи гальванических элементов, как правило, смонтированной на корпусе системного блока. Заметим, что большинство системных плат допускают питание CMOS RAM как от встроенного, так и от внешнего источника.
Заметим, что в случае повреждения микросхемы CMOS RAM (или разряде батареи или аккумулятора) программа Setup имеет возможность воспользоваться некой информацией по умолчанию ( BIOS Setup Default Values ), которая хранится в таблице соответствующей микросхемы ROM BIOS . Кстати, на некоторых материнских платах питание микросхемы CMOS RAM может осуществляться как от внутреннего, так и от внешнего источника. Выбор определяется установкой соответствующей перемычки.
Программа Setup поддерживает установку нескольких режимов энергосбережения, например Doze (дремлющий), Standby (ожидания, или резервный) и Suspend (приостановки работы). Данные режимы перечислены в порядке возрастания экономии электроэнергии. Система может переходить в конкретный режим работы по истечении определенного времени, указанного в Setup . Кроме того, BIOS обычно поддерживает и спецификацию АРМ ( Advanced Power Management ). Как известно, впервые ее предложили фирмы Microsoft и Intel. В их совместном документе содержались основные принципы разработки технологии управления потребляемой портативным компьютером мощностью.
Напомним, что задание полной конфигурации компьютера осуществляется не только установками из программы Setup , но и замыканием (или размыканием) соответствующих перемычек на системной плате. Назначение каждой из них указано в соответствующей документации.
BIOS (Basic Input-Output System) – базовая система ввода/вывода. Все системные платы содержат небольшой блок постоянного запоминающего устройства (ROM), который отделен от основной системной памяти, используемой для загрузки и выполнения программного обеспечения. ROM содержит BIOS ПК. Это дает два преимущества: программы и данные в ROM BIOS не должны перезагружаться каждый раз при запуске компьютера, и они не могут быть разрушены ошибками в приложениях, которые пытаются записать информацию в «неправильную» часть памяти. По существу, BIOS является неким промежуточным слоем (интерфейсом) между программной и аппаратной частями компьютерной системы.
BIOS включает несколько отдельных подпрограмм, обслуживая различные функции. Первая часть выполняется при включении машины. Компьютер инспектируется, чтобы определить, какие аппаратные средства присоединены, и затем проводятся некоторые простые тесты, чтобы зафиксировать, что все функционирует. Когда все тесты пройдены, ROM пытается определять, с какого устройства будет загружаться ОС машины.
BIOS имеют различные контроллеры, видеоплаты, дисководы, модемы, сканеры и другие внутренние и периферийные устройства компьютера. Это так называемые BIOS адаптеров, которые загружаются при запуске системы. Но наиболее важной в компьютере является системная BIOS, в которой находится всё основное системное программное обеспечение компьютера и в функции которой входят:
· тестирование компьютера при включении питания с помощью специальных тестовых программ;
· поиск и подключение к системе других BIOS, расположенных на платах расширения;
· распределение ресурсов между компонентами компьютера.
История развития BIOS
В настоящее время среди разработчиков BIOS для персональных компьютеров наиболее известны три фирмы. Во-первых, это American Megatrends, Inc. Было время, когда BIOS разработки этой фирмы (AMI BIOS) стояли практически на всех компьютерах. Затем постепенно их вытеснили BIOS производства Award Software, Inc. Но в последнее время ситуация изменилась и AMI BIOS снова завоевал заслуженную популярность у производителей. Его используют такие известные производители материнских плат, как ASUS, Gigabyte, MSI, ESC и другие. Второй по алфавиту идет фирма Intel. Некоторое время назад на своих материнских платах она использовала модифицированный BIOS производства American Megatrends, Inc. — он так и назывался Intel/AMI BIOS. Сейчас, после существенной переработки, упоминание о American Megatrends, Inc. исчезло и на современных материнских платах используется уже собственный Intel BIOS, но в отличие от других компаний-разработчиков BIOS, Intel использует свои наработки только на собственных материнских платах. И, наконец, третий весьма влиятельный производитель этого рынка - Phoenix Technologies. До поглощения Award Software, Inc. (во времена процессоров Pentium — Pentium II) Phoenix BIOS не был особо популярен у производителей материнских плат, а вот Award BIOS самостоятельной тогда Award Software, Inc. использовался на подавляющем большинстве компьютеров. Так что приобретение Award Software, Inc. позволило Phoenix Technologies существенно расширить занимаемую долю рынка, и сейчас BIOS Phoenix Technologies (торговые марки — Award BIOS, Phoenix Award BIOS, Phoenix Award Workstation BIOS) используются практически всеми производителями материнских плат. Он даже более популярен, чем AMI BIOS.
В начале 2000г. компания Intel объявила, что собирается заменить BIOS выпуском первой версии EFI (extensible firmware interface). В сущности, EFI – «мини-ОС» с собственными правами, способная работать с сетями, графикой, клавиатурой и памятью. Эта система предусматривает загрузку с Flash ROM, как и BIOS, но, загрузившись в EFI, можно будет протестировать систему на работоспособность, зайти в Интернет без загрузки основной операционной системы. Это новый стандарт для архитектуры, интерфейса и услуг марки встроенного программного обеспечения ПК, но на данный момент у этой системы еще много недостатков и недоработок.
Понятие CMOS
Системные платы включают отдельный блок оперативной памяти, основанный на схеме малой мощности CMOS RAM (Complementary Metal-Oxide Semiconductor RAM), который сохраняется действующим с помощью батареи даже после отключения питания ПК и располагается в контроллере периферии. Он используется, чтобы сохранять основную информацию о конфигурации ПК: номера и тип жестких дисков, объем памяти, какой вид и т. д. Это можно вводить вручную, но современные BIOS автоконфигурирования делают многое из этой работы, и в CMOS сохраняются более важные параметры настройки типа выбора периода регенерации динамической оперативной памяти. В момент запуска компьютера BIOS считывает содержимое памяти CMOS в оперативную память компьютера, а также содержит программу настройки параметров системы (CMOS Setup), посредством которой можно изменить содержимое памяти CMOS. Другие важные данные, сохраняемые в CMOS, - время и дата, которые модифицируются часами реального времени (RTC – real time clock).
Понятие интерфейса BIOS
Чтобы войти в BIOS Setup. Нужно вовремя процедуры первоначального тестирования компьютера нажать определенную клавишу или их комбинацию. Наиболее часто используется Delete, реже F1 или F2; есть и другие варианты.
Интерфейс - совокупность средств и методов взаимодействия между элементами системы. BIOS представляет собой интерфейс между аппаратным обеспечением и операционной системой.
Как правило, программа BIOS Setup имеет текстовый интерфейс и управляется с помощью клавиатуры. В главном окне BIOS Setup присутствует меню со списком основных разделов программы Setup. Главное меню BIOS Setup обычно расположено в два столбца, этот вариант используется в различных версиях AwardBIOS и AMIBIOS. Подобный интерфейс применяется в системных платах большинства производителей: Gigabyte, MSI, Foxconn, ECS, Abit и многих других. Другой распространенный вариант интерфейса BIOS Setup - со строкой меню в верхней части экрана. Такой интерфейс используется в PhoenixBIOS, Intel ВIOS, а также в некоторых версиях Award ВIOS и AMIВIOS . Этот вариант интерфейса используется в системных платах производства ASUS, AsRock, Intel и некоторых других.
Назначение POST
POST (Power On Self Test) - самотестирование процессора, модулей оперативной памяти, набора микросхем, дисководов, клавиатуры и других жизненно важных компонентов компьютерной системы при включении её электропитания.
Процесс самопроверки включает:
· проверка программы BIOS;
· обнаружение и инициализацию основных системных шин и устройств, а также выполнение программ заложенных в устройства и обеспечивающих их самоинициализацию;
· определение размера оперативной памяти и тестирования первых 64 килобайт.
Основное назначение, принципы работы и классификация
BIOS (Basic Input-Output System) – базовая система ввода/вывода. Все системные платы содержат небольшой блок постоянного запоминающего устройства (ROM), который отделен от основной системной памяти, используемой для загрузки и выполнения программного обеспечения. ROM содержит BIOS ПК. Это дает два преимущества: программы и данные в ROM BIOS не должны перезагружаться каждый раз при запуске компьютера, и они не могут быть разрушены ошибками в приложениях, которые пытаются записать информацию в «неправильную» часть памяти. По существу, BIOS является неким промежуточным слоем (интерфейсом) между программной и аппаратной частями компьютерной системы.
BIOS включает несколько отдельных подпрограмм, обслуживая различные функции. Первая часть выполняется при включении машины. Компьютер инспектируется, чтобы определить, какие аппаратные средства присоединены, и затем проводятся некоторые простые тесты, чтобы зафиксировать, что все функционирует. Когда все тесты пройдены, ROM пытается определять, с какого устройства будет загружаться ОС машины.
BIOS имеют различные контроллеры, видеоплаты, дисководы, модемы, сканеры и другие внутренние и периферийные устройства компьютера. Это так называемые BIOS адаптеров, которые загружаются при запуске системы. Но наиболее важной в компьютере является системная BIOS, в которой находится всё основное системное программное обеспечение компьютера и в функции которой входят:
· тестирование компьютера при включении питания с помощью специальных тестовых программ;
· поиск и подключение к системе других BIOS, расположенных на платах расширения;
· распределение ресурсов между компонентами компьютера.
История развития BIOS
В настоящее время среди разработчиков BIOS для персональных компьютеров наиболее известны три фирмы. Во-первых, это American Megatrends, Inc. Было время, когда BIOS разработки этой фирмы (AMI BIOS) стояли практически на всех компьютерах. Затем постепенно их вытеснили BIOS производства Award Software, Inc. Но в последнее время ситуация изменилась и AMI BIOS снова завоевал заслуженную популярность у производителей. Его используют такие известные производители материнских плат, как ASUS, Gigabyte, MSI, ESC и другие. Второй по алфавиту идет фирма Intel. Некоторое время назад на своих материнских платах она использовала модифицированный BIOS производства American Megatrends, Inc. — он так и назывался Intel/AMI BIOS. Сейчас, после существенной переработки, упоминание о American Megatrends, Inc. исчезло и на современных материнских платах используется уже собственный Intel BIOS, но в отличие от других компаний-разработчиков BIOS, Intel использует свои наработки только на собственных материнских платах. И, наконец, третий весьма влиятельный производитель этого рынка - Phoenix Technologies. До поглощения Award Software, Inc. (во времена процессоров Pentium — Pentium II) Phoenix BIOS не был особо популярен у производителей материнских плат, а вот Award BIOS самостоятельной тогда Award Software, Inc. использовался на подавляющем большинстве компьютеров. Так что приобретение Award Software, Inc. позволило Phoenix Technologies существенно расширить занимаемую долю рынка, и сейчас BIOS Phoenix Technologies (торговые марки — Award BIOS, Phoenix Award BIOS, Phoenix Award Workstation BIOS) используются практически всеми производителями материнских плат. Он даже более популярен, чем AMI BIOS.
В начале 2000г. компания Intel объявила, что собирается заменить BIOS выпуском первой версии EFI (extensible firmware interface). В сущности, EFI – «мини-ОС» с собственными правами, способная работать с сетями, графикой, клавиатурой и памятью. Эта система предусматривает загрузку с Flash ROM, как и BIOS, но, загрузившись в EFI, можно будет протестировать систему на работоспособность, зайти в Интернет без загрузки основной операционной системы. Это новый стандарт для архитектуры, интерфейса и услуг марки встроенного программного обеспечения ПК, но на данный момент у этой системы еще много недостатков и недоработок.
Понятие CMOS
Системные платы включают отдельный блок оперативной памяти, основанный на схеме малой мощности CMOS RAM (Complementary Metal-Oxide Semiconductor RAM), который сохраняется действующим с помощью батареи даже после отключения питания ПК и располагается в контроллере периферии. Он используется, чтобы сохранять основную информацию о конфигурации ПК: номера и тип жестких дисков, объем памяти, какой вид и т. д. Это можно вводить вручную, но современные BIOS автоконфигурирования делают многое из этой работы, и в CMOS сохраняются более важные параметры настройки типа выбора периода регенерации динамической оперативной памяти. В момент запуска компьютера BIOS считывает содержимое памяти CMOS в оперативную память компьютера, а также содержит программу настройки параметров системы (CMOS Setup), посредством которой можно изменить содержимое памяти CMOS. Другие важные данные, сохраняемые в CMOS, - время и дата, которые модифицируются часами реального времени (RTC – real time clock).
Понятие интерфейса BIOS
Чтобы войти в BIOS Setup. Нужно вовремя процедуры первоначального тестирования компьютера нажать определенную клавишу или их комбинацию. Наиболее часто используется Delete, реже F1 или F2; есть и другие варианты.
Интерфейс - совокупность средств и методов взаимодействия между элементами системы. BIOS представляет собой интерфейс между аппаратным обеспечением и операционной системой.
Как правило, программа BIOS Setup имеет текстовый интерфейс и управляется с помощью клавиатуры. В главном окне BIOS Setup присутствует меню со списком основных разделов программы Setup. Главное меню BIOS Setup обычно расположено в два столбца, этот вариант используется в различных версиях AwardBIOS и AMIBIOS. Подобный интерфейс применяется в системных платах большинства производителей: Gigabyte, MSI, Foxconn, ECS, Abit и многих других. Другой распространенный вариант интерфейса BIOS Setup - со строкой меню в верхней части экрана. Такой интерфейс используется в PhoenixBIOS, Intel ВIOS, а также в некоторых версиях Award ВIOS и AMIВIOS . Этот вариант интерфейса используется в системных платах производства ASUS, AsRock, Intel и некоторых других.
Назначение POST
POST (Power On Self Test) - самотестирование процессора, модулей оперативной памяти, набора микросхем, дисководов, клавиатуры и других жизненно важных компонентов компьютерной системы при включении её электропитания.
Процесс самопроверки включает:
· проверка программы BIOS;
· обнаружение и инициализацию основных системных шин и устройств, а также выполнение программ заложенных в устройства и обеспечивающих их самоинициализацию;
· определение размера оперативной памяти и тестирования первых 64 килобайт.
Вы здесь: Главная BIOS: базовая система ввода-вывода Основы BIOS Основы BIOS
Архитектура ЭВМ
Компоненты ПК
Интерфейсы
Мини блог
Самое читаемое
- Арифметико логическое устройство (АЛУ)
- Страничный механизм в процессорах 386+. Механизм трансляции страниц
- Организация разделов на диске
- Диск Picture CD
- White Book/Super Video CD
- Прямой доступ к памяти, эмуляция ISA DMA (PC/PCI, DDMA)
- Карты PCMCIA: интерфейсы PC Card, CardBus
- Таблица дескрипторов прерываний
- Разъемы процессоров
- Интерфейс Slot A
Основы BIOS
Пользователи зачастую не видят разницы между программной и аппаратной частями компьютера. Это можно объяснить высокой степенью интеграции компонентов системы. Точное представление различия между компонентами компьютера дает ключ к пониманию роли BIOS. За аббревиатурой “BIOS” скрывается понятие базовой системы вводавывода. По существу, BIOS представляет собой “промежуточный слой” между программной и аппаратной частями системы. Большинство пользователей знакомы с BIOS по другому термину — драйверы устройств или просто драйверы. По своей сути BIOS представляет собой совокупность всех драйверов устройств, связывающих программные и аппаратные средства компьютера. Когда был представлен первый ПК, программное обеспечение BIOS содержало драйверы для всех устройств системы, которые записывались в микросхемы ПЗУ, расположенные на системной плате. При этом драйверы предварительно загружались в память и были доступны на протяжении всего времени работы компьютера.
В микросхеме ПЗУ также были записаны программа POST (Power On Self Test — тестирование при включении) и программа самозагрузки. Последняя инициирует загрузку операционной системы, проверяя загрузочный сектор на дискете или на жестком диске. После загрузки операционная система обращается к процедурам низкого уровня (драйверам) BIOS, необходимым для взаимодействия с различными системными устройствами. В начале компьютерной эры в BIOS хранились абсолютно все драйверы устройств, в том числе драйвер клавиатуры, видеоадаптера MDA/CGA, последовательного и параллельного портов, контроллера гибких дисков, контроллера жестких дисков, джойстика и т.д.
После загрузки операционной системы загружать драйверы для работы с устройствами не нужно, так как они уже находятся в ПЗУ. Эта идея была неплоха, однако лишь до тех пор, пока в системе не устанавливалось новое устройство, драйвера которого в ПЗУ не существует. В этом случае есть два выхода. Если вы установили новую плату адаптера, она может быть оснащена собственной микросхемой ПЗУ, содержащей необходимый драйвер. ПЗУ системной платы запрограммировано таким образом, чтобы обнаруживать ПЗУ адаптеров и при обнаружении новых драйверов связывать соответствующие новые функции с существующей BIOS. В результате можно сказать, что ПЗУ системной платы “аккумулирует” данные, хранящиеся в ПЗУ отдельных адаптеров, в результате чего обеспечивается “коллективная” функциональность. Подобный метод добавления драйверов использовался для целого ряда устройств, например видеоадаптеров, которые должны быть полностью функциональными с момента включения компьютера. Код BIOS, хранящийся в ПЗУ системной платы, содержит драйверы только для монохромного видеоадаптера MDA компании IBM, а также цветного видеоадаптера CGA. При установке видеоадаптера иного типа драйверы, хранящиеся в ПЗУ системной платы, оказывались бесполезными. Конечно, это не вызывало проблем, если новый видеоадаптер был оснащен собственной микросхемой ПЗУ, содержимое которой добавлялось в BIOS сразу же после включения компьютера.
Если же использовалось устройство другого типа, существовал иной способ добавления драйвера в “коллекцию” драйверов BIOS. Дело в том, что на ранних этапах загрузки файл загрузки операционной системы (Io.sys) обращался к файлу конфигурации (Config.sys), содержащему сведения о драйверах устройств. Файл Config.sys вместе со всеми указанными в нем драйверами должен находиться на загрузочном диске. После того как файл Io.sys получит необходимые данные, он загружает указанные драйверы в память и связывает их с BIOS. Другими словами, драйверы загружались с диска в ОЗУ и связывались с BIOS, благодаря чему появлялась возможность в любой момент их вызвать.
К этому моменту в BIOS оказывались данные из ПЗУ системной платы и адаптеров, а также драйверы, загруженные с диска в ОЗУ на ранних этапах загрузки. Таким образом, BIOS содержит данные, которые физически расположены в трех разных местах системы, но при этом работают как единое целое, поскольку все программы связываются посредством процедур BIOS. Операционная система или приложение при взаимодействии с каким-либо устройством (например, при необходимости считать данные с компакт-диска) обращается к определенному программному прерыванию, после чего в соответствии с таблицей векторов прерываний вызов направляется к определенной части BIOS (т.е. к драйверу), связанной с работой устройства. При этом не имеет значения, где именно хранится драйвер — в ПЗУ системной платы, адаптера или ОЗУ. Память всегда остается памятью, и если известен адрес, по которому находится нужная программа, ее всегда можно вызвать.
Итак, базовая система ввода-вывода — это комбинация всех типов ПЗУ материнской платы и плат расширения, а также драйверов устройств, загруженных с диска. Часть BIOS, содержащаяся в микросхеме на системной плате или платах адаптеров, называется прошивкой(firmware) (именно из-за наличия этих микросхем пользователи чаще всего относят BIOS к аппаратной части компьютера). После выключения питания компьютера все данные, находящиеся в оперативной памяти компьютера, стираются; нетронутым остается только содержимое ПЗУ. После включения компьютера снова выполняется процесс загрузки, и в память с диска загружаются все отсутствующие драйверы.
По мере эволюции ПК выпускалось все больше различных типов устройств и их моделей. Это означало необходимость предварительной загрузки все большего количества драйверов. Добавление драйверов в ПЗУ системной платы — задача довольно сложная, поскольку микросхемы ПЗУ чаще всего несъемные, а их объем достаточно ограничен. Архитектура PC предполагала использование ПЗУ системной платы объемом всего 128 Кбайт, причем большая часть этого объема уже используется для хранения драйверов, процедуры POST и программ настройки BIOS и загрузки. Запись драйвера в ПЗУ адаптера — также сложная и дорогостоящая задача, а объем ПЗУ адаптеров ограничен теми же 128 Кбайт, из которых 32 Кбайт используются самим видеоадаптером. Поэтому многие компании решили создавать драйверы, которые загружаются в ОЗУ при запуске системы.
С течением времени с диска загружалось все больше и больше драйверов, в том числе таких,которые заменяют драйверы, хранящиеся в ПЗУ системной платы. Например, в Windows 95 был представлен новый 32-разрядный драйвер жесткого диска, который использовался вместо 16-разрядного, хранящегося в ПЗУ системной платы. При этом 16-разрядный драйвер использовался только с момента включения компьютера до того момента, когда в ОЗУ загружался 32-разрядный драйвер, а также изменялась таблица векторов прерываний. Windows 95/98/Me допускали использование как 16-, так и 32-разрядных драйверов, облегчая тем самым переход к 32-разрядным операциям.
Современные 32- и 64-разрядные драйверы загружаются непосредственно с жесткого диска, заменяя все драйверы в ПЗУ системной платы. Это относится к любому компьютеру, работающему под управлением Windows NT/2000/XP или Vista. Эти операционные системы вообще не используют 16-разрядные драйверы, размещенные в ПЗУ (ROM) системной платы или адаптера устройства. Код ПЗУ системной платы необходим лишь для обеспечения успешной загрузки 32-разрядных драйверов и ядра операционной системы, после чего ПЗУ отключается. Другими словами, после загрузки операционной системы все необходимые драйверы (т.е. BIOS) уже находятся в оперативной памяти. Основные функции ПЗУ материнской платы — запуск системы, инициализация необходимых для загрузки системы устройств, а также проверка пароля для входа в систему и выполнение базовой настройки устройств. После загрузки системы управление передается загруженному в память набору драйверов.
Компьютерную систему можно представить в виде нескольких аппаратных и программных слоев, которые взаимодействуют друг с другом. Существует четыре основных слоя, каждый из которых можно разбить на подуровни. Эта концепция представлена в графическом виде на рисунке ниже.
В представленной на рисунке архитектуре программное обеспечение взаимодействует с операционной системой с помощью интерфейса прикладного программирования (Application Programming Interface или API). Этот интерфейс специфичен для каждой операционной системы; он состоит из набора команд и функций, которые операционная система может выполнить для приложения. К примеру, приложение может отдать приказ операционной системе загрузить или сохранить файл. Такой порядок избавляет приложения от необходимости знать специфику работы с конкретным оборудованием, установленным в компьютере, и его набором команд. Оно имеет дело только с операционной системой, выступающей посредником между приложением и аппаратной частью. Поскольку приложение оказывается полностью изолированным от оборудования, оно может выполняться на любом компьютере, на котором установлена операционная система, интерфейс API которой задействован в программе.
Операционная система, в свою очередь, через BIOS обращается непосредственно к аппаратному обеспечению. Эта связь реализована в виде драйверов устройств. Обычно выпуском драйверов устройств занимаются их производители. Поскольку драйверы обеспечивают взаимодействие между аппаратным устройством и операционной системой, они, как правило, предназначены для конкретной ОС. Таким образом, производителям приходится создавать драйверы для таких операционных систем, как DOS, Windows 9x/NT/2000/XP, OS/2, Linux и др. Тем не менее многие операционные системы имеют одинаковые внутренние интерфейсы, и некоторые драйверы подходят для нескольких операционных систем. Например, драйвер для Windows Me обычно подходит для Windows 98/95, а драйвер для Windows XP можно использовать в Windows 2000/NT, и наоборот. Это связано с тем, что операционные системы Windows 95/98/Me имеют одно и то же ядро; то же можно сказать и о системах Windows NT/2000/XP. В новой системе Windows Vista в значительной мере изменено ядро NT, так что в ней зачастую нельзя использовать драйверы, предназначенные для предыдущих версий Windows семейства NT.
Как видно из рисунке, уровни приложений и операционной системы могут быть идентичны для разных систем, в то время как уровни оборудования могут значительно различаться. Поскольку BIOS содержит драйверы, обеспечивающие взаимодействие программного и аппаратного обеспечения, уровень BIOS, с одной стороны, учитывает уникальные особенности оборудования, а с другой — оказывается неизменным с точки зрения операционной системы. На аппаратном уровне сосредоточены основные различия между разными системами. Именно BIOS отвечает за маскирование различий между разными устройствами, чтобы обеспечить нормальную работу операционной системы. В настоящей главе внимание уделяется особенностям работы системной BIOS персонального компьютера.
Читайте также: