Xoncrete

Xoncrete is an integrated editor and analysis tool that performs the schedulability analysis of a partitioned system. Rather than a general purpose scheduling tool, Xoncrete has been designed to meet the ARINC 653 system model as the executive platform environment in general, and in particular the XtratuM framework. Xoncrete benefits are described below.

  • Rich system model

    The workload is a tailored version of the MARTE-UML specificacion. It is also pretty close to the AADL proposal. The model is powerful enough to capture most of the requirements of any real world application in an intuitive way, but also it is possible to build a compact and easy to debug plan.

  • Modular system description

    Each partition can be edited independently, and later merged into the final system.

    When considering partitioned real-time systems, this is stated by the independent certification of the partitions, since the underlaying infrastructure (the partitioning kernel) is assumed to provide the proper temporal and spatial isolation. Is a must to preserve certain properties of the resource allocation to the partitions so the partitioning kernel is able to guarantee the isolation. As far as processing power allocation is concerned, Xoncrete guarantees that when the workload of the system is modified the new assignation of processing power, required to cope with the modifications, does not impact in the partitions not involved in the modifications.

  • Intuitive error reporting

    Resource allocation inconsistencies (memory overlaps, wrong port binding, etc.) are immediately detected and reported. The tool will display a warning message to the user in such cases. In contrast, the scheduling analysis tools depends on valid temporal data and therefore they will not be available while there exists invalid data. This way, the user is immediately notified about data inconsistencies, easing its fix, and hence, improving the usability of the application.

    The validation process reports the impossibility to generate a valid plan, and the offending process is identified.

  • Generates XtratuM configuration files (XML format).

    Xoncrete can be used to assists the user to generate a yet valid Xtratum configuration file (XM CF) when a Xoncrete project is exported to. An exported XML file may be used to fulfil the System configuration step of the application development process using the Xtratum architecture. Xoncrete will also generate the schedule plan section of the XML file coherent with this scheduling data.

  • Modeling and analysis of parallel execution devices

    It is very frequent that certain transfer that carry data from or to a hardware devices are more efficiently performed using direct memory access (DMA) transfers. The benefits come from the fact that once the DMA controller has been programed to perform the transfer, the CPU becomes free to execute other tasks.

    The DMA operation, as well as other devices that operate in parallel with the processor, is guaranteed and can be easily captured in the system description editor. The generated schedule honors those requirements.

  • Powerful period selection assistance

    A novel algorithm which assist the integrator adjust the period or rate of the periodic activities to minimise the system MAF (hyperperiod). Xoncrete assists the user in finding the set of periods that produce the smallest MAF.

  • Incremental management of frozen plans

    Xoncrete simulates the execution of the system using the scheduler and the model defined by the user, the plan gets automatically generated (see figure bellow). Already existing plans can be partially updated while maintaining the temporal properties of selected partitions. Which reduces validation activities along the whole life time of the application.

Xoncrete generated plan. The plan is shown as a graphical representation of the CPU allocation as calculated in the schedule, that is, which element of the system is executing at each instant of time . Each partition is automatically assigned a color, in order for the user to be easier to identify the execution slots for each one.

The tool has been fully coded in standard "C" and the user frontend is base on web standards (HTML, CSS, Javascript, AJAX). This combination of technologies guarantees:

  1. Technological independence.
  2. Fast and efficient algorithm implementation.
  3. Multiplatform operation: Solaris, Linux, Windows, Mac, etc.
  4. Long term support.

Xoncrete Tutorial

In this video tutorial below we will show you how to use the main features of the Xoncrete tool.