Как же получается действительный физический адрес?
Несмотря на то, что это время кажется не очень большим, оно ставит некоторые ограничения на максимально допустимую частоту поступающих прерываний, с которыми могут справиться процессор и операционная система. Поэтому очень важно оптимизировать по времени работу блоков операционной системы, идущих с закрытым прерыванием. Как мы знаем, при прерывании машина переводится в супервизорный режим, в состояние с запрещением дальнейшего прерывания и с блокировкой схемы "приписывания" адресов. Для того чтобы не потерять, точнее, не упустить время реакции на другие прерывания, которые могут возникнуть в момент работы центрального процессора в этом режиме с "закрытыми глазами", нужно заботиться о том, чтобы как можно скорее "открыть" прерывания.
В диспетчере принята следующая логика, уменьшающая вероятность потери прерываний. Любая программа, реагирующая на конкретную причину прерываний, состоит из двух блоков: блока минимально необходимой реакции, идущего с закрытым прерыванием, и блока, который может производить работу с открытым (незапрещенным) прерыванием. После выполнения блоков минимально необходимой реакции управление передается на блок поиска старшего разряда, давшего прерывание. В том случае, если не появилось новых прерываний, управление передается блоку реакции, который идет с открытым прерыванием. Блок-схема программы реакции на прерывания представлена на рис. 2. Из приведенной блок-схемы видно, что блоки минимальной реакции на соответствующее прерывание завершают свою работу постановкой в очередь заказа на дальнейшую обработку данного прерывания, которая может идти уже с открытым прерыванием. Чтобы была более понятна разница между блоком минимальной реакции на i-е прерывание и блоком дальнейшей обработки, приведем следующий пример.
рис. 2
В процессе считывания информации с перфокарт прерыванием фиксируется момент появления считанной строки (или столбца) на регистре мультиплексного канала. Эта информация должна как можно скорее быть снята с этого регистра, чтобы освободить его для дальнейшей работы.
Блок минимальной реакции выполняет работу по освобождению входного регистра и записи информации в ячейки ОЗУ. Кроме этой работы блок реакции на прерывания должен выполнить большой объем работы по семантическому контролю содержания строки, по компоновке символов для засылки их в память машины, т. е. выполнить работы по редактированию введенной информации. Эта работа должна быть выполнена до прихода со считывающего устройства следующей строки информации. Между моментами появления строк проходит сравнительно большой промежуток времени, и эти работы по редактированию на проходе можно выполнять "не спеша".
Блок минимальной реакции заканчивается выдачей заказа на работу по редактированию, причем этой работе назначается сравнительно невысокий приоритет. Блок выбора работы для продолжения обслуживаний прерываний выбирает на исполнение работу с наивысшим приоритетом, вообще говоря, вне зависимости от того, в какой последовательности реально возникли прерывания, поставившие в очередь работы на исполнение.
Для того чтобы лучше пояснить значение аппарата защиты памяти в БЭСМ- 6, расскажем о том, как этим аппаратом пользуется операционная система (ОС). Задача, поступающая в систему, снабжается некоторым описанием тех ресурсов, которые она потребует от системы в процессе своего решения. Эта информация называется паспортом задачи. В частности, в паспорте указывается число листов ОЗУ, которое ей потребуется для решения.
На основе описания ресурсов требуемой математической памяти ОС анализирует наличие свободных ресурсов в машине к моменту поступления задачи, и если свободных ресурсов достаточно, то задача вводится в решение. При этом ОС назначает каждому требуемому математическому листу памяти задачи физический лист оперативного запоминающего устройства либо страницу на магнитном барабане. В результате такого назначения в операционной системе формируется таблица соответствия математических листов их физическому месторасположению.
В тот момент, когда данная задача начинает решаться, точнее, в тот момент, когда в ее распоряжение отдается центральный процессор, на основе этой таблицы формируется содержание аппаратных регистров приписки для тех математических листов, которым выделена в данный момент оперативная физическая память. Тем математическим листам, которым выделена память на барабанах или которые вообще не затребовала задача, приписывается признак защиты. Если в ходе своего решения задача не обращается к листам, отображенным на магнитные барабаны, или к листам, для нее не существующим, то процесс счета происходит нормально. В том случае, если программа задачи обратилась к математическому листу, который находится на барабане, срабатывает прерывание по защите, и операционная система, анализируя причину прерывания, стремится "перекачать" этот лист с барабана. на первый свободный лист оперативной памяти. Иногда для этого ей приходится "сбросить" какой-либо лист на барабан, освободив тем самым лист оперативной памяти. Пока производится "подкачка" листов для того, чтобы можно было продолжить решение задачи, прерванное по защите программы, центральный процессор отдается в распоряжение другой задаче. Очевидно, стратегия, т. е. методы распределения листов задач между оперативной памятью и памятью на магнитном барабане должны быть выбраны так, чтобы минимизировать число "сбросов" и "подкачек", так как это прямо влияет на эффективность мультипрограммной работы. Таких методов существует много, и о них должен быть особый разговор, выходящий за рамки данной книги. Итак, система защиты и приписки используется операционной системой для организации динамического распределения ресурсов двухуровневой памяти. Но этой же системой ОС пользуется для того, чтобы совместить вычисления с работой внешних запоминающих устройств и устройств ввода-вывода.
Другое по технологическим наукам
Магнетизм вращения Франсуа Араго
Стремясь
ревностно к открытиям, он был осторожен в своих выводах и больше всего любил
прокладывать новые пути, по которым можно было прийти к установлению тождества
причин разнородных явлений. Расширяя для ученых пределы знания, он обладал
удивительным даром распространять вокруг себя приобретенны ...