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

51

На правах рукописи

Котенок Андрей Владимирович

МУЛЬТИВЕРСИОННАЯ СРЕДА ИСПОЛНЕНИЯ

ДЛЯ ОТКАЗОУСТОЙЧИВЫХ ПРОГРАММНЫХ КОМПЛЕКСОВ

СИСТЕМ УПРАВЛЕНИЯ

05.13.01 – Системный анализ, управление и обработка информации

(космические и информационные технологии)

05.13.11 – Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Диссертация на соискание ученой степени

кандидата технических наук

Научный руководитель:

д.т.н., профессор Ковалев И.В.

Красноярск – 2009

Содержание

Введение 2

1. Отказоустойчивые системы управления 7

1.1. Программная составляющая критичных по надежности систем управления 7

1.2. Описание объекта исследования и его анализ 22

1.3. Методы повышения надежности программных систем 25

2. Мультиверсионная среда исполнения оптимизационных алгоритмов: программная реализация 49

2.1. Анализ требований к среде мультиверсионного исполнения 49

2.2. Применение мультиверсионной методологии к системе управления 53

2.3. Выбор способа реализации программных модулей и их взаимодействия со средой исполнения 54

2.4. Реализация общих алгоритмов функционирования среды исполнения 62

2.5. Реализация алгоритма выявления отказов программных модулей 65

2.6. Реализация алгоритмов принятия решения о корректности или ошибочности состояний мультиверсий 65

3. Программный комплекс среды мультиверсионного исполнения 73

3.1. Теоретическое исследование предельной надежности мультиверсионных моделей проектирования отказоустойчивых систем 73

3.2. Исследование результатов работы реализованной среды исполнения 78

3.3. Применение методологии мультиверсионного программирования к оптимизационным алгоритмам отказоустойчивых систем 92

3.4. Методология выбора наилучшего алгоритма оптимизации 93

3.5. Анализ результатов 99

Заключение 102

Список использованных источников 103

Введение

Актуальность работы.

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

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

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

Объектом исследованияявляется программный комплекс критичной по надежности системы управления.

Предмет исследования– среда исполнения программного комплекса системы управления.

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

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

Для достижения цели требуется решить следующие задачи:

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

  • Разработать методику применения моделей для реализации программного комплекса системы управления.

  • Разработать программный инструментарий, представляющий собой универсальную среду мультиверсионного исполнения модулей программного комплекса.

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

  • Реализовать и протестировать мультиверсионную среду программного комплекса системы управления.

Методы исследования. Для решения поставленных задач использовались методы теории систем управления, проектирования отказоустойчивых программных систем и системного анализа. Ряд результатов получен на основе имитационного моделирования.

Научная новизна результатов, полученных в диссертации, состоит в следующем:

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

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

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

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

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

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

Реализация результатов работы. В диссертационной работе были разработаны две программные системы, предназначенные для внедрения мультиверсионного подхода при проектировании программного комплекса системы управления. В рамках системы «СМВИ v1.0» предложена методика оценки эффективности мультиверсионных моделей в зависимости от количества мультиверсий, вероятностей их безотказной работы и качества проверочного модуля. Разработанная имитационная система «ИС-СМВИ v1.0» помогает выбрать мультиверсионную модель и наилучший алгоритм мультиверсионного голосования. Программные системы прошли экспертизу и зарегистрированы в Отраслевом фонде алгоритмов и программ (ОФАП), что делает их доступными широкому кругу специалистов в области архитектуры, проектирования и разработки программного обеспечения отказоустойчивых информационно-управляющих систем.

На основе материалов диссертационной работы был разработан учебный курс, читаемый магистрам на кафедре «Системный анализ и исследование операций» Сибирского государственного аэрокосмического университета.

Апробация работы. Основные положения и результаты диссертационной работы прошли апробацию на международных и всероссийских научных конференциях: на всероссийских научных конференциях «Современные телекоммуникационные и информационные технологии» (2006), «Информационно-телекоммуникационные технологии и электроника» (2007), международных научных конференциях «Решетневские чтения» (2006), «Инновационные технологии» (2008).

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

Публикации. По материалам диссертации опубликовано 13 работ, включая публикации в журналах по Перечню ВАК РФ.

Структура и объем работы. Диссертация состоит из введения, трех разделов и списка литературы из 121 наименования. Содержание работы изложено на 115 страницах.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]