Containerized Automotive Software Execution with Task Sequencer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer systems, particularly in automotive real-time systems, face challenges in guaranteeing end-to-end computing latencies and managing resource interference between concurrently executing software components, leading to unpredictable behavior and potential safety failures.

Innovation Solution

A hierarchical scheduling approach is implemented using containers, where each application is assigned to a specific container, and task sequencers manage task execution within these containers, ensuring exclusive resource access and preventing interference between containers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple software components are executed concurrently to handle system complexity, then productivity and functionality are improved, but resource interference and unpredictability increase

Engineering Contradiction:
Improvesoftware component execution efficiencyVSAvoidend-to-end latency guarantee
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the computational system into isolated runtime environments (containers) that separately execute different software components. Each container operates independently with its own memory space and resources, preventing interference between concurrent components while maintaining system-wide coordination through the task sequencer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The task sequencer acts as an intermediary between the operating system and individual software components. It receives timing information from the OS, determines the execution sequence of tasks across containers, and coordinates resource allocation to guarantee end-to-end latency requirements while enabling concurrent execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If arbitration mechanisms are implemented to manage concurrent tasks, then resource allocation is improved, but system complexity and overhead increase

Engineering Contradiction:
Improveresource allocation managementVSAvoidscheduling mechanism complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

Each container executes tasks autonomously based on timing information received from the task sequencer, without requiring complex inter-task arbitration. The containerized structure allows software components to self-manage their execution within allocated timeframes, reducing the burden on central arbitration mechanisms.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary scheduling by the operating system, which provides timing information to the task sequencer before execution begins. The task sequencer then pre-determines the execution sequence of tasks across containers based on this timing information, eliminating the need for complex real-time arbitration during task execution.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If low-criticality software components are allowed to execute freely, then system versatility is improved, but interference with critical functions increases

Engineering Contradiction:
Improvesoftware component diversityVSAvoidinterference with critical SWCs
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments critical and non-critical software components into separate containers with isolated runtime environments. This segmentation allows low-criticality components to execute freely within their containers without interfering with critical functions, while the task sequencer ensures proper timing and resource allocation for both.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies preliminary protective measures by isolating critical software components in dedicated containers with guaranteed resource allocation and timing. The task sequencer pre-configures execution priorities and resource reservations to prevent potential interference from non-critical components before it can occur.

Inventive Principle:
Principle #9Preliminary anti-action

Data Source

PatentUS20230418658A1Computer System and Method for Executing an Automotive Customer Function
Publication Date: 2023.12.28 TRUSTMOTION AUSTRIA GMBH
  • US20230418658A1 patent drawing
  • US20230418658A1 patent drawing
  • US20230418658A1 patent drawing

AI summary

A customer function on a computer system comprising processing cores. The customer function comprises applications with a multitude of different tasks. The computer system provides containers and is configured to activate and de-activate said containers so that a container is active or inactive, wherein all tasks of the applications are assigned to containers, wherein all tasks of each specific application are assigned to exactly one specific container, wherein in a timeframe, during which a container is active, one or more cores of the computer system are exclusively reserved for the execution of the tasks of the application of said container, and wherein the computer system is configured such that when a container is inactive, the tasks of said container cannot be executed on the computer system. For each container a task sequencer is provided.