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

Информация - Компьютеры, программирование

Другие материалы по предмету Компьютеры, программирование

  • навыками разработчиков.
  • Для программирования платформы TMS320C30 использовалась среда разработки Code Composer 3.0 с транслятором языка С, во многом напоминающая Visual C++. Выбор данной среды разработки был обусловлен следующими фактороми:

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

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

     

    6.5. Тестирование и отладка

    На этапе разработки и программирования были выбраны следующие методы и средства тестирования и отладки:

    • встроенный отладчик интегрированной среды разработки Visual C++ 6.0;
    • отладочно-демонстрационная программа моделирования отказов ВС;
    • сквозной структурный контроль на всем этапе программирования.
    • встроенный отладчик интегрированной среды разработки Соde Composer 3.0;

     

    6.5.1. Метод сквозного структурного контроля

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

     

    6.5.2. Встроенный отладчик интегрированной среды разработки Microsoft Visual C++ 6.0

    Встроенный отладчик предоставляет следующие возможности:

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

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

    6.5.3. Встроенный отладчик интегрированной среды разработки Code Composer 3.0

    Встроенный отладчик предоставляет следующие возможности:

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

    С его помощью отслеживалась правильность выполнения модулей ОСРВ, переносимых на платформу TMS320C30, и процедуры аппаратно-зависимой диагностики.

     

    6.5.4. Отладочная программа

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

    С помощью отладочной программы проводилось следующее тестирование:

    • проверка правильности реакции системы на отказ или сбой каналов связи;
    • проверка правильности реакции системы на отказ или сбой ПЭ;
    • проверка правильности перестройки (реконфигурации) системы после отказа;
    • проверка правильности выдаваемых системой результатов в условиях постоянной деградации системы.

     

    6.5.5. Отладка и тестирование модулей ОСРВ

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

    Приведем описание процесса тестирования для некоторых модулей.

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

    Модуль реконфигурации: Проверка выполнения всех ветвей проводилась с помощью отладчика, на вход алгоритма подавались нужные значения и с помощью трассировки проверялась правильност?/p>