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

Ввод-вывод



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

Контроллеры устройств для различных устройств различны.

Драйвер – программная часть ОС, которая взаимодействует с контроллером.

Драйвера устройств работают в режиме ядра, поэтому для каждой ОС для одного и того же устройства требуются различные драйвера.

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

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

В некоторых случаях регистры располагаются в устройствах над портами и каждый регистр имеет свой адрес порта. Запись/чтение в регистр порта по командам in/out.

Как правило, ввод-вывод может осуществляться тремя способами:

1. Пользовательская программа выдает системный запрос на ввод-вывод. Ядро ОС анализирует запрос вызова процедуры. Другое проверяется состояние устройства и ждёт его готовности. Если готово, помещает данные в регистр устройства. Недостаток – ожидание готовности устройства.

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

3. Используется специальный контроллер прямого доступа к памяти DMA, с помощью которого осуществляется передача данных между ОП и устройствами без участия процессора (драйверы). И процессор, вызывая микросхему DMA, сообщает ей сколько байт нужно передать, адрес устройства и данных, направление передачи данных и процесс записи на внешние устройства без помощи процессора. По окончании ввода-вывода генерируется прерывание.

Каждый процессор ввода-вывода может подключать к себе 1000 устройств, при этом они работают параллельно.

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





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



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