A State-of-the-Art Microkernel for Top Performances
ASTERIOS® Real-Time Kernel (RTK) is the companion package to ASTERIOS® Developer that incorporates all necessary files and microkernel binaries to run the application on a hardware platform.
When compiling a real-time application, ASTERIOS® Developer calculates the Real-Time kernel configuration (scheduling, synchronizations, runtime tables) and hardware resources (memory and CPU usage) necessary to run the application on the hardware target. The ASTERIOS® RTK package provides an optimized microkernel specifically adapted to the selected hardware platform that enables to automatically run the compiled real-time application with all the ASTERIOS® Developer calculated information.
As the scheduling and runtime tables are computed statically with ASTERIOS® Developer, the microkernel does not have to manage any complex dynamic priority algorithm or critical section mechanisms (there are no mutex or semaphores). The ASTERIOS® RTK microkernel provides a lock-free wait-free architecture, and no possible deadlock or priorities inversions can ever happen.
In addition the ASTERIOS® RTK microkernel is built to ensure fast context switching, ultra‐low latencies and a small memory footprint (approximately 5,000 LOC only). ASTERIOS® RTK ensures by construction strong determinism at multitask level while keeping these high performances. All tasks always have a predictable temporal behavior, controlled durations and spatial confinement even in case of failure. It can drive real-time critical tasks well below the millisecond even on low performance hardware platforms, and can mix them seamlessly with slower tasks.
Profiling on the Hardware Platform
The ASTERIOS® RTK package enables for automatic profiling on the hardware platform. It is able to adapt to possible timing violations that can arise on the hardware target. The profiling results are used by ASTERIOS® Developer for automatically calculate a new Real-Time kernel configuration with a simple compilation.
Cohabitation with Guest-OS
When the underlying hardware platform supports the ARM® TrustZone® technology, an ASTERIOS® RTK can be configured to safely combine ASTERIOS® with a Guest-OS. This configuration is called ASTERIOS® RTK with Guest-OS and in the initial version it supports the Yocto Linux distribution.
Such development extends the ASTERIOS® product roadmap with the ability to coexist in a secure way on the same single- or multi-core platform with another Guest-OS, while keeping ASTERIOS®’s intrinsic determinism in running real-time critical applications. Linux has been the first choice as Guest-OS since it provides the necessary POSIX-compliant API for an easy legacy code reuse, as well as it supports a large number of open communication protocols and graphics display solutions.
The ASTERIOS® RTK with Guest-OS solution manages the ARM® TrustZone® processor technology and provides full spatial and temporal protection to the ASTERIOS® and Linux application. The ASTERIOS® and Linux partitions can communicate using specialized communication means, and the ASTERIOS® application is ensured by construction to be free from interference from Linux or any of its running applications.
By combining “Secure World” applications (with security or safety constraints) with “Normal World” (not constrained by security or safety requirements), the ASTERIOS® RTK with Guest-OS solution will allow the industry to design critical applications able to communicate on an open network without compromising safety and security.