Прямой доступ к памяти

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

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

Когда внешнее устройство оказывается готовым к передаче очередного символа блока, оно «прерывает» процессор. Однако в случае ПДП состояние процессора запоминать не требуется, поскольку передача одного символа означает для процессора скорее задержку, или приостановку, чем обычное прерывание. Символ передается в основную память под управлением специальных аппаратных средств, а после завершения передачи процессор возобновляет работу.

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

Защита памяти

Защита памяти — важное условие для нормальной работы многоабонентских вычислительных систем (систем коллективного пользования). Защита памяти ограничивает диапазон адресов, к которым разрешается обращаться программе. Защиту памяти для программы, занимающей непрерывный блок ячеек памяти, можно реализовать при помощи так называемых граничных регистров, где указываются старший и младший адреса этого блока памяти. При выполнении программы все адреса обращения к памяти контролируются, чтобы убедиться в том, что они находятся в промежутке между адресами, указанными в граничных регистрах. Защиту памяти можно реализовать также при помощи ключей защиты памяти, относящихся к определенным областям основной памяти; программе разрешается обращение к ячейкам памяти только тех областей, ключи которых совпадают с ключом данной программы.

Буферизация

Буфер — это область основной памяти, предназначенная для промежуточного хранения данных при выполнении операций ввода-вывода. Скорость выполнения операции ввода-вывода зависит от многих факторов, связанных с характеристиками аппаратуры ввода-вывода, однако в обычном случае ввод-вывод производится не синхронно с работой процессора. При вводе, например, данные помещаются в буфер средствами канала ввода-вывода; после занесения данных в буфер процессор получает возможность доступа к этим данным.

При вводе с простой буферизацией канал помещает данные в буфер, процессор обрабатывает эти данные, канал помещает следующие данные и т. д. В то время, когда канал заносит данные, обработка этих данных производиться не может, а во время обработки данных нельзя заносить дополнительные данные. Метод двойной буферизации позволяет совмещать выполнение операции ввода-вывода с обработкой данных; когда канал заносит данные в один буфер, процессор может обрабатывать данные другого буфера. А когда процессор заканчивает обработку данных одного буфера, канал будет заносить новые данные опять в первый буфер. Такое поочередное использование буферов иногда называют буферизацией с переключением («триггерной» буферизацией).








Дата добавления: 2017-11-04; просмотров: 461;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.