русс | укр

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

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

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

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


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

Технология ввода вывода


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


Пользовательский уровень программного обеспечения

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

Подсистема спулинга (spooling). Спулинг - это способ работы с выделенными (не разделяемыми между процессами) устройствами в мультипрограммной системе. Типичное устройство, требующее спулинга - принтер.

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

 

 

 

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

Программа, которая общается с контроллером устройства ввода-вывода, отдает ему команды и получает ответы, называется драйвером устройства.

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

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

 

Три способа установки драйвера в ядро.

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



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

Третий способ: операционная система может принимать новые драйверы, не прерывая работы, и оперативно устанавливать их, не нуждаясь при этом в перезагрузке. Этот способ редко используется, но сейчас он становится все более и более распространенным. Такие съемные устройства, как шины USB и IEEE 1394, всегда нуждаются в динамически загружаемых драйверах.

 



<== предыдущая лекция | следующая лекция ==>
Структура подсистемы ввода-вывода | Способы ввода-вывода


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


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

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

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


 


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

 
 

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

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