Debugging Component-Based Embedded Applications
Résumé
With the advent of parallel architectures in the domain of embedded systems, developing applications fully adapted to their underlying platform becomes more and more complicated. Finding and fixing bugs in such environments is even trickier. Furthermore, current complex applications cannot be developed from scratch, only based on programming language primitives. They have to follow advanced programming models and their execution will be driven by the APIs of the key underlying libraries. In this paper, we propose a new approach for source-level debuggers. Going beyond their long-established ability to support sequential programming languages, we describe the functionalities a debugger should be able to provide to debug embedded and parallel component-based applications. Then we demonstrate our solution to this problem with a debugger targeting the component framework used on an MPSoC platform. We also explain the development challenges we faced during the implementation of this GDB-based debugger and illustrate its efficiency though a case study of an image processing application.