Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Многоуровневые драйверы
Первоначально, первый драйвер применяли в доступно узком смысле. Под драйвером понимается программный модуль, который: - входит в состав ядра операционной системы, работая в привилегированном режиме; - непосредственно управляет внешним устройством, взаимодействует с его контроллером с помощью команды ввода-вывода в компьютере; - обрабатывает прерывания от контроллера устройства; - предоставляет прикладному программисту удобный1 логический интерфейс для работы с устройством, экранируя от него низкоуровневые детали управления устройством и организации его данных; - взаимодействует с другими модулями ядра ОС с помощью строго оговоренного интерфейса, описывающего формат передаваемых данных, структуру буфера, способы включения драйверов в состав ОС и т.д. По мере развития ОС и усложнения структуры подсистем ввода-вывода в ОС появились высокоуровневые драйверы, которые располагаются в общей модели подсистемы ввода-вывода над традиционными драйверами. Вместо того, чтобы концентрировать все функции по управлению устройством в одном программном модуле гораздо эффективнее распределить их между несколькими модулями в соседних слоях иерархии. Традиционные драйверы, которые стали называть аппаратными низкоуровневыми или драйверами устройств занимаются только низкоуровневыми операциями. При таком подходе повышается гибкость и расширяемость функций по управлению устройств. На практике в подсистеме ввода-вывода чаще всего используют от 2 до 5 уровней драйверов. высокоуровневые драйверы не вызываются по прерываниям, т.к. взаимодействуют с управляющим устройством через посредничество аппаратных драйверов. Менеджер ввода-вывода управляет драйверами однотипно не зависимо от того, к какому уровню он относится. В вертикальной подсистеме сетевых устройств приведенной на схеме аппаратными драйверами являются драйверы сетевых адаптеров, которые выполняют функции низкоуровневых канальных протоколов (Ethernet, FR, ATM). Они организуют передачу кадров данных между компьютерами одной сети. Над ними располагается слой модулей, которые реализуют функции более интеллектуальных протоколов (IP, IPX), которые могут обеспечить взаимодействие компьютеров разных сетей с производительными связями. Они находятся в промежуточном слое и непосредственно с аппаратурой не взаимодействуют. Еще выше располагается слой транспортных протоколов (CP/UDP,SPX), которые отвечают за надежную связь между компьютерными сетями. Драйверы верхнего уровня (HTTP,FTP,SMB) представляют пользователям конечные услуги по доступу к гипертекстовой информации к архивам файла и т.д. В подсистеме управления графическими устройствами (мониторы и принтеры) на нижнем уровне работают аппаратные драйверы, позволяющие управлять графическим адаптером или принтером, заставляя выполнять набор примитивных графических операций: вывод точки, символа и т.д. Высокоуровневые графические драйверы строят на базе этих операций более мощные операции (масштабирование изображения, преобразование графического формата в соответствии с разрешающими возможностями устройства). Самый верхний уровень подсистемы составляет менеджер окон, который создает для каждого приложения виртуальный образ экрана в виде набора окон, в котором приложение может выводить свои графические данные. В подсистеме управления дисками аппаратные драйверы поддерживают для верхних уровней представления диска, как последовательного набора блоков одинакового размера, преобразуя вместе с контроллером номер блока, в более сложный адрес, состоящий из номера цилиндра, головки и сектора. Понятие файла такие драйверы не поддерживают. Для этого в ОС устанавливается несколько высокоуровневых драйверов файловых систем (UFS, NTFS, FAT), работающих с общеаппаратными драйверами, но по-своему представляющих файловую систему пользователя процессов. Может присутствовать общий драйвер верхнего уровня, играющий роль диспетчера нескольких драйверов файловых систем. Условно разделяют как драйверы, так и периферийные устройства делятся на два типа: блок-ориентированные и байт-ориентированные. Блок-ориентированные драйверы управляют устройствами прямого доступа, которые хранят информацию в блоках фиксированного размера, каждый из которых имеет фиксированный адрес (диск в качестве примера). Устройства, с которым работают блок-ориентированные драйверы - не адресуемы и не позволяют производить операцию поиска данных, они генерируют или потребляют последовательность байтов. Date: 2015-10-21; view: 694; Нарушение авторских прав |