СОВРЕМЕННАЯ ЭЛЕКТРОНИКА 2010-5

В ВЕДЕНИЕ Одним из этапов в создании любо го программного продукта является отладка и анализ алгоритма работы приложения. Этот касается и прило жений, работающих в операционных системах реального времени (ОСРВ), в частности RTEMS. Здесь, помимо правильности обработки данных, возникает вопрос о правильном пла нировании задач и своевременной реакции задач на события. Можно проводить анализ приложе ния в режиме реального времени с целью сбора информации о том, ка кое количество ресурсов потребляет каждая задача. Таким образом, для приложений реального времени воз никает необходимость в дополни тельном анализе планирования и быстродействия задач. Операци онная система реального времени RTEMS предоставляет разработчику полный набор компонентов для соз дания точного и удобного механиз ма анализа и отладки приложения. Об этих компонентах пойдёт речь в дан ной статье. О ТЛАДЧИК GDB В ОСРВ RTEMS нет резидентного от ладчика, поэтому стандартный отлад чик GDB (GNU Project debugger) может быть сконфигурирован при сборке системы как кросс отладчик. Отладчик GDB построен по принципу host tar get и состоит из двух модулей – отла дочного сервера, работающего на це левой платформе, и отладчика на инструментальной платформе; соеди нение между ними осуществляется че рез UDP/TCP. Недостатком такого спо соба отладки является «потеря» режима реального времени при использова нии точек останова, поэтому для со ПРОГРАММИРОВАНИЕ 66 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 5 2010 Отладка приложений и настройка параметров конфигурации операционной системы реального времени RTEMS Николай Баландин, Александр Крапивный (Москва) В статье рассматривается настройка параметров конфигурации операционной системы реального времени RTEMS и способы отладки приложений при помощи компонентов, предоставляемых пользователю операционной системой, а также возможность использования графического интерфейса. хранения режима реального времени приходится использовать другие ме тоды отладки, в первую очередь, это отладка встроенными средствами RTEMS. О ТЛАДКА ПРИЛОЖЕНИЙ СРЕДСТВАМИ КОМАНДНОГО ИНТЕРПРЕТАТОРА RTEMS ОСРВ RTEMS имеет в своей команд ной оболочке набор команд для отлад ки приложений и сбора информации о текущем состоянии системы. Рас смотрим основные из них: ● mdump адрес длина – выводит на эк ран дамп памяти заданной длины, начиная с заданного адреса; ● wdump работает так же, как и mdump , но выводит дамп по словам; ● medit адрес байты – модификация памяти, начиная с заданного адреса, замена на указаннуюпоследователь ность байт; ● mmove назначение источник длина – копирование участка памяти; ● malloc info | stats – вывод информа ции или статистики об используе мой памяти. ОСРВ RTEMS имеет следующие ко манды оболочки для сбора системной информации: ● cpuuse – вывод информации обо всех потоках в системе, времени их выполнения и времени, прошедшего с момента последней загрузки сис темы; ● stackuse – информация об использо вании стека каждым потоком; ● wkspace – информация об использо вании рабочего пространства; ● config – вывод конфигурации систе мы; ● itask – список всех задач при иници ализации в системе; ● task – список всех задач в системе; ● queue – вывод информации об оче редях сообщений; ● sema – вывод информации о сема форах; ● region – вывод информации о регио нах памяти; ● part – вывод информации о разде лах в памяти; ● object – вывод информации об объек тах RTEMS; ● driver – отображение таблицы драй веров устройств; ● netstat [tcp] [udp] [ip] [icmp] [mbuf] [route] [if] – вывод состояния и ста тистики стека сетевых протоколов TCP/IP. Данные командымогут быть исполь зованы только при включении команд ной оболочки и пригодны в основном для получения информации о систе ме, для автоматизации анализа или от ладки. М ЕНЕДЖЕР РАСШИРЕНИЙ ПОЛЬЗОВАТЕЛЯ Помимо средств командной оболоч ки, RTEMS позволяет разработчику ис пользовать набор системных вызовов для сбора информации о состоянии системы и добавлять свои функции, вызываемые ядром RTEMS при пере ключении контекста в планировщике задач или возникновении неисправи мой ошибки (fatal error). В ОСРВ RTEMS такие функции предоставляют ся разработчику менеджером расши рений пользователя. Они служат для обработки системных событий в це лях отладки, мониторинга или расши рения функциональности системы в целом; RTEMS позволяет вызывать функции пользователя в следующих ситуациях: ● создание задачи ( task creation ); ● запуск задачи ( task start ); ● начало задачи ( task begin ); ● перезапуск задачи ( task restart ); ● завершение задачи ( task exit ); ● удаление задачи ( task delete ); ● переключение контекста задачи ( task context switch ); ● возникновение неисправимойошиб ки ( fatal error detection ). © СТА-ПРЕСС

RkJQdWJsaXNoZXIy MTQ4NjUy