Найти тему
Softfly.ru

BIOS - набор базовых промежуточных процедур

BIOS - набор базовых промежуточных процедур между операционной системой и оборудованием, хранящимся в энергонезависимой памяти. Он имеет собственную конфигурационную память, которая содержит информацию о дате, времени и данные обо всех устройствах, установленных на компьютере. Это программа, сохраненная в ПЗУ материнской платы и других плат расширения, таких как видеокарта . Оригинальный IBM BIOS отличается своим языком программирования ROM Basic .

С середины 1990-х большинство BIOS было помещено во флэш- память , что позволяет обновлять их позже.

Действие

Для материнской платы BIOS выполняет POST , занимается начальной поддержкой устройств ввода-вывода, управляет передачей данных между такими компонентами, как жесткий диск , дисковод гибких дисков , процессор или дисковод CD-ROM / DVD-ROM . Инициализирует загрузчик . BIOS необходим в персональных компьютерах из-за архитектуры материнских плат , где благодаря ACPI он контролирует источник питания, а также контролирует температуру и т.д.

Используя встроенный интерфейс BIOS, называемый настройкой BIOS , вы можете изменить настройки BIOS, например параметры подключенных жестких дисков или поведение компьютера после его включения (например, скорость тестирования ОЗУ ), а также включить / отключить некоторые элементы. материнская плата, например, коммуникационные порты . Вы также можете разогнать процессор и оперативную память, используя некоторые BIOS, но это не рекомендуется, поскольку это может привести к перегрузке устройства и даже его повреждению.

Некоторые материнские платы содержат дополнительный модуль флэш-памяти, который обеспечивает защиту основного BIOS, если он поврежден или поврежден компьютерным вирусом или обновлен неправильно. В этом случае содержимое системы резервного копирования перезаписывается на первый основной модуль флэш-памяти. Этот механизм от компании Gigabyte Technology называется Dual BIOS.

Продюсеры

Следующие производители чаще всего используют BIOS с персональных компьютеров в классе ПК:

Американские Мегатренды (AMI)

Награда Software International / Phoenix Technologies ( Phoenix BIOS ) (компании объединились в 1998 году)

Общее программное обеспечение (General Software)

Insyde Software (Инсайд)

MicroID Research (MRBIOS)

Список примеров функций

Список примеров функций для примера BIOS, доступных программистам на языках программирования второго и третьего поколений, работающих в операционных системах семейства DOS и других гибридных системах ядра .

Список содержит избранные инструкции для систем BIOS, обычно используемых в конце 20-го века в компьютерах XT / AT . Более поздние системы BIOS могут содержать совершенно другой список функций или могут быть недоступны для программистов, работающих в операционных системах, отличных от перечисленных выше.

функция описание

00h Переводит регистры внутреннего контроллера в строго определенное начальное состояние. Выполняемая операция в настоящее время прервана.

01h Статус последней операции читается. Функция восстанавливает байт состояния в регистре AH так же, как после последней операции, независимо от того, как долго она закончилась.

02h Один или несколько секторов с диска считываются функцией 02h. Все считанные сектора расположены в памяти, начиная с адреса, указанного в ES: BX, или, возможно, размывая другие данные. Разработчик обязан зарезервировать достаточно свободного места.

03h Эта функция эквивалентна функции 02h. Разница заключается в том, что в качестве сектора полные 512-байтовые блоки памяти всегда сохраняются (начиная с адреса, указанного в регистрах ES: BX), даже если они не только содержат данные, которые были помещены туда программистом.

04h Функция, выполняя тестовые показания, проверяет правильность кодов ECC.

05h Секторы дорожек или цилиндров отформатированы. Соответствующие четырехбайтовые блоки данных должны быть подготовлены отдельно для каждого сектора. Эта функция не может использоваться в приводах с собственным встроенным контроллером, например IDE, или с использованием трансляции.

06h Путь с более чем одним плохим сектором помечается как плохой. Это предотвращает сохранение любых данных. Эта функция корректно поддерживает только контроллер жесткого диска модели XT. Эта функция не может использоваться в приводах с собственным встроенным контроллером, например IDE, или с использованием трансляции.

07h Весь диск отформатирован, начиная с заданного цилиндра. Эта функция корректно поддерживает только контроллер жесткого диска модели XT. Эта функция не может использоваться в приводах с собственным встроенным контроллером, например IDE, или с использованием трансляции.

08h Информационная функция. Предоставляет информацию о геометрических параметрах привода.

09h Геометрические параметры привода настраиваются. Если геометрические параметры жесткого диска не соответствуют ни одной из «постоянных» моделей в программе установки, обычно можно выбрать дополнительный тип, обычно 47. Это позволяет вам свободно определять геометрию привода. До двух 16-битных таблиц (отдельно для первого и второго системных дисков) отправляется информация, введенная пользователем.

Элементы 41h и 46h таблицы векторов прерываний обрабатываются немного иначе, чем остальные, поскольку они не указывают ни на одну из процедур обработки прерываний. Они устанавливаются в начальные адреса этих таблиц с параметрами диска. Структура этих массивов такая же, как и у функции 08h. Таким образом, функция 09h работает, находя (используя индикаторы INT41h и INT46h) таблицы с геометрическими параметрами и показывая содержимое в BIOS.

0Ah Секторы (от одного до 127) читаются и помещаются в основную память (в указанный буфер). Система ECC контроллера не вносит никаких исправлений. Данные из всех секторов отправляются без изменений.

0Bh Секторы от одного до 127 сохраняются (вместе с байтами ECC). Секторы берутся из указанного буфера в основной памяти. Система ECC контроллера не вносит никаких исправлений. Данные из всех секторов отправляются без изменений. Эта функция дает возможность проверить работу систем ECC. Чтобы проверить это, вы должны намеренно сохранить сектор с плохими контрольными байтами . Затем подвергните сектор чтению.

0Ch Указанная головка активируется и располагается над нужным цилиндром.

0Dh Диск сбрасывается.

0Eh Текущее содержимое 512-байтового буфера контроллера отправляется в указанную область оперативной памяти. Данные не читаются с диска.

0Fh 512 байт передаются в буфер контроллера (из указанной области памяти). Данные не записываются на диск.

10h Эта функция используется для проверки готовности диска к выполнению команд.

11h Калибровка происходит, то есть функция устанавливает головку по нулевому пути.

12h Оперативная память контроллера жесткого диска проверена. Не в каждой версии BIOS эта функция разработана.

13ч Контроллер выполняет всестороннюю проверку диска, и в случае возникновения ошибки возвращается ошибка. Не в каждой версии BIOS эта функция разработана.

19h Эта функция полезна, когда необходимо транспортировать накопитель, который (диск) не оборудован соответствующим механизмом, который при отключении питания автоматически паркует головку. Функция 19h перемещает головки над цилиндром. Это необходимо для защиты головок и магнитной поверхности от повреждений, вызванных ударами.

41ч Функция проверяет, соответствует ли диск спецификации EIDE. Не в каждой версии BIOS эта функция разработана.

48h Параметры жесткого диска EIDE считываются. Не в каждой версии BIOS эта функция разработана.