Cтраница 4
В заголовке Очереди канала анализируется флаг аварийного инициирования. Если флаг установлен, значит инициирование операции ввода-вывода было выполнено Р2 программами обработки распознанных ошибок. Им возвращается управление для анализа. Вход из очереди канала не вычеркивается, так как Р2 программа может повторить для него операцию ввода-вывода. [46]
Будем называть программу счетной, если время, требуемое ей на обработку каждой записи, по крайней мере в пять раз превышает время на ее ввод и вывод. Пусть такая программа включается в состав мультипрограммной смеси, и, как ни странно, интенсивность работы процессора еще больше падает. Длина же этого интервала представляет собой функцию от состава очередей каналов и последовательности перемещения головок на совместно используемых дисководах. Добавление в состав смеси счетной программы означает пусть незначительное, но постоянное увеличение нагрузки на процессор. Однако наличие других, в значительной степени обменных задач приводит к увеличению фактического времени выполнения процессов ввода-вывода для рассматриваемой счетной задачи. [47]
Когда какой-либо вход будет вычеркнут из Очереди канала по окончании операции ввода-вывода, анализируется счетчик переполнения. Если он отличен от нуля, устанавливается переключатель в Диспетчере задач на переход к программе Гашение ожидания ввода-вывода. Эта программа проверяет флаг переполнения в заголовке Очереди канала. Если он установлен, по Таблице задач ищется задача, ожидающая из-за переполнения Очереди канала. Уменьшается счетчик переполнения, снимается условие ожидания и повторяется запрос на операцию ввода-вывода для найденной задачи. [48]
Для любого другого устройства проверяется, назначено ли оно задаче. Для этого выбирается адрес ТОФ из байт 23 - 25 ТИУ. Если он равен нулю, то устройство никакой задаче не назначено. Если устройство назначено или в заголовке очереди установлен флаг инициирования операции ввода-вывода, из Очереди канала выбирается адрес ТОФ ( байты 0 - 3), чтобы по ходу анализа установить в ней флаги окончания операции. [49]
Таблица адресов является одной из основных управляющих таблиц Супервизора. Она предназначена для организации быстрого доступа к любой управляющей таблице и содержит адреса основных таблиц, используемых Супервизором и другими компонентами операционной системы, а также некоторую информацию, характеризующую текущее состояние этих таблиц. Структура и размер Таблицы адресов зависят от мощности операционной системы ( наличия тех возможностей, которые предоставляются программисту), числа таблиц, используемых Супервизором. В ней хранятся адреса Таблицы информации об устройствах, Таблицы задач, Списка распределенной памяти, Очередей каналов, Указателя памяти, Таблицы приоритетов проблемных задач, Списка сообщений оператора, Области связи с Супервизором, флаги состояния таблиц, число Р2 программ в данной конкретной конфигурации Супервизора, полученной при генерации операционной системы, номер задачи, которой Супервизор передал управление, и другая информация. [50]