Базовая система ввода-вывода (BIOS) 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Базовая система ввода-вывода (BIOS)



 

Модуль BIOS индивидуален для каждой вычислительной системы и поставляется её изготовителем. В этом модуле содержатся аппаратно-зависимые драйверы следующих устройств:

 

§ Консольный дисплей с клавиатурой (СОМ).

§ Устройство построчной печати (РRN).

§ Последовательный канал связи (АUХ).

§ Часы/календарь (СLOCK).

§ Дисковое устройство начальной загрузки (блочно-ориентированное устройство).


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

Одна из первых функций BIOS - автоматическое тестирование основных аппаратных компонентов при включении машины, включая оперативную память (RAM - Random Access Memory). Если в процессе тестирования памяти или других аппаратных компонентов обнаруживаются ошибки, BIOS выдает на экран соответствующие сообщения. Дальнейшая работа машины на этом прекращается и пользователю нужно принимать меры к устранению выявленной ошибки.

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

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

Прерывания можно разделить на три группы: аппаратные, логические и программные.

Источники аппаратных прерываний - падение напряжения питания, нажатие клавиши на клавиатуре, приход очередного импульса от счетчика времени, возникновение специальных сигналов от накопителей на гибких или жестких дисках и др.

Логические, или процессорные, прерывания возникают при различных нестандартных ситуациях в работе основного процессора - деление на нуль, переполнение регистров, появление "точки останова" и др.

Программные прерывания - самая обширная категория. Вырабатываются они, когда программа хочет получить определенный сервис со стороны другой программы, причем этот сервис обычно связан с работой аппаратных средств.

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

Итак, в аппаратных компонентах машины, в самой DOS и в прикладных программах могут вырабатываться прерывания, которые нужно обслуживать. На BIOS возлагается задача обслуживания прерываний нижнего уровня - тех, которые требуют непосредственного управления аппаратными компонентами. Этим прерываниям присвоены номера с 0 по 31 (шестнадцатеричные номера 0 - 1F). Другие прерывания - с номерами 32-63 (шестнадцатеричные номера 20 - 3F) - относятся к более высокому уровню, и их обслуживание возлагается на другие модули DOS.

Таким образом, BIOS является своеобразной программной оболочкой вокруг аппаратных средств ПК, предоставляя возможность другим программам, в частности самой DOS, обращаться к аппаратным компонентам через механизм прерываний.

Бл ок начальной загрузки (Boot Record)

Блок начальной загрузки (БНЗ), или просто загрузчик, - это небольшая программа, единственная функция которой заключается в считывании с дисков в оперативную память двух других частей DOS - модуля расширения базовой системы ввода/вывода и модуля обработки прерываний. Сам загрузчик размещается на системном диске всегда на одном и том же месте - на 0-й стороне, в 1-м секторе дорожки 00. Длина БНЗ - 512 байт, т. е. он занимает всего один сектор на диске, и уже поэтому содержащаяся в нем программа не может быть чрезмерно сложной.

Работа БНЗ состоит в следующем. Он должен просмотреть каталог системного диска и убедиться, что первые два файла как раз и являются модулями DOS. В DOS эти файлы имеют специальные имена: IO.SYS и MSDOS.SYS. Для упрощения БНЗ они размещаются на системном диске всегда первыми - один эа другим в последовательных секторах. При этом оба файла снабжаются специальным атрибутом, который делает их "невидимыми": при выводе каталога диска на экран дисплея или на принтер имена указанных системных файлов не выводятся, хотя они и присутствуют в каталоге. Обеспечивается такое размещение при форматировании системных дисков и переносе на них операционной системы с других носителей.

Если БНЗ не обнаруживает указанных файлов на первых двух позициях каталога диска, то данный диск считается "несистемным", о чем на экран выдается соответствующее сообщение. Пользователь в этом случае может вставить в дисковол "правильный" системный диск и, нажав любую клавишу, подтолкнуть БНЗ к повторению поиска DOS на вновь установленном диске. Здесь следует заметить, что машину можно "перезапустить" двумя способами. Один из них, очевидный, заключается в выключении и повторном включении питания всей машина ("холодный перезапуск"). Однако этот "грубый" способ не очень-то полезен для электронных компонентов системного блока, чувствительных к броскам напряжения питания. Другой способ перезапуска ("теплый") - с помощью специальной комбинации клавиш (Ctrl+Alt+Del). В этом случае загрузка системы начинается с BIOS; при этом тестирование памяти и других аппаратных компонентов не производится, а сразу начинается поиск и загрузка в память БНЗ.

