Cтраница 2
Поле В в слове управления каналом позволяет ЦП ограничить использование шины каналом во время выполнения программы канала. Сопроцессор ВМ89, работающей в МПС с местной конфигурацией, имеет более высокий приоритет по управлению шиной, чем ЦП, поскольку ему всегда предоставляется шина в ответ на запрос. В ряде случаев это может привести к ситуации, когда СП практически полностью монополизирует шину. Чтобы этого не произошло, ЦП может установить поле В в слове управления каналом в 1, задавая тем самым предел загрузки шины сопроцессором. Когда разряд В1, перед выполнением каждой команды канал загружает младший байт счетчика ВС значением 127 и выполняет потактное уменьшение этого значения до нуля. Таким образом, канал пропускает 128 тактов перед выполнением очередной команды программы и тем самым уменьшает использование шины на 3 - 25 % от общей длительности работы с шиной. Установка предела загрузки шины позволяет ЦП замедлить выполнения программ каналов и высвободить циклы работы с шиной. Использование указанной возможности особенно удобно в МПС с местной конфигурацией, однако применимо и в МПС с удаленной конфигурацией, когда программы каналов расположены в системной памяти. Предел загрузки шины не влияет на операции каналов с высоким приоритетом, такие, как непрерывные программы каналов и пересылки с ПДП. [16]
Ошибкой ввода-вывода считается ошибка, обнаруженная каналом ввода-вывода, устройством управления или внешним устройством при выполнении программы канала. Ошибкой ввода-вывода считают также особую ситуацию, обнаруженную каналом ввода-вывода, внешним устройством или устройством управления, требующую программной обработки. [17]
При S0 1 возбуждается сигнал прерывания в подканале, но S0 1 не оказывает никакого влияния на выполнение программы канала. [18]
Некоторую помощь при разработке управляющей программы дает новое средство, введенное в работе [7], - возможность приостановки выполнения программ канала и его возобновления. Однако это средство не решает общей проблемы - эффективного построения системы ввода-вывода виртуальной машины. [19]
Если хотя бы один бит из байта состояния канала, за исключением SQ и S4, равен 1, выполнение программы канала и дальнейшая передача данных прекращаются. [20]
![]() |
Структуры регистра слова-состояния программы PSW ( а и размещения информации в памяти по команде Приостановить работу канала ( б. [21] |
После окончания пересылки с ПДП канал прибавляет величину, называемую смещением окончания, к содержимому указателя заданий ТР и возобновляет выполнение программы канала с этой точки. Окончание однократной пересылки ( по TS1) всегда приводит к смещению окончания, равному нулю. [22]
Отметим, что бит S2 не возбуждается, если CCW правильно по формату, но не может быть выполнено устройством, например, если для печатающего устройства выдается команда чтения. Если S2 l, то выполнение программы канала прекращается и вырабатывается сигнал прерывания. [23]
Программно управляемое прерывание возникает в случае, если в байте состояния канала установлен признак программно управляемого прерывания. Программно управляемое прерывание не влияет на выполнение программы канала, оно позволяет программе центрального процессора следить за ходом выполнения программы канала. [24]
Бит Si устанавливается равным единице, если в CCW не задан признак SLI и произошло одно из двух событий: I) достигнут физический конец записи, а счетчик не досчитал до нуля, или задана цепочка данных; 2) счетчик досчитал до нуля и не задана цепочка данных, а физический конец записи не достигнут. При Si, равном единице, выполнение программы канала прекращается и вырабатывается сигнал прерывания. [25]
Если U 08, ОС или 4С, то выполнение программы канала уже завершено. [26]
Бит S3 устанавливается в единицу, если ключ защиты в CAW не соответствует ключу ячейки памяти, с которой осуществляется обмен информацией. При этом обращение к защищенному байту памяти не производится, выполнение программы канала прекращается, и вырабатывается сигнал прерывания. [27]
Наибольший интерес для нас в этой таблице представляет 6 - й управляющий байт, в котором, в свою очередь, нам потребуются только 0 - й и 4 - й разряды. Единица в 0 - м разряде означает, что во время выполнения программы канала встретилась команда CCW с признаком программно-управляемого прерывания. [28]
Программно управляемое прерывание возникает в случае, если в байте состояния канала установлен признак программно управляемого прерывания. Программно управляемое прерывание не влияет на выполнение программы канала, оно позволяет программе центрального процессора следить за ходом выполнения программы канала. [29]
Признак PCI ( бит 30) в любом CCW устанавливает равным 1 самый левый бит в байте состояния канала и тем самым вызывает прерывание, которое обычно возникает при декодировании каналом очередного CCW. Если CCW порождает сигнал ошибка в программе, то признак PCI игнорируется, и прерывание произойдет из-за того, что прекращено выполнение программы канала. Признак PCI вызывает прерывание, и оно может произойти как до, так и после того, как будут переданы первые байты данных. [30]