Уровень 1. Драйверы внешних устройств

 

Первый уровень ОС представлен программами управления устройствами ввода/вывода. В первую очередь это драйверы устройств.

Драйвер (driver) – специализированный программный модуль, управляющий внешним устройством. Драйверы обеспечивают единый интерфейс к различным устройствам, тем самым снимая с пользовательских программ и ядра ОС необходимость знать особенности взаимодействия с конкретным устройством конкретного производителя.

Большинство современных ОС запрещают пользовательским программам прямой доступ к аппаратным ресурсам. Это делается для повышения надежности и обеспечения безопасности в многопользовательских системах. В таких системах драйверы являются для прикладных программ единственным способом доступа к ресурсам.

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

Более или менее четкой общей классификации драйверов не существует. Существуют частные варианты. Например, драйверы для ОС Windows принято классифицировать следующим образом:

1) драйверы режима ядра (Kernel-Mode Drivers):

– драйверы файловой системы (File System Drivers) – реализуют ввод-вывод на локальные и сетевые диски;

– унаследованные драйверы (Legacy Drivers) – написаны для предыдущих версий Windows NT;

– драйверы видеоадаптеров (Video Drivers) - реализуют графические операции;

– драйверы потоковых устройств (Streaming Drivers) - реализуют ввод-вывод видео и звука;

– WDM-драйверы (Windows Driver Model, WDM) - поддерживают технологию Plag and Play и управления электропитанием. Их отличительной особенностью является совместимость на уровне исходного кода между Windows 98, Windows ME и Windows 2000;

2) драйверы пользовательского режима (User-Mode Drivers):

– драйверы виртуальных устройств (Virtual Device Drivers, VDD) - используются для поддержки программ MS-DOS (не путать с VxD драйверами в Windows 95/98 - это совсем разные вещи, хотя и имеют одно название);

– драйверы принтеров (Printer Drivers).

Драйверы для ОС семейства UNIX делятся на два типа:

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

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

 








Дата добавления: 2019-10-16; просмотров: 535;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.