Возвращаясь к описанию БНЗ, заметим, что он всегда заносится на диск при его начальной разметке (форматировании) независимо от того, записываются ли на диск также и "системные" файлы с другими модулями DOS. Что касается 2-х других упомянутых системных файлов, то они появляются на диске лишь при особом режиме форматирования. Занести их на уже заполненный диск (с непустым каталогом файлов) нельзя, так как начальные позиции каталога и начальные сектора диска будут заняты другими файлами. Если же диск размечен обычным образом, но еще пуст, т. е. не содержит никаких файлов, то можно поместить на него системные файлы, применив специальную команду DOS (SYS.COM). Модуль расширения базовой системы ввода-вывода (IO.SYS)

Базовая система ввода/вывода, находящаяся в постоянном запоминающем устройстве (BIOS), является инвариантной по отношению к операционной системе, устанавливаемой на данной машине. В этом смысл BIOS является общей и неизменяемой частью всех возможных операционных систем для данной модели ПЭВМ. Изменение BIOS - нетривиальная задача, поскольку она очень тесно связана с особенностями аппаратуры конкретной модели ПЭВМ.

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

Использование механизма прерываний позволяет, с одной стороны, очень просто и изящно "перекрывать" в модуле расширения базовой системы функции, обслуживаемые BIOS. С другой стороны, появляется возможность включения в BIOS дополнительных подпрограмм, обслуживающих новые внешние устройства (драйверов). Драйверы разрабатываются не только для новых внешних устройств, но и для тех, которые стандартно входят в состав аппаратуры, - в тех случаях, когда обмен информацией с ними должен происходить иначе, чем принято в стандартной версии DOS. Это придает системе большую гибкость и возможность адаптации ее под любые требования пользователей.

О необходимости подключения новых драйверов внешних устройств, а также об изменении других параметров DOS уведомляется через файл конфигурации CONFIG.SYS. Этот текстовый файл обрабатывается модулем расширения IO.SYS, который осуществляет необходимую подстройку прерываний и других параметров DOS в соответствии с заданными в CONFIG.SYS командами конфигурирования. Команды конфигурирования могут указывать:

1. Дополнительные драйверы, которые необходимо подключить к ДОС. Простой пример:
DEVICE=MOUSE.SYS.
Команд такого типа в CONFIG.SYS может быть несколько.

2. Режим, при котором пользователь будет иметь возможность прервать любую работающую программу, дав команду BREAK (нажав на клавиатуре комбинацию клавиш CtrH- Break). В файле CONFIG.SYS установка указанного режима отображается выражением:
BREAK=ON.

3. Количество файлов, которые могут быть открыты одновременно. Пример команды конфигурирования, устанавливающей число одновременно открытых файлов:
FILES=20.

4. Количество буферов для обмена информацией с дисковыми накопителями. Пример соответствующей команды:
BUFFERS=8.

5. Имя файла, который будет играть роль нестандартного командного процессора (вместо стандартного файла COMMAND.COM). Пример команды, задающей новый командный процессор с именем START. СОМ:
SHELL=START.COM.

Таким образом, с помощью команд конфигурирования, заданных в файле CONFIG.SYS, пользователь может задать собственные, нестандартные возможности, которые вводятся в DOS на время текущего сеанса (до очередного перезапуска машины).

Кроме рассмотренных выше функций, па модуль IO.SYS возлагается еще одна задача - завершение загрузки DOS в оперативную память. С этой целью модуль расширения сначала передает управление на загруженный к этому моменту в оперативную память модуль обработки прерываний DOS, в котором устанавливаются внутренние рабочие таблицы, инициируются векторы прерываний с номерами 32-39 и производится подготовка к загрузке командного процессора, находящегося пока на системном диске. После этого управление возвращается в модуль IO.SYS, который производит загрузку командного процессора с диска в оперативную память и передает ему управление. На этом работа модуля IO.SYS при запуске DOS завершается.



Поделиться:


Последнее изменение этой страницы: 2021-03-09; просмотров: 88; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.105.108 (0.007 с.)