Developing a debugger for real-time operating system
Автор: Emelenko A.N., Mallachiev K.A., Pakulin N.V.
Журнал: Труды Института системного программирования РАН @trudy-isp-ran
Статья в выпуске: 2 т.28, 2016 года.
Бесплатный доступ
In this paper, we report on the work in progress on the debugger project for real-time operating system JetOS for civil airborne systems. It is designed to work within Integrated Modular Avionics (IMA) architecture and implements ARINC 653 API specification. This operating system is being developed in the Institute for System Programming of the Russian Academy of Sciences and next step in developing this system is to create a tool to debug user-space applications on it. We also discuss the major requirements to such a debugger and show the difference between it and typical debugger, used by desktop developers. Moreover, we review a number of debuggers for various embedded systems and study their functionality. Finally, we present our solution that works both in emulator QEMU, which we use to emulate environment for our system, and on the target hardware. The presented debugger is based on GDB debugging framework but contains a number of extensions specific for debugging embedded applications. However, the implementation of the debugger is not complete yet and there is a number of features that can improve debugger usability, but it is already more functional than common GDB debugger for QEMU and, in contrast to other systems and their debuggers, where developers can use some functions to debug applications, but not all we need, our debugger meets the majority of our requirements and restrictions.
Debugger, gdb, real-time os, remote debugger
Короткий адрес: https://sciup.org/14916339
IDR: 14916339 | DOI: 10.15514/ISPRAS-2016-28(2)-13
Разработка отладчика для операционной системы реального времени
В этой статье мы расскажем о проекте по разработке отладчика для операционной системы реального времени JetOS, созданной для гражданских авиационных систем. Она предназначена для работы в рамках архитектуры Интегрированной Модульной Авионики (ИМА) и реализует ARINC 653 спецификацию API. Эта операционная система разрабатывается в институте системного программирования РАН, и следующим шагом в ее разработке стало создание инструмента для отладки пользовательских приложений. Также в этой статье будут рассмотрены основные требования к такому отладчику и показана разница между ним и обычным отладчиком, используемым разработчиками настольных приложений. Более того, были рассмотрены другие встраиваемые операционные системы, такие как WxWorks, Fiasco OS, L4Ka::Pistachio и отладчики для них, а также был изучен их функционал. В заключение, мы представим наш отладчик, который может работать как в эмуляторе QEMU, используемом для эмуляции окружения для JetOS, так и на целевой машине. Представленный отладчик является удаленным и построен с использованием структуры GDB, но содержит ряд расширений, специфичных для отладки встроенных приложений. Однако реализация отладчика пока не завершена и существует целый ряд задач по улучшению удобства и возможностей отладчика, но на текущий момент он является уже более функциональным, чем обычный отладчик GDB для QEMU и, в отличие от других рассмотренных систем и их отладчиков, где разработчики могут использовать некоторые функции для отладки приложений, но не все, что нам нужны, наш отладчик удовлетворяет большинству поставленных требований и ограничений, а также уже используется разработчиками приложений для JetOS.
Список литературы Developing a debugger for real-time operating system
- F. Mehnert, J. Glauber and J. Liedtke, “Fiasco Kernel Debugger Manual” Dresden University of Technology, Department of Computer Science, November 2008 (https://os.inf.tu-dresden.de/fiasco/doc/jdb.pdf)
- Lauterbach GmbH, “RTOS debugger for VxWorks”, November 2015 (http://www2.lauterbach.com/pdf/rtos_vxworks.pdf)
- Lauterbach GmbH, “RTOS-VxWorks”, 18 August 2014 (http://www2.lauterbach.com/doc/rtosvxworks.pdf)
- System Architecture Group University of Karlsruhe. “The L4Ka:: Pistachio Microkernel”. May 1, 2003 (http://www.l4ka.org/l4ka/pistachio-whitepaper.pdf)
- Wind River Systems, Inc “VxWorks Product Overview”, March 2016 (http://windriver.com/products/product-overviews/2691-VxWorks-Product-Overview.pdf)
- Free Software Foundation, Inc. “Debugging with gdb: the GNU Source-Level Debugger”, The Tenth Edition (https://software.intel.com/sites/default/files/article/365160/gdb.pdf)