ГОСТР 53195.5—2010
В.3.5Многовариантное программирование
П р и м е ч а н и е — На этот метод/средство дана ссыпка в ГОСТ Р 53195.4 (таблица А.2).
Цель: обнаружение и наложение маски при выполнении программ на не выявленные на этапах проектиро
вания и реализации ошибки ПО для предотвращения критичных для безопасности отказов системы и для про
должения ев работы с высокой надежностью.
Описание: при многовариантном программировании заданная спецификация ПО проектируется и реали
зуется различными способами N раз. Одни и те же входные значения поступают в N версий, и результаты,
выданные N версиями, сравниваются. Если определяется, что результат правильный, он поступает на выходы
компьютера.
N версий могут выполняться параллельно на различных компьютерах, либо все версии могут выполняться
на одном и том же компьютере, и результаты будут обработаны внутренним голосованием. Для этих N резуль
татов в зависимости от применяемых требований могут быть использованы различные стратегии голосования
следующим образом:
- если система находится в безопасном состоянии, можно потребовать полного согласия (все N согласны),
в противном случаеиспользуется выходное значение, которое заставит систему перейти в безопасное состояние.
Для простых пошаговых систем голосование может происходить в направлении безопасности. В этом
случае безопасное действие может быть разбито по шагам, если какая-либо версия реализует пошаговые
операции. Этот подход обычно используется только для двух версий (N = 2):
- для систем, находящихся в небезопасном состоянии, могут быть реализованы стратегии мажоритарного
голосования. В тех случаях, когда отсутствует общее согласив, могут использоваться вероятностные подходы, с
тем чтобы максимизировать вероятность выбора правильного значения, например принять среднее значе ние,
временно зафиксировать выходы, пока не будет достигнуто согласие, и т. п.
Этот метод не устраняет ошибки, не выявленные при проектировании программ, а также не устраняет
ошибки в интерпретации спецификации, однако он является средством для обнаружения и маскирования оши
бок. прежде чем они смогут повлиять на безопасность.
Болев подробное описание данного метода/средства приведено в (160—162].
В.3.6 Блоки восстановления
П р и м е ч а н и е — На этот метод/средство дана ссылка в ГОСТ Р 53195.4 (таблица А.2).
Цель: повышение вероятности выполнения программой своих заданных функций.
Описание: некоторые различные разделы программы, часто разработанные независимо, предназначены
для выполнения одной и той же требуемой функции. Окончательная программа конструируется из таких разде
лов. Первый раздел, называемый первичным, выполняется первым. Далее происходит тестирование его резуль
татов. Если тест проходит, результат принимается и передается последующим разделам программы. Если тест не
проходит, то все побочные эффекты первого раздела сбрасываются и выполняется второй раздел, называ емый
первой альтернативой. За ним также следует тест, который выполняется, как и в первом случав. При необ
ходимости могут быть предусмотрены вторая, третья и так далее альтернативы.
В.3.7 Восстановление предыдущего состояния
П р и м е ч а н и е — На этот метод’средство дана ссылка в ГОСТ Р 53195.4 (таблица А.2).
Цель: обеспечение исправления функциональных операций при наличии одного или нескольких сбоев.
Описание: при обнаружении сбоя система возвращается в первоначальное внутреннее состояние, согла
сованность которого была подтверждена ранее. Этот метод предполагает частое сохранение внутреннего состо
яния в так называемых четко определенных контрольных точках. Метод может быть применен глобально (для
всей базы данных) или частично (для изменений только между контрольными точками). По завершении опера ции
система должна устранить изменения, которые произошли за это время, путем занесения вжурнал (аудитор ское
отслеживание действий), компенсацией (все результаты этих изменений аннулируются) или внешним (руч ным)
способом.
Более подробное описание данного метода/средства приведено в (163. 164].
В.3.8 Прямое восстановление функций
П р и м е ч а н и е — На этот метод/средстводана ссылка в ГОСТ Р 53195.4 (таблица А.2).
Цель: обеспечение исправления функциональных операций при наличии одного или нескольких сбоев.
Описание: при обнаружении сбоя текущее состояние системы обрабатывается для достижения состояния,
которое через некоторое время будет согласовано. Эта концепция особенно подходит для систем реального
времени с небольшой базой данных и с высокой скоростью изменения внутреннего состояния. Предполагается,
что по меньшей мере часть системного состояния может влиять на окружение, и только на часть системных
состояний влияет окружение.
Более подробное описание данного метода/средства приведено в [165].
В.3.9 Методы повторных попыток восстановления неисправностей
П р и м е ч а н и е — На эти методы/средства дана ссылка в ГОСТ Р 53185.4 (таблица А.2).
51