Virtual Machine Device Initialization for Lower Verification Complexity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of achieving formal verification in device operation across multiple operating system modalities increases due to the amount of code required by formally verified operating systems, making it challenging to manage device initialization and operations effectively.

Innovation Solution

A method where a first virtual machine performs device initialization operations and determines the initialized state, while a second virtual machine, potentially formally verified, handles device operations, separating the code and reducing the need for extensive formal verification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If device initialization operations are included in the formally verified operating system code, then the operating system can perform both initialization and operations, but the complexity of achieving formal verification increases significantly

Engineering Contradiction:
Improveoperating system modality supportVSAvoidformal verification complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the operating system functionality into two separate virtual machines: a first virtual machine that performs device initialization operations, and a second virtual machine that performs device operations in initialized state. This segmentation allows the formally verified operating system to only include the second virtual machine's code, excluding the initialization code from verification requirements, thereby reducing formal verification complexity while maintaining multi-modality support

Inventive Principle:
Principle #1Segmentation

2Ease of manufacture

If device initialization code is separated from the formally verified operating system, then formal verification resources are reduced, but the system requires multiple virtual machines to operate

Engineering Contradiction:
Improveformal verification resource requirementVSAvoidvirtual machine architecture
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent introduces a hypervisor as an intermediary layer that manages multiple virtual machines, including the first virtual machine for initialization and the second virtual machine for operations. The hypervisor handles the complexity of multi-VM management, allowing the formally verified operating system to focus solely on device operations without burden of initialization code, thus reducing verification resources while managing VM architecture complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11893412B2Device initialization by an access-restricted virtual machine
Publication Date: 2024.02.06 APPLIED INTUITION INC
  • US11893412B2 patent drawing
  • US11893412B2 patent drawing
  • US11893412B2 patent drawing

AI summary

Device initialization by an access-restricted virtual machine, including: restricting access by a first operating system to a device during one or more device initialization operations, wherein the first operating system is executing in a first virtual machine supported by a hypervisor; determining, by a second operating system executing in a second virtual machine supported by the hypervisor, one or more modifications attempted by the first operating system to the device; and performing, by the second operating system, the one or more modifications to the device.