100 likes | 255 Views
Generative Programming for a Component-based Framework of Distributed Embedded Software Systems. Xu Ke, Krzysztof Sierszecki Mads Clausen Institute for Product Innovation, University of Southern Denmark Grundtvigs Alle 150, 6400 Soenderborg, Denmark {xuke, ksi}@mci.sdu.dk .
E N D
Generative Programming for a Component-based Framework of Distributed Embedded Software Systems Xu Ke, Krzysztof Sierszecki Mads Clausen Institute for Product Innovation, University of Southern Denmark Grundtvigs Alle 150, 6400 Soenderborg, Denmark {xuke, ksi}@mci.sdu.dk
Generative Programming for COMDES-II Illustration of generative programming approach for COMDES-II
COMDES-II Framework • COMDES-II: Component-based Design of Software for Distributed Embedded Systems [version 2] • A domain-specific software framework providing modelling concepts and constraints for different issues in the problem space of a distributed real-time embedded system, such as: • Component structures, interaction, hierarchy • System architecture, concurrency • Environmental physicality (external events, etc.) • Time
environment environment input communication driver input physical driver local signal actor task output communication driver feed belt input output constant function block instance control_task Models in COMDES-II • Two-level specification of the system architecture actor
Meta-modeling HARTEXTM Meta-modeling function blocks • physicality (handling external interrupts) • actor structure (I/O drivers, actor task etc.) • actor task concurrency (primitive priority-based scheduling) • actor interaction (actor communication, actor synchronization etc.) • timing aspects (timed multitasking) • function block structures • function block interaction • function block hierarchy Meta-modeling COMDES-II Composition of meta-models
COMDES-II Toolset COMDES-II Meta-models Verification models Model checkers (e.g. UPPAAL) Input Component/Application models xme files Model transformation Executables for deployment Application configurations, linker scripts Parsed GME Configurator read Automatic synthesis Eclipse + CodeWorker Java API read Component Implementations (C files, makefile) compiled repository Code generator stored
Conclusion • Provides an overview of the generative programming approach for COMDES-II • Various modeling concepts and models of computation in COMDES-II are presented • Meta-models and semantic constraints of COMDES-II components established in GME are discussed and exemplified • An automatic code generation technique developed with CodeWorker tool is demonstrated • The deployment of executables based on GCC is briefly described