Sensor Virtualization for Multi-Application Resource Sharing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current operating systems do not allow a single hardware device to be shared among multiple applications simultaneously, leading to inefficiencies in resource usage and potential security vulnerabilities when using shared memory for data transfer.
Innovation Solution
The implementation of a sensor group that virtualizes hardware and software sensors, allowing multiple applications to share resources by negotiating compatible topologies and using kernel memory reflection to manage access control and reduce data copying, thereby maintaining producer access rights.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a single hardware device is dedicated to one application, then access control and security are simplified, but resource utilization efficiency deteriorates
Solution Approach 1:
The patent segments the hardware device into multiple virtual instances or channels, allowing different applications to access different segments simultaneously. This segmentation enables multi-application access while maintaining isolation and access control through virtualization, thus resolving the contradiction between simplified access control and resource utilization efficiency.
Solution Approach 2:
The patent introduces a driver layer or virtualization intermediary that manages access to the hardware device from multiple applications. This intermediary maintains security and access control policies while enabling efficient resource sharing, thus resolving the contradiction between access control simplicity and resource utilization efficiency.
2Productivity
If shared memory is used for data transfer between applications and hardware devices, then data transfer efficiency is improved, but security vulnerabilities increase
Solution Approach 1:
The patent introduces a driver layer or virtualization intermediary that acts as a secure gateway between applications and shared memory. This intermediary enforces access policies, validates data transfers, and maintains security boundaries while enabling efficient shared memory communication, thus resolving the contradiction between data transfer efficiency and security vulnerabilities.
Solution Approach 2:
The patent uses controlled copying mechanisms where data is copied through secure intermediaries rather than allowing direct uncontrolled access to shared memory. This copying approach maintains security by enforcing access policies at each copy operation while still achieving efficient data transfer, thus resolving the contradiction between data transfer efficiency and security vulnerabilities.
3Adaptability or versatility
If hardware resources are shared among multiple applications, then component count is reduced and functionality is increased, but device complexity increases
Solution Approach 1:
The patent makes the hardware device universal by enabling it to serve multiple applications simultaneously through virtualization. The device maintains a single physical instance while providing multiple virtual interfaces, thus increasing functionality and adaptability without proportionally increasing physical device complexity.
Solution Approach 2:
The patent introduces a driver layer or virtualization intermediary that manages the complexity of sharing hardware resources among multiple applications. This intermediary handles the complex coordination, resource allocation, and conflict resolution, thus enabling increased functionality while containing the complexity within the intermediary layer rather than propagating it throughout the entire system.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Technology related to virtualizing sensors is disclosed. In one example of the disclosed technology, a method can be used to allocate resources of a computing system. The method can include enumerating hardware sensors and software modules that are capable of interacting with one another. A topology can be negotiated that is compatible with capabilities of the enumerated hardware sensors and software modules. A first request can be received from a first requestor to configure at least one of the enumerated hardware sensors and software modules. The at least one of the enumerated hardware sensors and software modules can be configured in response to the received first request.