Cтраница 1
Устройства ввода-вывода можно грубо разделить на две категории: блочные устройства и символьные устройства. Блочными называются устройства, хранящие информацию в виде блоков фиксированного размера, причем у каждого блока имеется адрес. Обычно размеры блоков варьируются от 521 до 32 768 байт. Важное свойство блочного устройства состоит в том, что каждый его блок может быть прочитан независимо от остальных блоков. Наиболее распространенными блочными устройствами являются диски. [1]
![]() |
Скорости данных типичных устройств. [2] |
Устройства ввода-вывода покрывают огромный диапазон скоростей, что создает определенные трудности для программного обеспечения, которому приходится обеспечивать хорошую производительность на скоростях передачи данных, различающихся несколькими порядками. В табл. 5.1 приведены скорости данных для некоторых часто встречающихся устройств. Со временем у многих устройств появляются все более быстрые новые модели. [3]
![]() |
Скорости данных типичных устройств. [4] |
Устройства ввода-вывода обычно состоят из механической части и электронной части. Часто эти части можно разделить для придания модели более модульного и общего вида. Электронный компонент устройства называется контроллером устройства или адаптером. В персональных компьютерах он часто принимает форму печатной платы, вставляемой в слот расширения. Механический компонент находится в самом устройстве. [5]
Проблемам ввода-вывода было посвящено много исследований, однако большая их часть была нацелена скорее на изучение конкретных устройств, нежели на ввод-вывод в целом. [6]
Система ввода-вывода в UNIX довольно проста. Как правило, все устройства ввода-вывода выглядят как файлы, и доступ к ним осуществляется с помощью тех же системных вызовов read и write, которые используются для доступа к обычным файлам. В некоторых случаях должны быть заданы параметры устройства, для чего служит специальный системный вызов. В следующих разделах мы рассмотрим эти вопросы. [7]
![]() |
Система ввода-вывода BSD UNIX. [8] |
Система ввода-вывода разделена на два основных компонента: обработку блочных специальных файлов и обработку символьных специальных файлов. [9]
Менеджер ввода-вывода формирует каркас для управления устройствами ввода-вывода и предоставляет общие службы ввода-вывода. Он предоставляет остальной части системы независимый от устройств ввод-вывод, вызывая для выполнения физического ввода-вывода соответствующий драйвер. Файловые системы формально являются драйверами устройств под управлением менеджера ввода-вывода. Существует два драйвера для файловых систем FAT и NTFS, независимые друг от друга и управляющие различными разделами диска. Все файловые системы FAT управляются одним драйвером. [10]
Менеджер ввода-вывода родственен менеджеру plug-and - play. Основная идея механизма plug-and - play заключается в настраиваемой шине. За многие годы было разработано множество шин, включая PC Card, PCI, USB, IEEE 1394 и SCSI, поэтому менеджер plug-and - play может послать каждому разъему запрос и попросить устройство назвать себя. Определив, что за устройство подключено к шине, менеджер plug-and - play выделяет для него аппаратные ресурсы, такие как уровни прерываний, находит необходимые драйверы и загружает их в память. При загрузке каждого драйвера для него создается объект драйвера. Для некоторых шин, например SCSI, настройка происходит только во время загрузки операционной системы. Для других шин, таких как USB и IEEE 1394, она может производиться в любой момент, для чего требуется тесный контакт между менеджером plug-and - play, драйвером шины ( который и выполняет настройку) и менеджером ввода-вывода. [11]
Менеджер ввода-вывода также тесно связан с менеджером энергопотребления. [12]
Устройства ввода-вывода также могут находиться в различных состояниях. Включением и выключением этих устройств занимаются вместе менеджер энергопотребления и менеджер ввода-вывода. Обратите внимание, что состояния со 2 по б используются, только если центральный процессор бездействовал в течение определенного времени. [13]
Интерфейс ввода-вывода - это блок, который соединяет два устройства, например канал с УУ УВВ. Он представляет собой систему стандартного соединения, которая позволяет подключать к каналам разнотипные устройства ввода-вывода, а следовательно, произвольно устанавливать конфигурацию ЭВМ в соответствии с запросами потребителей. Интерфейс обеспечивает полную взаимозаменяемость однотипных устройств ввода-вывода. [14]
Организация ввода-вывода по аналогии с обращением к памяти упрощает процесс обмена данными, что является достоинством такого способа организации ввода-вывода. Поскольку обращение микропроцессора к устройствам ввода-вывода по форме не отличается от обращения к памяти, способ реализации этих обращений оказывается одним и тем же. Следовательно, исключается необходимость в специальных командах ввода-вывода. [15]