Основные виды избыточности, применяемые в бортовом программном обеспечении для надежного

Автор: Кондратьев Константин Александрович, Шумаков Николай Николаевич, Ерохов Павел Михайлович, Хохлова Анна Васильевна, Колташев Андрей Александрович

Журнал: Сибирский аэрокосмический журнал @vestnik-sibsau

Рубрика: Авиационная и ракетно-космическая техника

Статья в выпуске: 3 (29), 2010 года.

Бесплатный доступ

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

Избыточность, надежность, бортовое программное обеспечение

Короткий адрес: https://sciup.org/148176216

IDR: 148176216

Текст обзорной статьи Основные виды избыточности, применяемые в бортовом программном обеспечении для надежного

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

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

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

При проектировании бортового программного обеспечения (БПО) широко применяются следующие виды избыточности:

  • 1)    временная избыточность, которая заключается в том, что часть производительности системы используется для дополнительного контроля и восстановления работоспособности;

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

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

Применение метода временной избыточности при организации вычислительного процесса. При организации вычислительного процесса ядро системы постоянно осуществляет следующие проверки:

  • –    при работе с очередями задач ОС всегда проводит проверку очередей на корректность;

  • –    при прерываниях выполняющейся задачи ОС проводит проверку на корректность использования задачей выделенного стека;

  • –    периодически и по аномальным исключениям ОС проводит контроль целостности системных таблиц путем подсчета контрольной суммы таблицы и сравнения полученного значения с эталонным;

  • –    периодически и по аномальным исключениям ОС проверяет корректность кода программ в ОЗУ путем подсчета контрольной суммы их кода и сравнения полученного значения с эталонным; при обнаружении искажения кода код программы восстанавливается с ППЗУ.

Применение метода информационной избыточности в БПО. Применение метода заключается в следующем:

  • 1.    Для организации контроля и восстановления системных таблиц, каждая из них имеет свой дубликат и восстанавливается по нему в случае искажения рабочего экземпляра.

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

  • 3.    При организации одноуровневой файловой системы на ВЗУ для повышения надежности используется метод коррекции ошибок, аналогичный дисковому массиву RAID первого уровня (зеркало) – каждый файл имеет свою копию. При чтении файла считывается корректная копия, а при обнаружении искажения одного из экземпляров файла он восстанавливается информацией с параллельного.

Применение методов программной избыточности при проектировании компонент БПО . Применение метода заключается в следующем:

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

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

Вестник Сибирского государственного аэрокосмического университета имени академика М. Ф. Решетнева

Общая структура фраз:

  • –    идентификатор фразы;

  • –    время формирования;

  • –    идентификатор компоненты, формирующей фразу – номер задачи или функции, при выполнении которой была сформирована фраза;

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

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

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

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

  • C. A. Kondratev, N. N. Shumakov, P. M. Erohov, A. V. Hohlova, A. A. Koltashev

THE MAIN TYPES OF REDUNDANCY THAT ARE USED FOR DESIGN OF NAVIGATION AND COMMUNICATION SATELLITES RELIABLE OPERATION SOFTWARE

The article considers the main types of redundancy that are used at the stage of software designing, their application and realization as a part of on-board software for navigation and communication satellites; for increasing the reliability of computing system functioning in a whole, its stability in case of errors and the methods for error preventing.

Статья обзорная