Cтраница 1
Адреса постоянно распределенной области памяти. [1] |
Маска системы позволяет замаскировать прерывания от ввода-вывода и внешние прерывания. [2]
Маска системы предназначена для маскирования прерываний ввода-вывода и внешних. Если соответствующий бит установлен в единицу, прерывание разрешено, если - в нуль, прерывание запрещено. Запрос на прерывание будет храниться в регистре прерываний до тех пор, пока не будет изменена маска прерывания. Ключ защиты памяти выделяется программе для проверки, не записывает ( читает) ли она данные в область другой программы и не портят ли ее область памяти. Если средства защиты не используются в системе, то биты 8 - 11 равны нулю. [3]
Маска системы позволяет замаскировать прерывания от ввода-вывода и внешние прерывания. Биты 0 - 6 маскируют каналы с номерами соответственно 0 - 6, а бит 7 - внешние прерывания. Если прерывание от какого-либо канала замаскировано, то сигнал прерывания от этого канала не теряется, а хранится в канале необработанным. Как только в качестве текущего PSW будет загружено такое PSW, в котором данный канал не замаскирован, сигнал прерывания, хранящийся в канале, вызовет прерывание в системе. После этого сигнал прерывания в канале больше не хранится. [4]
Очевидно, маска системы в новом PSW должна содержать нули. [5]
Биты 0 - 7 содержат Маску системы. Она относится к прерываниям ввода - вывода и внешним прерываниям и будет описана ниже в разделе, где рассматриваются эти прерывания. [6]
Когда бит блокировки команды установить маску системы - SSM - бит 1 управляющего регистра 0 - установлен в 1, выполнение этой команды подавляется и происходит программное прерывание по специальной операции. В исходном состоянии значение бита блокировки SSM равно нулю. [7]
Структура слова состояния программы. [8] |
Биты 0 - 7 содержат маску системы. Биты 8 - 11 содержат ключ защиты памяти. Биты 12 - 15 определяют маску машинных прерываний ( бит 13) и различные режимы работы процессора. Биты 16 - - 31 со держат код прерывания. Их значение позволяет определить причину прерывания. Биты 32 - 33 содержат код длины команды, а биты 34 - 35 - код условия ( признак результата), вырабатываемого при выполнении арифметических и логических операций ( некоторые ПР были рассмотрены в § 5.3), Биты 36 - 39 содержат маску, программных прерываний. Биты 40 - 63 содержат адрес следующей команды. После того как с помощью ССП была выбрана команда и поступила на обработку в процессор, адрес этой команды в ССП будет заменен на адрес следующей команды. [9]
Биты 0 - 7 содержат Маску системы. Она относится к прерываниям ввода - вывода и внешним прерываниям и будет описана ниже в разделе, где рассматриваются эти прерывания. [10]
Команда запись в память и модификация маски системы логическим сложением позволяет программе устанавливать избранные биты маски системы, сохраняя первоначальное содержимое маски системы для последующего восстановления. Например, в режиме расширенного управления может оказаться желательным разрешить процессору перейти в режим прерывания для обслуживания ввода-вывода, не зная при этом текущего состояния бита маски внешних прерываний. [11]
Выполнение команд загрузка PSW, установить маску системы, запись в память и модификация маски системы логическим умножением и запись в память и модификация маски системы логическим сложением подавляется, если возникают особые случаи при адресации и защите памяти; при этом в старом PSW содержится информация о программе, являющейся причиной появления особого случая. [12]
Схема формирования слова состояния программы. [13] |
ССП представляет шаблон, в котором содержатся маски системы и программы, адрес программы обработки прерывания данного типа и некоторая другая информация, необходимая для обработки данного прерывания. [14]
Байт, определяемый адресом первого операнда, замещает биты маски системы ( биты О-7) в PSW. С помощью этой команды программа-супервизор может замаскировать или размаскировать прерывания от ввода - вывода. [15]