Cтраница 2
В состав ДОС-400 входят организующая система, транслирующая система и обслуживающие программы. [16]
В связи с мультипрограммированием организующая система получает возможность использовать ряд команд, недоступных абонентам. [17]
Для обработки потока заявок организующая система должна выполнять некоторые новые функции. [18]
Независимо от типа работы организующей системы всем программам, решаемым на УВМ, необходимы некоторые вспомогательные программы, которые в силу их общего использования целесообразно отнести к программам организующей системы. Таким образом, кроме программы завершения задачи и программы вызова очередной задачи в оперативную память в резидентную часть организующей системы помещаются некоторые вспомогательные программы, которые называются программами процесса решения. [19]
По команде обращения к организующей системе вектор состояния А-процессора запоминается в списке векторов состояния и по прерыванию управление передается организующей системе, которая в списке заблокированных для вычислений Ф - процессоров запоминает наименование процесса и адрес вектора состояния. После этого производится анализ выполнимости информации в макрокоманде. Из этой информации выбираются условное название Ф - процессора ввода и параметры операции. По наименованию Ф - процессора в таблице распределения определяется соответствующий Ф - процессор и на канал связи с этим Ф - процессором выдается слово управления, если этот процессор свободен, или слово управления ставится в очередь на обслуживание, если данный Ф - процессор занят. На место заблокированного процесса в освободившийся Ф - процессор посылается другой процесс, находящийся в состоянии готовности, а сама организующая система из состояния работы переходит в состояние готовности. [20]
Такой порядок работы обеспечивается организующей системой и основывается на проверке состояний Ф - процессоров и А-процессоров при поступлении каждого нового сигнала прерывания. В том случае, когда общее требование на ресурсы определенного типа ( определенные Ф - процессоры) превосходит наличие этих ресурсов в УВМ, то перед назначением очередного А-процессора, находящегося в состоянии готовности, на свободный Ф - процессор необходимо пользоваться приведенными далее правилами с тем, чтобы избежать возможности самозамыкания процесса. [21]
Эта работа может осуществляться через организующую систему, если ЦВМ работает в режиме мультипрограммирования, или непосредственно, если алгоритм управления реализуется одной программой. [22]
Таким образом, при мультипрограммном режиме организующая система служит для программного решения тех функций управления ЦВМ в мультипрограммйом режиме, которые не могут быть решены аппаратно. [23]
В большинстве случаев в современных УВМ организующая система исполняется программно и использует в качестве Ф - процессора один из вычислительных процессоров, используемых и процессами абонентов. При обращении А-процессора к организующей системе, находящейся на том же вычислительном процессоре, этот А-процессор блокируется. В случае же поступления сигналов прерываний от внешних устройств или других А-процессоров вектор состояния прерванного А-процессора непосредственно переписывается в список состояния готовности и по окончании работы организующей системы в порядке очереди передается на Ф - процеесор для продолжения решения. Следует заметить, что А-процессор организующей системы может быть прерван сигналами прерывания от внешних Ф - процессоров. При этом вектор состояния А-процессора организующей системы запоминается в состоянии готовности и по окончании исполнения реакции на прерывание восстанавливается на Ф - процессоре. При этом может возникнуть ситуация, когда менее важные прерывания будут поступать во: время работы А-процессора организующей системы по реакции на более важные прерывания. Для того чтобы избежать неоправданных переходов на новые прерывания, Ф - процессор, на котором находится организующая система, должен иметь кроме регистра прерываний также и регистр маскирования прерываний, рассмотренный в гл. При постановке маски прерывания не отбрасываются, но и не исполняются до снятия маски. При наличии регистра маски по сигналу прерывания организующая система ставит маску на все прерывания менее важные, чем данное. [24]
Одной из задач построения алгоритма работы организующей системы является выбор такого состояния распределения А-процессо-ров реализуемых процессов по Ф - процессорам УВМ, который не вызывал бы возможности появления самозамыкания. Самозамыкание процесса в организующей системе возникает в тех случаях, когда выполнение А - процессор а задерживается в связи с ожиданием выполнения определенных условий, а выполнение этих условий задерживается ( непосредственно или через другие А-процессоры) из-за невыполнения данного А-процессора. Простейшим примером самозамыкания является ожидание выполнения А-процессора переписи из оперативной памяти на одну из промежуточных памятей, не реализуемое из-за отсутствия места на промежуточной памяти, которое в свою очередь должно быть освобождено при переписи в оперативную память. Оба А-процессора переписи будут находиться в состоянии готовности, но не будут реализованы. Рассмотренные ранее алгоритмы оптимального распределения Ф - процессоров не гарантируют от возможности самозамыкания. [25]
Язык предписаний для управления последовательностью действий организующей системы состоит из определенных, неизменяемых кодовых слов, обозначающих определенные функции организующей системы, и параметров, определяющих наименования, устройства или тип действий, отвечающих конкретным требованиям программиста. Обычно перед кодовым словом ставится специальный признак начала предписания ( в наших примерах таким признаком будет / /), а после кодового слова записываются параметры. [26]
Параметры этого предписания служат для указания организующей системе порядка работы с программой после нормального или искусственно вызванного окончания работы. В параметрах указывается библиотека для хранения всей программы в целом, а также метки для возобновления решения. [27]
По предписанию НАЗНАЧИТЬ параметры будут использованы организующей системой для закрепления соответствующих физических устройств путем составления таблицы обращений данной задачи. [28]
Программу проектного расчета легко объединить с модульными организующими системами типа PACER. Основные различия по существу заключаются в том, что решения вычислительного блока запоминаются в списке EN, а не в STRMO и что каждый блок, который должен быть спроектирован, вносит в систему рецикл информации. Общая стратегия аналогична стратегии, показанной на фиг. [29]
Для перехода от обычного А-процессора к А-процес-сору организующей системы в большинстве УВМ выделяется специальная команда, которая вместе со всей необходимой информацией о содержании запроса образует одну из макрокоманд всего множества запросов. При переходе к организующей системе по этой команде возникает стандартное прерывание и запоминается вектор состояния А-процессора, обратившегося к организующей системе. Этот сигнал прерывания переводит А-про-цессор организующей системы из состояния готовности в состояние реализации. [30]