Вариант типовой структурной схемы управляющего алгоритма, включающей элементы операционной системы и специального математического обеспечения, представлен на рис. 29.1 и включает:
программы обмена с внешними абонентами;
- программы управления и диспетчеризации вычислений;
- программы подготовки к обработке и подготовки к выдаче сообщений;
- программы контроля;
- программы решения функциональных задач, составляющих специальное математическое обеспечение.
Рисунок 29.1
Программы обмена с внешними абонентами можно разделить на две группы:
- программы приема сообщений (ППСi,);
- программы выдачи сообщений (ПВСi).
Включение этих программ обычно осуществляется схемно по инициативе внешних устройств, подготовивших сообщение к вводу в ЭВМ или освободившихся для приема сообщений из ЭВМ и для передачи управляемым объектам.
Алгоритмы приема сообщений решают следующие задачи:
- преобразование последовательного кода поступающих сигналов в параллельный код;
- первичное декодирование информации с учетом особенностей применяемого помехозащитного кода;
- накапливание поступающей информации в виде отдельных информационных слов и сообщений;
- привязка к поступающему сообщению условного номера внешнего абонента (маркировка сообщения для упрощения последующих процедур ввода этого сообщения в ЭВМ и диспетчеризации его обработки) и времени поступления сообщения в ЭВМ;
- определение подпрограммы приема информации в ЭВМ и буферной зоны памяти для хранения поступившего сообщения (по номеру внешнего абонента, типу сообщения и другим признакам);
- определение адреса свободного места в буферной зоне памяти ЭВМ;
- ввод информации в буферную зону памяти ЭВМ;
- изменение адреса свободного места в буферной зоне;
- сигнализация программе операционной системы ЭВМ о поступлении в машину очередной порции входной информации;
- контроль заполнения буферной зоны памяти входной информацией и сигнализация программе операционной системы о переполнении буферной зоны.
Алгоритмы выдачи сообщений разделяются на алгоритмы программной выдачи основными программами и вклинивающимися программами и алгоритмы внепрограммной выдачи.
Алгоритмы выдачи сообщений должны осуществлять:
- проверку соответствия шифров подготовленных сообщений и освободившихся каналов передачи данных;
- выбор конкретного сообщения, подлежащего передаче, из совокупности накопленных в буфере, с учетом времени их подготовки и уровня их приоритета;
- выдачу слов сообщения в систему передачи данных;
- регистрацию завершения выдачи сообщения, адреса освободившегося места в буферном накопителе и его объема.
Программы управления и диспетчеризации включают:
- программу начального пуска (ПНП);
- программу тактировки периодических вычислений (ПТПВ);
- центральный диспетчер (ЦД);
- местные диспетчеры (МД).
Основными функциями программы начального пуска являются:
- приведение аппаратуры ЭВМ в исходное состояние для перевода в рабочий режим;
- оперативный контроль исправности аппаратуры ЭВМ и устройств сопряжения при помощи обнаруживающих тест-программ;
- начальный ввод информации в ЗУ ЭВМ в соответствии с заданным режимом работы системы;
- введение астрономического времени в систему и установка начальных состояний всех датчиков времени в системе;
- программное подключение ЭВМ к устройствам сопряжения с внешней аппаратурой и линиями связи.
Программа тактировки выполняет следующие функции:
- контролирует ход счетчиков реального времени с различным масштабом и возможность их переполнения;
- подготавливает условные или безусловные заявки на включение периодических программ с учетом времени последнего включения и заданной периодичности;
- учитывает время выдачи заявок на включение периодических программ и корректирует время очередного включения;
- формирует признаки о происшедших включениях периодических программ.
Диспетчеры регламентируют последовательность включения функциональных и управляющих программ в соответствии с заданной дисциплиной, типом программы и ее положением в шкале приоритетов. Наиболее распространенными дисциплинами в алгоритмах диспетчеризации являются:
- обслуживание заявок в порядке их поступления;
- приоритетное обслуживание без прерывания вычислений;
- приоритетное обслуживание с прерыванием вычислений.
Центральный диспетчер управляет включением совокупности программ, решающих крупную функциональную или вспомогательную задачу. Местные диспетчеры управляют последовательностью подключения подпрограмм в процессе решения задачи, заданной центральным диспетчером. Центральный диспетчер включается после завершения каждой включаемой им программы, а при отсутствии заявок и сообщений - после завершения анализа всей шкалы приоритетов. Местные диспетчеры включаются центральным диспетчером или функциональными подпрограммами после их завершения.
Заявки на включение программ диспетчерами могут появляться в основной программе в результате:
- приема сообщений от внешних абонентов;
- завершения решения некоторых задач, после чего должны быть вызваны определенные функциональные алгоритмы или подпрограммы;
- поступления данных от программы тактировки периодических вычислений;
Диспетчерские программы выполняют следующие функции:
- анализируют наличие заявок на включение групп подпрограмм в соответствии с заданной дисциплиной обслуживания;
- при обнаружении заявки определенного типа или приоритета проверяют наличие аналогичных заявок;
- корректируют таблицу с заявками при выборе из них очередной для включения подпрограмм;
- передают управление головной подпрограмме или местному диспетчеру для решения заданной функциональной задачи.
Программы подготовки к обработке (ППОi) выполняют задачи, тесно связанные с основными функциональными задачами, однако их целесообразно выделить в самостоятельную группу, так как они носят характер вспомогательных служебных программ. Эти программы осуществляют:
- необходимое перекодирование и масштабирование квазинепрерывных величин;
- дешифрирование кодовой и признаковой информации;
- контроль и защиту от ложной и сбойной информации;
- перезапись информации из зоны входных сообщений в зону формуляров, подлежащих обработке в данный момент времени.
ППОг часто выполняет роль местного диспетчера и определяет перечень и последовательность включения функциональных программ, необходимых для обработки данного сообщения.
Программы подготовки к выдаче (ППВi) формируют сообщения m-го типа в зоне формуляров выдачи и осуществляют их перезапись в буферную зону выдаваемых сообщений. При этом схемно формируется сигнал или записывается в оперативную память признак наличия подготовленного сообщения. Эти программы определяют дисциплину заполнения буферных зон и в значительной степени дисциплину выдачи, так как формируют адрес очередного сообщения, подлежащего выдаче для каждого абонента.
Программы контроля (ПК) можно разбить на две группы:
1) программы контроля ЦВМ в процессе рабочего функционирования системы в реальном масштабе времени; 2) программы функционального контроля всей системы управления вне рабочего режима. Кроме того, в состав программ контроля входят некоторые части основных функциональных программ, обеспечивающих защиту от сбоев, а также программа анализа сбоев (ПАС). Она включается либо схемно при выявлении сбоев методами аппаратного контроля, либо теми участками программ, на которых обнаружена ошибка.
Подпрограмма анализа сбоев выполняет следующие функции:
- осуществляет регистрацию и накопление данных о всех выявленных искажениях вычислительного процесса и информации;
- селектирует искажения по их повторяемости и источникам;
- вырабатывает решения по ликвидации последствий или уменьшению ущерба от выявленного искажения путем включения соответствующих подпрограмм или переключениями в аппаратуре;
- выдает на индикацию для операторов характеристики выявленных искажений и мероприятий, принятых для ликвидации их последствий;
- ведет накопление наиболее часто встречающихся искажений и условий их появления для обеспечения возможности поиска частичных отказов в аппаратуре и ошибок в программе в режиме профилактики и восстановления системы.
Темп включения ПК при наличии случайных потоков сообщений и значительном изменении объема решаемых задач целесообразно изменять в зависимости от загрузки ЭВМ. Для этого центральный диспетчер включает программу анализа загрузки (ПАЗ), которая либо ведет учет холостого времени работы центрального диспетчера, либо подсчитывает суммарное время работы по основным программам и программам обмена в течение некоторого наблюдательного времени. В зависимости от текущей загрузки ЭВМ устанавливается темп включения программ контроля машины, но не ниже некоторого минимально допустимого. Кроме того, ПАЗ корректирует темп решения периодических программ, допускающих снижение темпа при перегрузках, а также управляет переходом на упрощенные методы решения функциональных задач, для которых предусмотрено изменение алгоритма при перегрузках.
Программа контроля ЭВМ в процессе рабочего функционирования может включать программы двух типов:
- программный тест контроля основных устройств ЭВМ без изменения информации, накопленной в оперативной памяти при решении функциональных задач;
- контрольную задачу, имитирующую решение основных функциональных задач по подготовленным и зафиксированным сообщениям с точным сравнением результатов с известным эталоном.
Контрольная задача позволяет проверить ЭВМ в условиях, наиболее близких к реальному функционированию в управляющей системе, в то время как тесты проверяют отдельные устройства ЭВМ при значениях и сочетаниях кодов, существенно отличающихся от тех, которые наиболее вероятны в реальных условиях.
Программы контроля обмена (ПКО) включаются периодически и обеспечивают сравнение с эталонами контрольных сообщений, принятых от внешних абонентов, формирование и подготовку к выдаче контрольных сообщений для внешних абонентов, а также обобщение и индикацию результатов обмена за некоторый интервал времени.
Программа функционального контроля (ПФК) может включаться при приеме сообщений функционального контроля внешних устройств или периодически для формирования сообщений, обеспечивающих функциональный контроль аппаратуры. Кроме того, эта программа может включаться при выявлении сбоев в поступающей информации для выявления источника этих сбоев. Данная программа имеет два режима работы:
- нормальный рабочий режим при решении основных задач управления;
- форсированный режим при решении задач функционального контроля перед включением рабочего режима или при появлении сбоев.
Программы решения функциональных задач представлены условными блоками Si, содержание которых, назначение и логические связи полностью определяются типом и задачами управляющей системы. Взаимодействие функциональных блоков по включению в работу может производиться двумя методами: через местный диспетчер или непосредственной передачей управления от блока к блоку.
Дата: 2019-04-23, просмотров: 207.