Embedded Controller for Sharing Peripheral Hardware Between Dual Operating Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current mobile devices with multiple operating systems face challenges in efficiently sharing peripheral hardware devices, leading to increased cost, size, weight, and energy consumption due to the need for duplicate hardware setups.
Innovation Solution
A mobile device architecture that includes a first processor for a non-embedded OS, a second processor for an embedded OS, and an embedded controller to communicate through a uniform message format, allowing a single hardware device to be shared between the two OSs, with the embedded controller acting as an encoder/decoder for commands and data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If two sets of independent peripheral devices are used to satisfy both operating systems, then the requirements of both OS are met, but cost, size, weight, and energy consumption increase
Solution Approach 1:
The patent implements a unified peripheral device architecture where a single set of peripheral hardware devices serves both the first operating system and the second operating system. The embedded controller manages device allocation and communication, allowing the same physical hardware to be shared between different OS environments through virtualization and dynamic resource assignment, thereby eliminating the need for duplicate hardware sets.
Solution Approach 2:
The embedded controller acts as an intermediary between the peripheral hardware devices and the two operating systems. It receives commands from either OS, translates them into appropriate hardware control signals, and manages the shared resources accordingly. This mediator approach enables efficient hardware sharing while maintaining OS-specific functionality and isolation.
2Reliability
If two sets of independent peripheral devices are used, then both operating systems can operate independently, but device complexity increases
Solution Approach 1:
The embedded controller serves as a mediation layer that abstracts the complexity of hardware sharing from the operating systems. It manages device allocation, command translation, and resource coordination, allowing both OS to operate independently through a unified hardware interface without requiring complex dual-hardware architectures.
Solution Approach 2:
The patent merges the peripheral device control architecture into a unified system where the embedded controller consolidates the management functions for both operating systems. This combining approach reduces hardware complexity by eliminating redundant control circuits and device instances while maintaining independent OS operation through logical separation.
3Adaptability or versatility
If two sets of independent peripheral devices are used, then both operating systems have dedicated hardware, but energy consumption increases
Solution Approach 1:
The unified peripheral device architecture allows a single set of hardware to serve multiple operating systems through the embedded controller's resource management. The controller can dynamically allocate and deactivate device instances based on which OS is active, ensuring that peripheral devices consume power only when needed rather than maintaining constant readiness for multiple OS simultaneously.
Data Source
Figure 1A
Figure 1B
Figure 2
AI summary
A mobile device and a method for sharing a hardware device thereof are provided. Two operation systems are executed on the present mobile device simultaneously, and an embedded controller is configured to communicate among the two operation systems and a shared hardware device of the mobile device. When one of the operation systems encodes an operating command into a uniform message and transmits the uniform message to the embedded controller, the uniform message is decoded into the operating command by the embedded controller such that the hardware device operates according to the decoded operating command. On the other hand, when the embedded controller receives input data from the hardware device, the embedded controller encodes the input data into the uniform message and transmits the uniform message to one of the operation systems. The operation system receiving the uniform message decodes the uniform message into the input data.