
- •1. Введение в надежность
- •2. Надежность технических элементов
- •2.1. Основные понятия и определения
- •2.2. Функциональные показатели надежности элемента
- •Функция ненадежности элемента
- •2.3. Числовые показатели надежности
- •2.4. Основные законы распределения наработки до отказа
- •Распределение Вейбулла
- •Экспоненциальное распределение
- •Распределение Релея
- •Нормальное распределение
- •Усеченное нормальное распределение
- •Суперпозиции экспоненциальных распределений
- •2.5. Ремонтопригодность технических элементов
- •Функциональные показатели ремонтопригодности
- •Числовые показатели ремонтопригодности
- •Экспоненциальное распределение вероятности восстановления
- •Комплексные показатели ремонтопригодности
- •2.6. Определение показателей надежности элементов по результатам испытаний
- •Определительные испытания
- •Контрольные испытания
- •Лабораторные испытания элементов
- •3. Надежность технических систем
- •3.1. Надежность простых технических систем
- •3.2. Расчет надежности локальных технических систем
- •3.3. Надежностный синтез технических систем
- •4. Надежность программного обеспечения
- •4.1. Общие сведения о программном обеспечении
- •Жизненный цикл программного обеспечения
- •4.2. Показатели надежности программы и программного обеспечения
- •Понятие ошибки программы
- •Модель ошибки сертифицированного по
- •Модели поведения ошибок функционирующего по
- •Функциональные и числовые характеристики надежности по
- •4.3. Повышение надежности программного обеспечения
- •Повышение надежности по путем резервирования
- •Программное резервирование по предусматривает наличие двух (или более) алгоритмов , решения одной и той же задачи с одинаковыми исходными данными и двух по1 и по2 (рис. 4.13).
- •5. Литература
Программное резервирование по предусматривает наличие двух (или более) алгоритмов , решения одной и той же задачи с одинаковыми исходными данными и двух по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 % АСУ ТП применялось «холодное» или «теплое» резервирование ПО и управляющих ЭВМ.