Функции ввода-вывода

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

Процессор может не только читать данные из памяти и записывать их туда, обращаясь по адресу к определенной ячейке, но также читать и записывать дан­ные в устройство ввода-вывода. Таким образом устройство ввода-вывода (например, контроллер диска) обменивается данными с процессором. При этом процессор должен идентифицировать устройство, которое будет управляться оп­ределенным устройством ввода-вывода. Из команд ввода-вывода можно сформи­ровать такие же последовательности, как показанные на рис. 1.4 последователь­ности команд обращения к памяти*

Иногда желательно, чтобы обмен данными с памятью выполнялся непо­средственно устройством ввода-вывода, а процессор в это время выполнял другие задания. В этом случае процессор передает устройству ввода-вывода полномочия для чтения из памяти и записи в память, что позволяет освобо­дить процессор. Во время такой передачи данных устройство ввода-вывода читает или записывает команды в память, принимая на себя ответственность за этот обмен. Такой режим, известный под названием прямого доступа к памяти (direct memory access — DMA), рассматривается в следующих разде­лах этой главы.

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