русс | укр

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

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

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

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


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

Лекция 10


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


Монтирование файловых систем VFS

 

 

Управление вводом/выводом

http://bourabai.kz/os/lecture16.htm

Устройства ввода/вывода делятся на два типа:

1. Блок-ориентированное устройство – хранит информацию в блоках фиксированного размера, каждый из которых имеет собственный адрес. Пример: жесткий диск.

2. Байт-ориентированное устройство – не адресуемо и генерирует или потребляет последовательности байтов. Пример: монитор, сканер, сетевой адаптер.

Внешнее устройство, как правило, состоит из механического и электронного компонента (контроллер или адаптер). Каждый контроллер имеет несколько регистров, использующихся для взаимодействия с ЦП и являющихся частью физического адресного пространства. Адреса регистров ввода/вывода могут образовывать свое адресное пространство.

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

Функциями подсистемного ввода/вывода являются:

1. изоляция устройств и взаимодействия с ними

2. единообразное именование

3. обработка ошибок

Большая часть ПО ввода/вывода не зависит от устройств и выполняет функции:

1. Обеспечение общего интерфейса к драйверам устройств.

2. Именование устройств.

3. Защита устройств.

4. Обеспечение независимого размера блоков.

5. Буферизация.

6. Распределение памяти для блок-ориентированных устройств.

7. Распределение и освобождение выделенных устройств.

8. Уведомление об ошибках.

Пользовательский слой ПО ввода/вывода включает:

· системные библиотеки;

· спулинг (spooling) – это способ работы с выделенными устройствами в мультипрограммной среде. Спул – это буфер, содержащий входные или выходные данные устройства, разделяемый системными средствами между процессами.



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

Задача планирования использования устройства может быть реализована:

1. В базовой подсистеме ввода/вывода.

2. Внутри драйвера соответствующего устройства.

Приложения, библиотечные функции – пользовательский слой;

Системные вызовы, система буферных данных – независимый слой;

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

 



<== предыдущая лекция | следующая лекция ==>
Виртуальная ФС VFS (Virtual File System) | Драйверы устройств


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


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

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

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


 


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

 
 

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

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