Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория 2 / 2 Организация вычислительных процессов / Организация вычислительных процессов.docx
Скачиваний:
53
Добавлен:
11.04.2015
Размер:
118.49 Кб
Скачать

11) Организация параллельной работы устройств ввода-вывода и процессора.

Эволюция ввода – вывода

1. Процессор непосредственно управляет периферийным устройством.

2. Устройство управляется контроллером. Процессор использует программируемый ввод - вывод без прерываний (переход к абстракции интерфейса ввода - вывода) – режим обмена с опросом готовности.

3. Использование контроллера прерываний. Ввод-вывод, управляемый прерываниями – режим обмена с прерываниями.

4. Использование модуля (канала) прямого доступа к памяти. Перемещение данных в память (из нее) без использования процессора.

5. Использование отдельного специализированного процессора ввода-вывода, управляемого центральным процессором.

6. Использование отдельного компьютера для управления устройствами ввода-вывода при минимальном вмешательстве центрального процессора.

1. Программируемый ввод-вывод без прерываний

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

Недостаток: большие потери процессорного времени

2. Ввод-вывод, управляемый прерываниями.

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

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

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

Драйверы, работающие в режиме прерываний, представляют собой сложный комплекс программных модулей и могут иметь несколько секций: секцию запуска, одну или несколькосекций продолженияисекцию завершения.

Секция запускаинициирует операцию ввода-вывода. Эта секция запускается для включения устройства ввода-вывода или просто для инициализации очередной операции ввода-вывода.

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

Секция завершенияобычно выключает устройство ввода-вывода или просто завершает операцию.