Safety-Critical Operating Environment With Hypervisor Partitioning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional computing environments in safety-critical applications like avionics face challenges in ensuring robust computational capabilities, stringent safety adherence, and reliability across diverse platforms, with a need for an operating system that can bridge non-uniformity between various sub-systems while preventing system-wide failures.
Innovation Solution
A safety-critical operating environment (SCOE) is provided through a multi-partition architecture using a host circuit with a processor and memory, employing a hypervisor to instantiate virtualization layers, allocate dedicated resources, and integrate software modules within non-preemptible containers to ensure compliance with safety standards.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a multi-partition architecture with virtualization is implemented, then system reliability and safety compliance are improved, but device complexity increases
Solution Approach 1:
The system is divided into multiple isolated partitions (first partition for safety-critical applications, second partition for non-critical applications) managed by a hypervisor. This segmentation allows independent verification and validation of each partition, improving overall system reliability while containing complexity within manageable boundaries.
Solution Approach 2:
A hypervisor is introduced as an intermediary layer between the physical hardware and the partitioned virtual environments. This intermediary manages resource allocation, enforces isolation policies, and coordinates communication between partitions, thereby improving reliability through controlled interaction while abstracting the underlying complexity.
2Reliability
If dedicated execution time slices and private static memory space are allocated to each partition, then system security and isolation are improved, but resource utilization efficiency deteriorates
Solution Approach 1:
Each partition is assigned specific quality attributes: the first partition receives guaranteed execution time slices and private static memory space for safety-critical operations, while the second partition utilizes remaining resources. This local differentiation ensures security where needed while allowing flexible resource utilization elsewhere.
Solution Approach 2:
The hypervisor dynamically manages resource allocation between partitions based on priority and availability. While the first partition has guaranteed resources, the second partition can utilize unused capacity from the first partition when available, creating a dynamic balance between security guarantees and overall resource efficiency.
3Reliability
If software modules are integrated within non-preemptible containers using pre-defined operational rules, then compliance with safety standards is improved, but adaptability and ease of operation deteriorate
Solution Approach 1:
Operational rules for software modules are pre-defined and verified before deployment into containers. These rules encode safety requirements and operational constraints that are validated in advance, ensuring compliance with safety standards while allowing the modules to operate autonomously within their defined boundaries.
Solution Approach 2:
The containerization approach with standardized operational rules creates a universal framework that can accommodate different software modules while maintaining safety compliance. The same container infrastructure and rule-validation mechanism applies across diverse applications, providing both safety assurance and flexibility in deploying different functional modules.
Data Source
AI summary
An apparatus for providing a safety-critical operating environment, comprising a host circuit having a processor and a memory containing instructions configuring the processor to operate a first partition within a virtual environment, by instantiating a hypervisor, generating a virtualization layer supervised by the hypervisor, and operating the first partition in the virtual environment using the virtualization layer, receive a configuration request containing a configuration request from the first partition, create a second partition within the virtual environment based on the configuration request by allocating processor time and a memory space for the second partition using the hypervisor based on the a partition policy, integrate a software module into the virtual environment by instantiating, within the second partition, a software image into a container having a non-preemptible container runtime, and verify a compliance of the integrated software module at the first partition.


