The purpose of this feature is to provide architecture and design for the use of Real-Time Operating Systems (RTOSes) in the context of Automotive Grade Linux. The AGL System Architecture Team developed Use Cases for the RTOS usage in an automotive context which form the basis of the architectures that are proposed.  

At the time of writing, there are three prioritized contexts in which the RTOS would operate. Each context requires different execution architecture, system permissions, and data flows. As a side effect, each context will likely have its own set of supported reference hardware. Each set may include reference implementations of the same RTOS but interoperability is implementation defined. 

  1. Distributed System (ECU) context. The RTOS runs on an ECU or other compute entity within the vehicle interoperating over fieldbus to the AGL system.  
  2. Heterogeneous Multicore context. The RTOS runs on one or more remote processors of a mixed criticality system.
  3. Hypervisor Cell context. The RTOS runs in a hypervisor cell of a mixed criticality system.

The architectures for the above contexts should be RTOS and semiconductor independent but reference implementations would have concrete examples using a subset of respective technologies. It is expected that there is at least one reference implementation for each context.

For each context, we expect the following architectures.

  1. System architecture. Defines where relevant subsystems and components are placed. 
  2. Deployment architecture. Defines deployment artifacts and where they are used in a system context.
  3. Execution architecture. Defines the subsystem and component interactions.
  4. Data flow architecture. Defines the data flows between subsystems and components, and where relevant data security and resiliency considerations.

For inter-VM, inter-container, inter-CPU communication see the list of Supported Protocols that have been discussed. 

Initial plan from IC-EG.

  • No labels