Configurability is viable approach to adapt hardware (e.g. network or I/O controller) or generic software (e.g. OS, communication-stack) of embedded systems for a specific application purpose. Parameter tables are defined as part of the system development process. They are stored in the hardware and loaded during run time. Especially redundant systems and distributed architectures require a substantial amount of configuration data whose generation, validation and maintenance pose a challenging task.
Configuration editor RMC
RMCneo is a generic configuration editor which supports parameter data in arbitrary XML-Dialects. The adaption to a particular dialect and the associated workflows are realized by configuration. During this configuration process, it is determined how the XML-data are...
…structured. It is also determined which XML-elements and attributes are editable and which are solely for informational purpose (none-changeable).
…displayed graphically in the RMC GUI (tables, tree, check boxes, …). Several configurations are possible here, either to display different views of the system (network oriented, application oriented, ...) or to represent different roles (module developer vs. applicator).
… processed by calls to (Xslt-, XQuery-, database-, program) transformations, e.g. to convert xml-represented data into source- or binary code (or any other XML-dialect).
As an Eclipse®-Plugin, the RMC-frontend integrates seamlessly with state-of-the-art development environments (e.g. CDT, Windriver WorkBench). A native XML-database (BaseX) serves as backend which ensures scalability and performance even for extensive amounts of data. This allows a central storage and processing of all system wide software- and hardware configuration data (practical project experience with >300.000 parameters / ~800Mbyte of data).
RMC-frontend (Eclipse Plugin) in use for the SCORPOS operation system configuration: Tree-diagram (left) and table view (right) of XML-data.