Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



Главным является принцип: любые операции по управлению вводом/выводом объявляются привилегированными и могут выполняться только кодом самой ОС.

Как правило, в режиме супервизора выполнение команд ввода/вывода разрешено, а в пользовательском режиме – запрещено.

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

Можно назвать три основные причины, по которым нельзя разрешать каждой отдельной пользовательской программе обращаться к внешним устройствам непосредственно:

Необходимость разрешать возможные конфликты доступа к устройствам ввода/вывода.

Желание увеличить эффективность использования этих ресурсов.

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

Управление вводом/выводом осуществляется операционной системой, компонентом, который чаще всего называют супервизором ввода/вывода, В перечень основных задач, возлагаемых на супервизор, входят следующие:

получает запросы на ввод/вывод от прикладных задач и от программных модулей самой операционной системы.

вызывает соответствующие распределители каналов и контроллеров, планирует ввод/вывод.

инициирует операции ввода/вывода и в случае управления вводом/выводом с использованием прерываний предоставляет процессор диспетчеру задач с тем, чтобы передать его первой задаче, стоящей в очереди на выполнение;

при получении сигналов прерываний от устройств ввода/вывода супервизор идентифицирует их и передаёт управление соответствующей программе обработки прерывания.

осуществляет передачу сообщений об ошибках, если таковые происходят в процессе управления операциями ввода/вывода;

посылает сообщения о завершении операции ввода/вывода запросившему эту операцию процессу и снимает его с состояния ожидания ввода/вывода, если процесс ожидал завершения операции.

Прикладные программы не могут непосредственно связываться с устройствами ввода/вывода независимо от использования устройств.

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





Дата публикования: 2015-10-09; Прочитано: 1295 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...