Информатика: Базовый курс

Обеспечение взаимодействия с аппаратным обеспечением

 

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

Гибкость аппаратных и программных конфигураций вычислительных систем поддерживается за счет того, что каждый разработчик оборудования прикладывает к нему специальные программные средства управления — драйверы. Драйверы имеют точки входа для взаимодействия с прикладными программами, а диспетчеризация обращений прикладных программ к драйверам устройств — это одна из функций операционной системы. Строго говоря, выпуская устройство, например модем, его разработчик прикладывает к нему несколько драйверов, предназначенных для основных операционных систем, как-то: Windows 95/98, Windows NT, MS-DOS и т. п.

В операционных системах MS-DOS драйверы устройств загружаются какрезидент-ные программы, напрямую работающие с процессором и другими устройствами материнской платы. Здесь участие операционной системы сводится лишь к тому, чтобы предоставить пользователю возможность загрузки драйвера — далее он сам перехватывает прерывания, используемые для обращения к устройству, и управляет его взаимодействием с вызывающей программой. Загрузка драйверов устройств может быть ручной (после первоначальной загрузки компьютера пользователь сам выдает команды на загрузку драйверов) или автоматической, когда команды на загрузку и настройку драйверов включаются в состав файлов, автоматически читаемых при загрузке компьютера. В MS-DOS такие файлы называются файлами конфигурации; их всего два — это файлы autoexec.bat и config.sys. В них прежде всего включают команды загрузки драйвера мыши, дисковода CD-ROM, звуковой карты, расширенной памяти (оперативная память, лежащая за пределами 1 Мбайт, рассматривается в MS-DOS как дополнительное устройство и требует специального драйвера), а также прочих устройств.

В таких операционных системах, как Windows 95/98 и Windows NT, операционная система берет на себя все функции по установке драйверов устройств и передаче им управления от приложений. Во многих случаях операционная система даже не нуждается в драйверах, полученных от разработчика устройства, а использует драйверы из собственной базы данных.

Наиболее современные операционные системы Windows 95/98 позволяют управлять не только установкой и регистрацией программных драйверов устройств, но и процессом аппаратно-логического подключения. Каждое подключенное устройство может использовать до трех аппаратных ресурсов устройств материнской платы: адресов внешних портов процессора, прерываний процессора и каналов прямого доступа к памяти. Если устройство подключается к материнской плате через шину PC/, то есть техническая возможность организовать между ним и материнской платой обратную связь. Это позволяет операционной системе анализировать требования устройств о выделении им ресурсов и гибко реагировать на них, исключая захват одних и тех же ресурсов разными устройствами. Такой принцип динамического распределения ресурсов операционной системой получил название plug-and-play, а устройства, удовлетворяющие этому принципу, называются самоустанавливающимися.

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