Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект АСУТП new.doc
Скачиваний:
88
Добавлен:
16.04.2019
Размер:
5.34 Mб
Скачать

Глава 9 Средства самодиагностики и восстановления

Диагностические компоненты в ОС управляющей ЭВМ значительно отличаются от соответствующих компонентов ОС для обработки данных или научных задач объясняется различием в их назначении.

Главная цель диагностики ЭВМ для обработки данных или решения научных задач - повышение эксплуатационной надежности - означает увеличение скорости обнаружения отказа, сводящее к минимуму время простоя машины и (или) устранения неисправности. Между тем главная цель диагностики управляющей ЭВМ - поддерживать готовность системы, т. е. обеспечивать управление объектом и прочие услуги в некоторой минимальной степени, пусть даже с возросшим временем обслуживания. Например, при обработке данных можно пойти на срыв выполнения текущих заданий и передачу всех ресурсов системы в распоряжение диагностических программ. При оперативном управлении система должна сохранять управление важными технологическими величинами.

Методы и средства для предотвращения, обнаружения ошибок, восстановления работоспособности программ разделяют на четыре основных группы:

1. Предотвращение ошибок: структурные методы проектирования и реализации программ;

2.Доказательство корректности модулей; тестирование.

3.Обнаружение ошибок:

  • обследование состояния системы для обнаружения неверного состояния или последовательности таких состояний;

  • обследование данных и структур данных;

  • обследование характеристик производительности; использование механизмов защиты программного обеспечения и аппаратуры.

Диагностика ошибок:

  • быстрая регистрация доступной информации об ошибке и ее экспресс-анализ;

  • детальный анализ последствий ошибки для определения области ее действия и нахождения вероятной причины возникновения;

  • использование словаря обслуживания, содержащего набор симптоматические причин возникновения ошибок и соответствующих способов исправления.

4. Коррекция и восстановление:

  • игнорирование ошибки и продолжение выполнения программы;

  • повторение неверно выполненной операции и продолжение вычислений, если это повторение оказалось успешным;

  • возврат к точке возникновения ошибки и перезапуск с этой точки; восстановление данных и структур данных, возобновление вычислений так, как это указано в одном из предыдущих пунктов;

  • начальный перезапуск.

Контроль обращения к программе. Для обнаружения неправильных переходов в процессе реализации подпрограммы перед ее выполнением в определенные ячейки (точки контроля неправильных переходов) записываются команды Отсутствие операций. После выполнения подпрограммы в точки контроля записываются команды перехода к программе обнаружения нарушений работоспособности. В случае неправильного перехода при достижении контрольной точки управление будет передано программе контроля (рис.8.1):

Рисунок 7.1 – Алгоритм контроля обращения к программе (подпрограмме)

Контроль переходов на неиспользуемые ячейки памяти.

Программу контроля переходов оформляют в виде низкоприоритетной программы, осуществляющей предварительную засылку в неиспользуемые ячейки кодов команд с операцией Переход на подпрограмму и адресом программы идентификации нарушений. Засылка выполняется программой начального пуска системы, а также после реализации высокоприоритетных программ.

Рисунок 7.2 – Алгоритм контроля обращений к подпрограммам

Контроль выполнения циклов в подпрограммах или задачах по допустимому времени.

Характерным признаком зацикливания является превышение длительности счета по программе допустимого времени их реализации. Основным способом контроля является использование счетчика относительного времени (рис. 13). Перед переходом на исполнение k-й программы устанавливается предельно допустимое значение времени их peaлизации. По сигналам счетчика (таймера) происходит равномерное убывание значения счетчика. При достижении нулевого значения на счетчике вырабатывается запрос к ОС для приостановки зациклившейся программы. В современных операционных системах эта функция выполняется установлением тайм-аута.

Рисунок 7.3 – Алгоритм использования таймера для предотвращения зацикливания

Контроль выполнения условий предшествования основан на сравнений действительного и требуемого порядков выполнения программ. Может применяться системах с фиксированным порядком выполнения группы программ. Каждая программа использует определенную ячейку памяти, общую для этой группы программ. содержащую код предыстории реализации группы. Выполнение таких программ начинается операцией сравнения заданного в программе и сформированного другими программами кодов защиты. В случае отрицательного результата будет зафиксирован неправильный переход или запуск программы. Завершается программа формированием кода защиты. Схема алгоритма контроля приведена на рис. 8.4.

Рисунок 7.4 – Алгоритм контроля выполнения условий для предотвращения зацикливания

Контроль работоспособности технических средств в рабочем режиме системы Цель контроля - обнаружение неисправностей, не обнаруживаемых аппаратным контролем, причем контролем охватываются те устройства, которые не имеют схем встроенного контроля. Кроме того, наиболее существенной является возможность раннего обнаружения неисправностей, до использования соответствующего устройства для выполнения основных

функций. К особенностям организации процесса прогонки тестов в рабочем режиме относятся:

  • ориентация тестов реального времени на обнаружение наиболее опасных (аварийных) отказов системы (данная группа тестов циклически выполняется в рабочем режиме автоматически периодом, определенным временным ресурсом системы):

  • необходимость учета при разработке и прогонке тестов возможностей операционной системы и процессора УВК (защита памяти, возможность и особенностей работы в непривилегированном состоянии);

  • необходимость изменения набора тестов в процессе функционирования системы;

  • жесткие требования к длине тестов и к времени их реализации;

  • возможность выполнения тестов реального времени в фоновом режиме работы и в режимах локализации неисправности (по запросу программ контроля) и профилактики (по запросу оператора системы).

Функция восстановления работоспособности может быть обеспечена:

  • восстановлением содержимого отдельных ячеек ОЗУ;

  • формированием контрольных точек и перезапуском программ с контрольных точек; копированием участков ОЗУ;

  • реконфигурацией технических и программных средств системы; Формирование контрольных точек заключается в пересылке в некоторую область памяти, в соответствующий массив, содержимого регистров процессора и заданных областей памяти.

Копирование участков ОЗУ обеспечивает сохранение информации и быстрое восстановление работоспособности системы. Копия участка может быть создана в другом месте ОЗУ, во внешней памяти или на другом носителе. Копируемые участки ОЗУ в АСУ ТП могут быть следующие:

  • общая область памяти (COMMON), выводимая на внешнюю память;

  • область памяти с функциональными программами (копии создаются в резервной памяти перед выполнением отдельных функциональных программ и уничтожаются после их успешного выполнения);

  • состояние списков операционной системы;

  • массивы технологических данных (обычно выводятся как во внешнюю память).

Программы реконфигурации технических и программных средств системы позволяют подключить резервные устройства в случае отказа основных, перейти к устройствам с низкой производительностью, с уменьшением объема вводимых и выводимых данных, обеспечивают работу с программами реального времени, размещаемыми различных блоках ОЗУ или на различных программных цилиндрах (дорожках) магнитного диска.

Функция обслуживания и сервиса системы обеспечивает вывод информирующих и предупреждающих сообщений о нарушениях работоспособности и распечатку рабочих массивов программ оперативного контроля, байтов состояния процессора и устройств, формирование стека адресов, характеризующих предысторию процесса реализации программ.