Проверяемый текст
Попов, Андрей Анатольевич. Оптимизационные методы формирования мультиверсионного программного обеспечения критичных по надежности систем управления (Диссертация 2002)
[стр. 41]

2.
Индивидуальные спецификации версий
ПО должны определять способы достижения отказоустойчивого исполнения, которые поддерживаются в среде исполнения; 3.
Наилучший исход
мультиверсионного программирования должен минимизировать вероятность необнаружеиия ошибочного исполнения мультиверсионного программного компонента в отличие от обычной программной системы.
Главными элементами для методологии мультиверсионного программирования является наличие двух или более избыточных компонент, а также, решающего алгоритма, который функционирует в составе среды исполнения и с помощью которого принимается решение о результатах работы программ.
Однако реализация NVP имеет ограничение: в случае если решающий алгоритм выберет ошибочный результат в точках контроля, то и результат работы NVS будет неверным.
Таким образом, уровень надежности мультиверсионных программных средств напрямую зависит от применяемого алгоритма согласования результатов.
Определив основные элементы мультиверсионного программирования, отметим не менее важные проектные этапы, относящиеся к: 1.
Спецификациям версий NVS-систем ПО (с учетом требований к их дальнейшему конкурентному исполнению в EE-среде с использованием внешних средств поддержки исполнения NVX); 2.
Непосредственному этапу программирования, учитывая, что основное требование NVP — максимальная независимость исходов процесса и, соответственно, версий ПО; 3.
Созданию NVX-систем среды исполнения программных компонент мультиверсионного ПО как с высокой надежностью, так и с эффективными показателями по времени исполнения, что особенно
41
[стр. 48]

1.
Среда исполнения должна предусматривать функции поддержки исполнения N > 2 версий программных компонент в режиме контроля ошибок; 2.
Индивидуальные спецификации версий
110 должны определять способы достижения отказоустойчивого исполнения, которые поддерживаются в среде исполнения; 3.
Наилучший исход
NVP должен минимизировать вероятность необнаружения (или невозврата для схемы с блоком восстановления) ошибочного исполнения мультиверсионного программного компонента в отличие от обычной программной системы.
Общим для методологии мультиверсионного программирования и схемы с восстановительным блоком является наличие двух или более избыточных компонент (в NVS они названы версиями, а в RB альтернативами с приемочным тестом).
Основное же отличие заключается в методе, с помощью которого принимается решение о результатах работы программ.
Для мультиверсионного программирования это решающий алгоритм, который функционирует в составе среды исполнения; для схемы с блоком восстановления приемочный тест результатов работы одной из альтернатив, который специфичен для каждого отдельного приложения и, кроме того, может не являться частью среды исполнения.
Возможны комбинации базовых схем, а также расширение функций среды исполнения как для мультиверсионного программирования (например, многоуровневый решающий алгоритм, общий или индивидуальный восстановительный блок для мультиверсионной программы), так и для схемы с блоком восстановления (например, кэш-память для восстановления программных компонент, многоуровневый иерархический приемочный тест и т.д.).
Однако, реализация восстановительного блока в обоих подходах имеет ограничение: в RB-схеме ошибки, которые не будут обнаружены приемочным тестом.
Не приведут к переключению на восстановление при 48

[стр.,49]

функционировании ПО; в NVS переключение на восстановление будет неверным, если большинство версий предоставят ошибочный результат в точке восстановления.
Очевидно, что RBи NVSмодели сближаются, если приемочный тест выполняется с использованием NVS-метода, а решающему алгоритму NVS предшествует приемочный тест (фильтр, в соответствии с терминологией [54]), либо этот тест применяется, когда решающий алгоритм не способен сделать выбор [93, 94].
Определив основные элементы мультиверсионного программирования, отметим не менее важные проектные этапы, относящиеся к 1.
спецификациям версий NVS-систем ПО (с учетом требований к их дальнейшему конкурентному исполнению в EE-среде с использованием внешних средств поддержки исполнения NVX); 2.
непосредственному этапу программирования, учитывая, что основное требование NVP максимальная независимость исходов процесса и, соответственно, версий ПО; 3.
созданию NVX-систем среды исполнения программных компонент мультиверсионного ПО как с высокой надежностью, так и с эффективными показателями по времени исполнения, что особенно
важно для использования мультиверсионных КП в комплексах управления системами реального времени.
Решение первой из указанных проблем основывается на применении системы спецификаций мультиверсионного ПО, названной "V-Spec" (Vспецификации), которая определяет функциональное предназначение с учетом ограничений по времени исполнения, исходных данных и начального состояния версии ПС; требования по внутреннему контролю ошибок и тестирования версий модуля; требования по диверсификации программирования; 49

[Back]