
- •Глава 7
- •Глава 7
- •7.1.1 Доступ к внешним устройствам
- •7.1.2. Простые внешние устройства
- •7.1.3. Порты передачи данных
- •7.1.4 Шины
- •7.2 Задачи ос по управлению устройствами ввода-вывода
- •7.2.1 Организация параллельной работы устройств ввода-вывода и процессора
- •7.2.2 Согласование скоростей обмена и кэширование данных
- •7.2.3 Разделение устройств и данных между процессами
- •7.2.4 Обеспечение удобного логического интерфейса между устройствами
- •7.2.5 Поддержка широкого спектра драйверов и простота включения
- •7.2.6 Динамическая загрузка и выгрузка драйверов
- •7.2.7 Поддержка нескольких файловых систем
- •7.2.8 Поддержка синхронных и асинхронных операций ввода-вывода
- •7.3 Многослойная модель подсистемы ввода-вывода
- •7.3.1 Общая схема
- •7.3.2 Менеджер ввода-вывода
- •7.3.3 Многоуровневые драйверы
Системное программное обеспечение и операционные системы
|
КР ВУЗ ФПТ
Учебное пособие
Глава 7
Управление устройствами ввода-вывода
2007
Рекомендуемая литература:
-
В.Г.Олифер, Н.А.Олифер. Сетевые операционные системы. Учебное пособие.-СПб.:БХВ-Петербург, 2006.-536с.
-
В.А.Шеховцов. Операційні системи. Підручник .-К.:Виканавча група ВНV. 2005. 576с.
-
Столлингс В. Операционные системы. М.: Вильямс, 2001. -672с.
Глава 7
Управление устройствами ввода-вывода
7.1 Внешние устройства
Все без исключения приложения вычислительных систем, так или иначе, связаны с использованием внешних, или периферийных устройств. Даже чисто вычислительные задачи нуждаются в устройствах для ввода исходных данных и вывода результата. Без преувеличения можно сказать, что процессор, не имеющий никаких внешних устройств, абсолютно бесполезен.
У вычислительных систем первых поколений набор периферийных устройств часто исчерпывался упомянутыми устройствами для ввода исходных данных и вывода результата вычислений, поэтому до сих пор модули ОС, работающие с периферией, называют подсистемой ввода-вывода.
Подсистема ввода-вывода (input/output subsystem) –выполняет функции обмена данными с перифирийными устройствами.
У большинства современных компьютеров набор внешних устройств весьма обширен, и функции многих из них не могут или лишь с определенной натяжкой могут быть описаны как ввод и вывод.
С функциональной точки зрения внешние устройства, подключаемые к современным компьютерам, можно примерно разделить на следующие категории:
□ Устройства внешней памяти, которые в свою очередь, можно разделить на два класса.
• Устройства памяти с произвольным доступом, главным образом магнитные диски. К этому же классу относятся дискеты, магнитооптические и оптические диски. Удачным универсальным обозначением для этого класса устройств является принятое в документации фирмы IBM сокращение DASD (Direct Access Storage Device — запоминающее устройство прямого доступа.
• Устройства памяти с последовательным доступом. В основном, это лентопротяжные устройства (стриммеры и др.).
-
Сетевые и телекоммуникационные устройства.
-
Устройства алфавитно-цифрового ввода-вывода: печатающие устройства, телетайпы, текстовые терминалы.
-
Устройства звукового ввода-вывода.
-
Устройства графического ввода-вывода: сканеры или видеодекодеры (ввод), графические дисплеи, плоттеры, графические принтеры или видеокодеры (вывод).
-
Позиционные устройства ввода: мыши, планшеты-дигитайзеры, световые перья и т. д.
-
Сенсорные и исполнительные устройства управляющих систем.
Например, у бортового компьютера самолета сенсорными устройствами могут являться гироскопы или другие датчики ориентации, трубка Пито (датчик, определяющий скорость самолета относительно воздуха), радар и терминал глобальной системы позиционирования, а исполнительными устройствами — шаговые электромоторы, управляющие рулевыми плоскостями, топливные насосы двигателей и т. д.
Все перечисленные устройства либо передают информацию центральному процессору (и, таким образом, могут быть объявлены устройствами ввода), либо получают информацию от него (устройства вывода), либо могут как передавать, так и принимать информацию (устройства ввода-вывода). Эта классификация может показаться неестественной, потому что в соответствии с ней в одну категорию попадают столь функционально неродственные устройства, как сетевой адаптер и жесткий диск (устройства ввода-вывода), или печатающее устройство и рулевая машинка летательного аппарата (устройства вывода), однако разработчику операционной системы во многих случаях этой классификации оказывается достаточно.
Нередко, впрочем, в эту классификацию вводят еще один уровень: устройства ввода делят на пассивные (выдающие данные только в ответ на явные запросы центрального процессора) и активные, или генераторы событий, которые могут порождать данные тогда, когда их об этом явно не просили. Ко второй категории относятся интерактивные устройства ввода (клавиатура, мышь), сетевые адаптеры, таймеры различного рода, а также многие датчики управляющих систем.