Cтраница 4
Слово, определяющее операцию, выполняемую каналом. Адрес CCW указывается в адресном слове канала. Совокупность CCW образует канальную программу. [46]
После постановки запросов в очередь СУПЕРВИЗОР анализирует одну из своих таблиц, в которой указаны характеристики и состояние выбранного физического устройства. Если устройство свободно, СУПЕРВИЗОР формирует адресное слово канала и выдает команду НАЧАТЬ ВВОД-ВЫВОД. В противном случае управление возвращается проблемной программе для ее продолжения, и ввод-вывод выполняется после того, как все предыдущие запросы, ранее поставленные в очередь, будут удовлетворены. [47]
Программа процессора начинает операции ввода-вывода командой НАЧАТЬ ВВОД-ВЫВОД или НАЧАТЬ ВВОД-ВЫВОД С БЫСТРЫМ ОТКЛЮЧЕНИЕМ. Эти команды указывают канал и устройство и заставляют канал выбирать адресное слово канала CAW из фиксированной ячейки основной памяти. Адресное слово канала содержит ключ защиты и указывает ячейку основной памяти, из которой канал затем выбирает первую команду канала CCW. Команда канала определяет операцию, которую требуется выполнить, и, если нужно, область основной памяти, которую необходимо использовать. [48]
Канальная программа представляет собой совокупность командных слов канала ( КСК) и размещена в основной памяти. Адрес первого КСК канальной программы всегда выбирается из фиксированной ячейки 72 ( 48 / 16) постоянно распределенной области основной памяти, где расположено адресное слово канала ( АСК), сформированное программно перед выполнением канальной программы. [49]
В машинах ЕС ЭВМ выделена зона фиксированных ячеек - постоянно распределенная область памяти ( первые 4 Кбайт), ячейки которой имеют определенное функциональное назначение, а их адреса зафиксированы для определенных процедур, например адреса старых и новых ССП, адресного слова канала и др. В общем случае при работе процессоров в МПК их зоны фиксированных ячеек содержат неодинаковую информацию. [50]
В машинах ЕС ЭВМ выделена зона фиксированных ячеек - постоянно распределенная область памяти ( первые 4 Кбайт), ячейки которой имеют определенное функциональное назначение, а их адреса зафиксированы для определенных процедур, например адреса старых и новых ССП, адресного слова канала и др. В общем случае при работе процессоров в МПС их зоны фиксированных ячеек содержат неодинаковую информацию. Поэтому при построении общего поля ОП возникает необходимость выделения каждому процессору своей зоны фиксированных ячеек, не пересекающейся с зонами других процессоров, и создания механизма, который обращения данного процессора по адресу из начальной ( 4 Кбит) области трансформирует в соответствующий адрес выделенной процессору зоны. Этот механизм называется префиксацией. [51]
Программа процессора начинает операции ввода-вывода командой НАЧАТЬ ВВОД-ВЫВОД или НАЧАТЬ ВВОД-ВЫВОД С БЫСТРЫМ ОТКЛЮЧЕНИЕМ. Эти команды указывают канал и устройство и заставляют канал выбирать адресное слово канала CAW из фиксированной ячейки основной памяти. Адресное слово канала содержит ключ защиты и указывает ячейку основной памяти, из которой канал затем выбирает первую команду канала CCW. Команда канала определяет операцию, которую требуется выполнить, и, если нужно, область основной памяти, которую необходимо использовать. [52]
Первый полубайт CAW содержит ключ защиты памяти, имеющий то же значение, что и ключ защиты в PSW. Следующие четыре бита должны быть равны нулю. Три младших байта адресного слова канала предназначены для адреса первого CCW программы канала. CAW содержит всю информацию, необходимую каналу для того, чтобы начать работу. [53]
Команда ТСН ( Проверить канал) не оказывает никакого влияния на выполняемую операцию ввода-вывода, в команде используется только адрес канала; адрес устройства может быть любым. По этой команде опрашивается только канал и устанавливается код условия СС ( биты 34 и 35 PSW), значение которого зависит от того, доступен ли канал, работает, хранит прерывание или неработоспособен. При выполнении команды ТСН канальная программа ( CCW) и адресное слово канала CAW не используются. [54]
Средства защиты памяти Системы 370 осуществляют защиту содержимого определенных областей памяти от разрушения при ошибочных обращениях к ней. Поле ключа защиты занимает биты 8 - 11 PSW и биты 0 - 3 адресного слова канала ( гл. Чтобы иметь возможность доступа к данному блоку памяти со стороны процессора или канала, необходимо совпадение ключа памяти и ключа защиты памяти. В зависимости от содержимого бита 5 считывания ключа памяти блок памяти может быть защищен либо при операции записи в память, либо при операциях записи в память и считывания из нее. Доступ к памяти считается также разрешенным и в том случае, когда ключ защиты равен нулю. Система защиты памяти работает независимо от различных состояний процессора. Для изменения и проверки ключа памяти каждого блока, насчитывающего 2048 байтов, введены две привилегированные команды: установить ключ памяти и прочитать ключ памяти соответственно. [55]
Если при наличии защиты обращение к памяти исходит от процессора, то для сравнения используется ключ защиты, находящийся в текущем PSW. Ключ защиты занимает биты 8 - 11 PSW. Если при наличии защиты обращение выполняется каналом, то для сравнения используется ключ защиты, связанный с данной операцией ввода-вывода. Этот ключ защиты содержится в битах 0 - 3 адресного слова канала ( CAW) и записывается в биты 0 - 3 слова состояния канала ( CSW), запоминаемого в результате выполнения данной операции ввода-вывода. [56]
Если при наличии защиты обращение к памяти производится по инициативе CPU, то в качестве одного из сравниваемых операндов используется ключ защиты из текущего PSW. Ключ защиты расположен в битах 8 - 11 PSW. Если при наличии защиты обращение к памяти производится по инициативе канала, то для сравнения используется ключ защиты, связанный с данной операцией ввода-вывода. Этот ключ защиты содержится в битах 0 - 3 адресного слова канала CAW и записывается в биты 0 - 3 слоЪа состояния канала CSW, запоминаемого в результате выполнения операции ввода-вывода. [57]
Начальная выборка производится по инициативе процессора при пуске новой операции ввода-вывода. Процессор передает в канал код операции команды ввода-вывода, номер периферийного устройства и адрес первого УС. Эти параметры заносятся каналом в регистры РКВВ, РНАП и РАУС. В тех машинах, где адрес первого УС не указывается в команде процессора, а содержится в специализированной ячейке ЗУ ( в адресном слове канала), канал, заполнив РККВ и РНАП, сам считывает из ОЗУ адрес первого УС и заносит его в РАУС. После этого, используя содержимое РАУС как адрес, канал выбирает из ОЗУ первое УС, размещая его поля в регистрах РКОУ, РТАД, ТСД. К содержимому РАУС прибавляется число, равное длине управляющего слова, после чего РАУС указывает адрес следующего УС в цепи. В соответствии с выбранным в регистры управляющим словом канал запускает в работу требуемое периферийное устройство. Если устройство свободно и во время начальной выборки не обнаружены программные или аппаратные ошибки, считается, что пуск произошел нормально. Канал сообщает об этом процессору, который переходит к выполнению следующей команды своей программы. [58]