About Us Customers Partner Contact
Products Services News&Events Support Download
Aonix > Products > SmartKernel >




Aonix Products

SmartKernel

 

SmartKernel Introduction

SmartKernel™ is an embedded Kernel built from the ground up to support: hard real-time, safety, security and mission critical applications. By specifically targeting support for these application areas it provides full support for their needs in terms of performance and determinism. As an embedded Kernel it is designed to be both smaller and faster than a general purpose embedded operating system. SmartKernel has built in support for safety and security standards with certification to the FAA's DO-178B standard Level A. It supports time and memory partitioning for multiple safety or security levels. SmartKernel then also supports multiple programming languages with off-the-shelf support for:  C/C++, Ada95 and execution of Java™ platform applications in embedded systems. SmartKernel is a complete solution for any embedded application development where reliability is important.

SmartKernel Architectural Overview

SmartKernel is an embedded Kernel built from the ground up to support: hard real-time, safety, security and mission critical applications. At its core is a very small enabling core kernel called the Enabler. The Enabler provides just those capabilities necessary to implement higher level kernels or language specific operating systems, such as an Ada run-time-system (RTS) or virtual-machine supporting the execution of  Java™ platform applications. By only implementing these capabilities the Enabler may be kept: small, fast and absolutely deterministic.

The Enabler provides support for those features necessary to implement higher level kernels. These include:

  • Process Threads
  • Process Scheduling
  • Time Related Services
  • Memory Management
  • Basic IO Services and
  • System Health Monitoring

Lastly the Enabler is based on proven technology. The Enabler is based on the Aonix ObjectAda RAVEN™ certified kernel. Thus although SmartKernel is a new technology configuration, it is built on a well tested and proven technology base.

SmartKernel Safety and Security

SmartKernel is an embedded Kernel built from the ground up to support: hard real-time, safety, security and mission critical applications. For Safety this means that it is certified to the FAA's DO-178B standard Level A. Aonix has a vast amount of experience in the safety and security area. Our embedded kernels were some of the first to ever be certified to DO-178B Level A with our: C-SMARTT, T-SMARTT and RAVEN™ product line kernels. SmartKernel is built using the previously certified RAVEN kernel as its core Enabler kernel and thus inherits this proven history. Certification packages are available for DO-178B Level A the commercial avionics safety standard, EN50128 SIL 4 high speed rail safety standard, and mappings to other safety standards in other high integrity application areas.

SmartKernel Partitioning

SmartKernel is an embedded Kernel built from the ground up to support: hard real-time, safety, security and mission critical applications. For safety and security this also means support for application partitioning. This is the core capability of protecting one resident application from the failure of another. SmartKernel supports both Time and Memory partitioning by implementing and supporting the ARINC-653 application-programming-interface (API).

 

   
Memory Based Partitioning Support
Time Based Partitioning Support
 

SmartKernel Memory Partitioning Support prevents one application partition from accidentally corrupting the memory of another.  This protects from rouge memory access across partitions and also from the crashing of an application in one partition from effecting the execution of an application in another.  Time Partitioning support prevents the execution of an application in one partition from starving CPU time away from another.  At a lower level of granularity it sets the specific allotment of CPU execution time for each partition and across all partitions.

SmartKernel Configuration Tool

SmartKernel configuration and partition specifics are defined by the SmartKernel configuration tool. This tool allows for the selection of memory size and location per partition as well as time allotments. It also defines the criticality of a specific partition or its security level. This allows the tool to automatically check the legality of a specific partition settings or its legality in relation to the total set of defined partitions. Language support and other relevant settings are defined via the configuration tool as well.

The configuration tool takes as input the fields specified above as a set of "Required" features and "Forbidden" features. These clearly define the configuration for each partition. The configuration tool then also validates the total set of configurations to make sure the combined set, forms a legal collection. A simple example is that it will check to make sure memory partition definitions do not overlap. A more interesting example is, for a partition defined as being certifiable to DO-178B Level A, that all listed "required" features are in fact supplied in certified libraries.

The configuration tool both defines applications and partitions, but allows them to be separately statically built. This allows simpler, faster download and development time. More importantly it guarantees that a change to one partition build will not effect another. This has huge cost benefits where a development team can guarantee that changes in one partition will not effect another. Thus eliminating any need for costly retesting of a certified partition.

SmartKernel Multi-Language Support

SmartKernel supports multiple languages in general and different languages within or across partitions.

SmartKernel supports:

  • SmartKernel C-C++/Embedded
  • SmartKernel Ada95/Embedded
  • SmartKernel Java™/Embedded
  • SmartKernel Ada95/Certified
  • SmartKernel Java™/Certified

C/C++/Embedded support is provided via the industry standard GNU tool set.

Ada95/Embedded support is provided by the popular ObjectAda® Real-Time development environments.

.

Ada95/Certified is supported by the already certified ObjectAda® Real-Time RAVEN™ development environments.

Java™/Embedded is supported by the Aonix JRTK™ (Java™ Real-Time Kernel) a hard real-time version of the mission critical PERC® development environment and VM.

Java™/Certified support is provided by the JRaven™ (Java™ Ravenscar standard) certified development environment and VM supporting the execution of Java™ platform applications..  These are available as a complete set or as a slice of SmartKernel language specific capabilities.

SmartKernel is available as a complete multi-language kernel and environment or as single slices for specific language.

SmartKernel Summary

SmartKernel is an embedded Kernel built from the ground up to support: hard real-time, safety, security and mission critical applications. It is a new technology based on the already proven and certified ObjectAda Real-Time RAVEN™ embedded kernel. It supports time and memory protection across partitions and applications. Thus protecting one application from the potential failure of another. It provides advanced build and configuration capabilities to save development time and greatly reduce safety and security testing costs. Finally it supports development environments for the most important embedded development languages of: C/C++, Ada95 and Java™. It is truly the best Kernel and development environment for: hard real-time, safety, security and mission critical applications!

Other Related Aonix Products

Aonix offers other environments and kernels for bare embedded target development with safety and security requirements.

Related Aonix Products for Bare Embedded Target Development


 

ObjectAda® General Development Environments


 

ObjectAda® Real-Time RAVEN™ bare certified Ada95 development environment and kernel.


 

PERC® mission critical Java™ development environment and clean room virtural machine supporting the execution of Java™ platform applications in embedded systems.


Ameos™ UML and MDA safety and mission critical design tool suite.

 




Product Literature


SmartKernel Fact Sheet
(PDF, 914K)


SmartKernel
Ada95/Embedded
Fact Sheet

(PDF, 913K)


DO178B Level A Certified Kernels