Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Надежность.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
14.98 Mб
Скачать

Программное резервирование по предусматривает наличие двух (или более) алгоритмов , решения одной и той же задачи с одинаковыми исходными данными и двух по1 и по2 (рис. 4.13).

Рис. 4.13 – Схема ненагруженного программного резервирования ПО с разными операторами А1 и А2

Здесь возможно нагруженное и ненагруженное резервирование. В первом случае исходная информация x постоянно перерабатывается на одной ЭВМ двумя последовательно выполняемыми ПО1 и ПО2, результаты действия которых и сравниваются в анализаторе между собой и если они близки в определенном смысле, то выносится заключение об отсутствии отказа ПО. Если при этом , то ПО считается исправным и за решение задачи принимается или или их среднее. При и выполняется повторный прогон ПО1 и если новый результат , то объявляется сбой программного обеспечения 1. Наконец, если при повторном прогоне ПО1 снова , то имеет место отказ программного обеспечения 1, которое направляется на восстановление, а ПО2 начинает функционировать в режиме временного резервирования.

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

Программное резервирование позволяет эффективно выявлять и устранять сбои ПО и случайные отказы программ, которые вызываются первичными ошибками, вносимыми в ПО на начальных этапах его жизненного цикла. Вместе с тем программное резервирование вызывает более чем двукратное увеличение стоимости ПО, так оно требует удвоения объема алгоритмизации и программирования, двукратного увеличения объема запоминающего устройства и машинного времени ЭВМ на прогоны ПО1 и ПО2. В связи с этим программное обеспечение находит, как правило, широкое применение в АСУ РВ, применяемым для автоматизации ответственных объектов.

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

Рис. 4.14 – Схема нагруженного программно-технического резервирования ПО и ЭВМ

Такой способ резервирования предполагает использование как минимум двух ЭВМ1 и ЭВМ2 , двух алгоритмов , решения одной и той же задачи , и наконец, двух независимо написанных программных обеспечений ПО1 и ПО2, выполняющих решения задач и (рис. 4.14). Возможно нагруженное резервирование (работают ЭВМ1 и ЭВМ2, функционируют соответственно ПО1 и ПО2, анализатор с помощью правил «два из двух» и «два из трех» идентифицирует безотказную работу программ, сбои и случайные отказы) и ненагруженное резервирование (ЭВМ1 постоянно решает задачу , ЭВМ2 с ПО2 находится в «теплом» или, реже, «холодном» резерве; анализатор идентифицирует безотказность ПО при , сбои программ по правилу «два из трех» и случайные отказы ПО или ЭВМ при , ).

Программно-техническое резервирование несомненно самый дорогой способ повышения надежности ПО и ЭВМ, однако он наиболее универсален и позволяет уменьшить риск отказа АСУ РВ из-за ошибок алгоритмического и, частично, программно-технического обеспечения системы реального времени. Эта особенность программно-технического резервирования способствует его широкому применению в современных распределенных АСУ ТП, работающих, как правило, в реальном времени. Так, например, в середине 90-ых годов ХХ века около половины подобных систем управления использовало нагруженное программно-техническое резервирование, в 70 % АСУ ТП применялось «холодное» или «теплое» резервирование ПО и управляющих ЭВМ.