русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Драйверы устройств


Дата добавления: 2013-12-23; просмотров: 647; Нарушение авторских прав


Драйвер – это программа/программный модуль, управляющий внешним устройством и содержащий весь зависимый от устройства код.

При реализации запроса драйвера он:

1. Преобразуется из абстрактной формы в конкретную.

2. Передается контроллеру записью в его регистр.

3. Принимается решение о блокировке драйвера.

Драйверы являются частью ядра системы, исполняются в привилегированном режиме и имеют доступ на запись с элементом данных программ и части ядра.

Для каждого класса устройств используется фиксированный набор операций (команд). Базовый набор команд может быть расширен при помощи:

1. Интерпретация данных в пользовательскую программу

2. Использование терминальной БД.

3. Использование фильтров – заключается в использовании промежуточного языка команд интерпретируемого фильтром.

Обработку запроса можно разделить на три фазы:

1. Фаза предобработки:

a. Проверка допустимости параметров

b. Копирование или отображение данных из пользовательского АП в системное

c. Преобразование выводимых данных

d. Обращение к процедурам драйвера и передача запроса

2. Исполнение запросов

3. Постобработка

a. Анализ результата операции

b. Действие по восстановлению в случае неуспеха

c. Копирование или отображение данных в пользовательское АП (преобразование данных)

d. Оповещение программы о завершении запроса

 

Система ввода/вывода UNIX

Включает в себя драйвер внешних устройств и средство буферизации (буферный пул и комплекс программ по управлению им). Буферы располагаются в области ядра, размер каждого соответствует размеру блоку данных диска. С каждым буфером связана структура данных (заголовок), содержащая:

1. Данные о состояния буфера (занят/свободен, чтения/запись, признак отложенной записи, адрес, ошибки ввода/вывода, ссылка на следующий в очереди к устройству).



2. Данные об устройстве (тип устройства, номер устройства, номер блока на устройстве).

 

Синхронная запись инициируется функцией bwrite и начинает немедленный обмен данными с физическими устройствами. В процессе может быть предусмотрена собственная реакция на ошибки.

Асинхронная запись инициируется функцией bawrite и так же начинает немедленный обмен данными с устройствами. Но ошибки ввода\вывода переданы в процесс быть не могут.

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



<== предыдущая лекция | следующая лекция ==>
Лекция 10 | Лекция 11


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.006 сек.