RMC – RTOS Module Configurator

Background

Configurability is a common approach to adapt hardware (e.g. network or I/O controllers) or generic software (e.g. operating system, communication stack) of embedded systems to a specific application purpose. As part of system development, parameterization tables are defined that are stored on the hardware and loaded at runtime. Redundant systems and distributed architectures in particular often result in very extensive data sets, the creation, validation and maintenance of which is a challenging task.

Configuration editor RMCneo

RMCneo is a generic configuration editor that supports parameter data in any XML dialect. Adaptation to the various dialects and the associated workflows is achieved through configuration. This determines how the XML data…

  • …are structured. This also determines which XML elements and attributes can be edited and which are for information purposes only (cannot be changed).
  • …can be displayed graphically in RMC (table, tree, checkbox, …). Several configurations are possible, for example to reflect different views of a system (network-oriented, application-oriented, …) or different roles (module developer vs. applicator).
  • …are structured. This also determines which XML elements and attributes can be edited and which are for information purposes only (cannot be changed).
  • …can be displayed graphically in RMC (table, tree, checkbox, …). Several configurations are possible, for example to reflect different views of a system (network-oriented, application-oriented, …) or different roles (module developer vs. applicator).
  • …can be processed by suitable calls of (Xslt, XQuery, database, program) transformations, e.g. for conversion into source / binary code or into another XML dialect.

XML schemas and Schematron are used to validate the data, with the results being visualized in the editor.

As an Eclipse® plug-in, the RMC front end integrates seamlessly into corresponding development environments (e.g. CDT, Windriver WorkBench). A native XML database (BaseX) serves as the back end, ensuring scalability and performance even with large volumes of data. This enables the central storage and processing of all system-wide required software and hardware configuration data (practical project experience with >300,000 parameters, corresponding to approx. ~800Mbyte).

RMC architecture

Screenshot

RMC frontend (Eclipse plugin) in the application for SCORPOS operating system configuration: tree view (left) and table view (right) of XML data.


“Eclipse” and the Eclipse Logo are trademarks of Eclipse Foundation, Inc.
This product includes software developed by BaseX GmbH, Konstanz.