Организация устройст ввода/вывода (УВВ), страница 2

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

При выполнении ввода-вывода необходимо обеспечить синхронизацию обмена данными и распределить для них зоны памяти. В структуре, показанной на рис.1-3а, этими действиями занимается процессор ЭВМ, а в структуре на рис.1-3б - канал ввода-вывода. Если в какой-либо программе пользователя, выполняемой на ЭВМ, встречается указание на определенное устройство ввода-вывода, то инициализируется процедура ввода-вывода. Устройства ввода-вывода могут быть индивидульного и коллективного пользования в зависимости от количества одновременно обслуживаемых программ. Как можно понять из названия индивидуальное устройство обслуживает в данный момент только одну программу пользователя; устройство коллективного пользования может работать одновременно с несколькими программами, выполняемыми на ЭВМ. Примером устройства индивидуального типа может служить принтер, он запускается только для одной программы, накопитель на магнитных дисках - пример устройства коллективного пользования.

     Процедура ввода-вывода состоит, в основном, из трех операций:

подготовка

- формирование данных, форматирование данных, указание адреса данных и устройств ввода-вывода;

распределение

- физическое представление символьного названия, назначение линии передачи;

выполнение

-  обеспечение синхронизации, формы выдачи, передача данных.

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

Основной задачей системы ввода-вывода является обеспечение обмена данными между оперативной памятью ЭВМ и устройствами ввода-вывода. Для того чтобы осуществить обмен система ввода-вывода должна быть способной выполнять следующие функции:

       1) обеспечивать адресацию подготовленных к вводу-выводу данных и обновлять адреса при передаче каждого байта или слова;

      2) обеспечивать асинхронное взаимодействие устройств ввода-вывода и основной памяти (учитывать сравнительно низкую скорость работы устройств ввода-вывода);

3) обеспечивать управление работой устройств ввода-вывода. Кроме реализации самой передачи данных система ввода-вывода выполняет ряд других операций, необходимых для нормальной работы устройства ввода-вывода - перевод строки в дисплее, перевод каретки печатающего устройства, перемотка магнитной ленты, перемещение магнитной головки в накопителях на магнитных дисках. Все эти операции подготавливаются заранее, заносятся в оперативную память до начала ввода-вывода;

         4) преобразование информации, передаваемой по шинам.

    Взаимодействие внешних устройств с ядром ЭВМ может осуществляться с использовнием одного из трех способов:

           - по флагу состояния;

           - по прерываниям;

           - по прямому доступу к памяти.

   Взаимодействие по флагу состояния означает, что интерфейс ПУ содержит некоторую линию, высокий (или низкий) уровень на которой указывает на готовность ПУ, т.е. ПУ подготовил данные и выставляет флаг. Процессор постоянно опрашивает эту линию и считывает данные, когда флаг выставлен. Недостаток этого способа состоит в том, что внешнее устройство не может само инициировать обмен, оно может только “намекнуть” процессору, что готово и затем ждать, пока процессор не обратит не него внимание.