Как работает BIOS

Как работает BIOS

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

Прерывания программного обеспечения приводят к тому, что микропроцессор приостанавливает выполнение текущей работы и начинает выполнять подпрограмму по обработке прерывания. Для реализации этого механизма микропроцессор, выполнив какую-либо элементарную операцию, исследует векторы прерываний. Если прерывание выставлено, коды выполняемой программы запоминаются, чтобы после обработки прерывания выполнение прерванной программы могло быть продолжено. Каждый вектор прерывания является указателем, говорящим микропроцессору, где находятся коды по обработке данного прерывания. Микропроцессор читает значение вектора и начинает выполнять программы по указанному вектором адресу.

Список векторов прерываний начинается с самого начала памяти микропроцессора по адресу 00000(Hex). Каждый вектор занимает 4 байта памяти, и все они располагаются в памяти по возрастающей. Недостающие значения для каждого вектора загружаются в оперативную память с ПЗУ, содержащих BIOS при загрузке компьютера. Программы могут изменять вектора прерываний для изменения значений прерываний программного обеспечения. Обычно завершающиеся и остающиеся резидентными программы реализуют подобные корректировки векторов для своих собственных целей.

Так как число имеющихся прерываний может оказаться намного меньше того числа функций, которое вы хотели бы использовать в своих программах, некоторые прерывания BIOS используются для реализации нескольких функций. Эти функции реализуются при помощи передачи параметров. Параметры обрабатываются подпрограммами BIOS. Их значения заносятся в один или более регистров при установке флажка прерываний. В свою очередь, подпрограммы BIOS могут передавать результаты назад в выполняемую программу.

В BIOS постоянно вносятся изменения. Это происходит каждый раз для совершенствования системы при разработке новых компьютеров или новых системных плат в рамках уже существующих моделей. Наиболее радикальные изменения претерпела BIOS PS/2, когда был представлен микроканал. Улучшенная BIOS реализовывала возможности нового защищенного режима. Каждая BIOS после PC-1 является расширяемой. Вовремя загрузки компьютера читается дополнительная секция кодов, содержащихся в дополнительных платах и их инструкции прибавляются к существующему диапазону. Например новые подпрограммы прерываний могут быть добавлены либо в функции существующих подпрограмм, либо могут быть изменены.

Во время самотестирования, после загрузки векторов прерываний ОЗУ, резидентный код BIOS заставляет компьютер проверить байты своего ПЗУ в соответствующем адресном диапазоне. Если найден значащий байт, процессор проверяет последующую секцию кодов, разрешая расширению BIOS после проведения циклической проверки блоков по 512 байт. Значения каждого байта в блоке суммируются по модулю, результат делится на 4096. Нулевой остаток говорит о том, что расширение BIOS имеет правильное значение.

Дополнительные секции кодов маркируются специальным значением, помещаемым перед ним. Затем после этих двух байтов - третий байт указывает дополнительную длину секции BIOS. Значение третьего байта указывает на количество блоков по 512 байт, необходимых для дополнительных кодов.

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



Ресурс: Виртуальная школа БАКАЙ
Статья: Как работает BIOS
Опубликовано:
Автор:
Читателей:1997

Оценка статьи:
ОтвратительноУжасноПлохоСреднеХорошоПохвальноОтличноПревосходноПрекрасноВеликолепно!
[Голосов: 1]



 
Словарь компьютерных терминов Центр (center)
Центр (center)
вычислительный ЦЕНТР (ВЦ) (computer center).
Cамостоятельное учреждение или организационное подразделение, оснащенное ЭВМ и выполняющее централизованную обработку различной
БиоМозаика Горилла не узнает себя
Горилла не
Группа биологов Нью- йоркского университета изучала отношение
обезьян к своему изображению в зеркале. Обезьянам наносили на лоб пятно яркой краски. Видя Крылатые слова Иерихонские стены. Труба иерихонская.
Иерихонские
По библейскому преданию, евреи, по выходе из египетского плена, на пути своём в Палестину должны были взять город Иерихон. Но стены его были так прочны, что разрушить их не было возможности. Однако
Личность в истории Рерих Юрий Николаевич (1902-1960)
Рерих Юрий
Выдающийся русский востоковед, член Королевского Азиатского общества в Лондоне, Азиатского общества в Бенгалии, Парижского Географического общества, Археологического и Этнографического общества в
БиоМозаика Самая маленькая лягушка в мире
Самая
На территории национального парка Ману, который находится в южно-восточной части Перу, специалисты, изучающие земноводных и пресмыкающихся, так называемые герпетологи, обнаружили самую
Это интересно! ГРАММОФОН
ГРАММОФОН
Эмиль Берлинер (1851-1929), немецкий ученый, эмигрировал в Америку в поисках удачи. Там он открыл лабораторию по изучению акустики (учение о звуке) и электричества. В 1887 г. Берлинер запатентовал