ВУЗ:
Составители:
ОСНОВНЫЕ РЕЖИМЫ ВВОДА - ВЫВОДА
Для учета особенностей реализации процессов ввода-вывода и специфики различного
типа ПУ используются три режима ввода-вывода информации: программный ввод-вывод,
ввод-вывод в режиме прерываний и с прямым доступом к памяти.
Интерфейсы должны учитывать возможность реализации всех 3-х режимов ввода-вывода.
Программный ввод-вывод. Здесь инициализация и управление процессом ввода
-вывода
осуществляет процессор. Существует три способа его выполнения (см. рис.1).
а) б)
Нет
Рис.1. Программный ввод-вывод
Первый способ – прямой, используется для синхронных ПУ, т.е. устройств, которые всегда готовы к
работе и циклов ожидания не требуется. Второй – условный с занятием цикла, когда при не готовности
ПУ, процессор ждет до тех пор, пока наступит его готовность. Третий – условный с совмещением. В
отличие от предыдущего, процессор не ждет
готовности ПУ, а переходит к продолжению программы с
периодической проверкой готовности ПУ.
Ввод-вывод в режиме прерываний. В этом случае инициатором начала процесса ввода-вывода
является ПУ. Оно, когда готово, подает сигнал процессору "запрос на прерывание". Процессор, если
ПУ разрешен такой режим, завершает текущую команду и переходит к выполнению процесса ввода-
вывода (см. рис. 2). Сначала он осуществляет контекстное переключение, т.е. запоминает свое
состояние, чтобы можно было после продолжить программу, идентифицирует ПУ и передает
управление драйверу данного ПУ (ПП), который и осуществляет ввод или вывод информации.
Идентификация ПУ производится с помощью адреса вектора прерывания, который содержит номер
ячейки, где хранится первая команда этого драйвера. Адрес вектора прерывания ПУ передается
процессору от контроллера прерываний.
ВВ
Готов?
ВВ
Готов?
ВВ
а) Прямой - для
синхронных ПУ
б) Условный с
занятием цикла
в) Условный с
замещением
Нет
Нет
Да
Да
ОСНОВНЫЕ РЕЖИМЫ ВВОДА - ВЫВОДА Для учета особенностей реализации процессов ввода-вывода и специфики различного типа ПУ используются три режима ввода-вывода информации: программный ввод-вывод, ввод-вывод в режиме прерываний и с прямым доступом к памяти. Интерфейсы должны учитывать возможность реализации всех 3-х режимов ввода-вывода. Программный ввод-вывод. Здесь инициализация и управление процессом ввода-вывода осуществляет процессор. Существует три способа его выполнения (см. рис.1). а) Прямой - для б) Условный с в) Условный с а) б) замещением синхронных ПУ занятием цикла Нет ВВ Готов? Нет Готов? Нет Да Да ВВ ВВ Рис.1. Программный ввод-вывод Первый способ – прямой, используется для синхронных ПУ, т.е. устройств, которые всегда готовы к работе и циклов ожидания не требуется. Второй – условный с занятием цикла, когда при не готовности ПУ, процессор ждет до тех пор, пока наступит его готовность. Третий – условный с совмещением. В отличие от предыдущего, процессор не ждет готовности ПУ, а переходит к продолжению программы с периодической проверкой готовности ПУ. Ввод-вывод в режиме прерываний. В этом случае инициатором начала процесса ввода-вывода является ПУ. Оно, когда готово, подает сигнал процессору "запрос на прерывание". Процессор, если ПУ разрешен такой режим, завершает текущую команду и переходит к выполнению процесса ввода- вывода (см. рис. 2). Сначала он осуществляет контекстное переключение, т.е. запоминает свое состояние, чтобы можно было после продолжить программу, идентифицирует ПУ и передает управление драйверу данного ПУ (ПП), который и осуществляет ввод или вывод информации. Идентификация ПУ производится с помощью адреса вектора прерывания, который содержит номер ячейки, где хранится первая команда этого драйвера. Адрес вектора прерывания ПУ передается процессору от контроллера прерываний.
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »