GNAT Pro 21.6 for LYNX MOSA.ic for Avionics (MfA)
by Fabien Chouteau –
AdaCore has partnered closely with Lynx to deliver Ada language support alongside its LYNX MOSA.ic software framework that comprises a real-time operating system (LynxOS-178), Linux and hypervisor (LynxSecure) technology.
Traditional approaches to building virtualized embedded software architectures that are robust and secure have placed much of the burden in a hypervisor and/or OS. This can create platform dependencies which impact performance, as well as cause a number of architecture challenges due to:
Shared address space
Shared CPU privilege
Common arbitration points
Global resource pools
Compounding code branches and control flow timing
Large co-dependent code bases that need to be certified
The more complexity that lies hidden between applications and hardware, the cloudier the path to system comprehensibility and robustness. Lynx’s objective with MfA is to reduce software stack dependencies and minimize the hidden complexities between independent application modules and hardware.
The MfA model of partitioning is a “Software-assisted Hardware Partitioning Model” meaning that all partition boundaries of application spaces are exclusively hardware enforced according to a model consciously designed and formally described by an architect. In this model, when an application violates a partition boundary, hardware first catches the violation and requests software assistance from the Separation Kernel Hypervisor to manage the exception. More can be found out about LYNX MOSA.ic in this technical backgrounder.
This AdaCore release provides a cross compiler for long-lived and certified safety-critical Ada development for customers creating applications on LynxOS-178 for Intel’s 11th generation core processor (also referred to as “Tiger Lake”). Included in this cross compiler is the Ravenscar-Cert runtime library, certifiable for Intel platforms which has previously been certified to DO-178C DAL A on a PowerPC platform. It should also be noted that a full Ada tasking model and a completely single-threaded zero-footprint runtime environment are also available. Support for Ada language versions Ada 83, Ada 95, Ada 2005, and Ada 2012 is included.
This is a great example that in spite of the drive towards the next great technology, one of the very big considerations for this industry is the support of proven legacy software. Many of our mutual customers are looking to make system architecture decisions for programs that will last in excess of 20 years. Customers also have significant amounts of proven code which they wish to reuse on new programs. This is one of the reasons why AdaCore’s and Lynx's commitment to continue to provide state of the art software technology to support design decisions that were made 10+ years ago is so important. In keeping with that theme, GNAT Pro 21.6 works with newly announced Ada-aware tools such as GNATstudio and GNATcheck 23.
To find out more information about LYNX MOSA.ic, click here.
For more information about GNAT Pro from Adacore, click here