Segmented Virtual Machine Architecture for Resource Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data centers face high costs and complexity in supporting a large number of applications due to the finite resources of general-purpose devices, which are overwhelmed by peak resource needs, necessitating a large number of devices to be deployed.
Innovation Solution
A segmented virtual machine architecture is introduced, separating functionality into a lightweight shell VM and a core VM, where the shell VM handles external interactions and the core VM manages internal execution functions, allowing for efficient resource allocation and scalability without requiring the external environment to be aware of the segmentation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a large number of general purpose devices are deployed to support peak resource needs, then the system can support a large number of applications, but the deployment and administration costs increase significantly
Solution Approach 1:
The virtual machine is segmented into two distinct components: a shell VM that handles external interactions and a core VM that manages internal execution functions. This segmentation allows the heavy computational workload to be offloaded to a dedicated core VM, enabling multiple applications to share fewer general purpose devices while maintaining performance during peak loads.
Solution Approach 2:
The shell VM acts as an intermediary between the external environment and the core VM. It intercepts external requests and forwards them to the appropriate core VM, enabling resource sharing and load distribution across multiple applications without requiring each application to have dedicated full VM resources.
2Reliability
If each application is allotted enough resources for its peak needs, then the application can execute without resource constraints, but the overall system resource utilization efficiency decreases
Solution Approach 1:
The system dynamically allocates core VM resources to shell VMs based on actual workload demands rather than static peak allocations. The core VM can serve multiple shell VMs concurrently, adjusting resource distribution in real-time to match actual usage patterns, thereby improving overall resource utilization efficiency while maintaining application reliability.
3Productivity
If a segmented virtual machine architecture is implemented, then resource allocation efficiency and scalability improve, but the system complexity increases
Solution Approach 1:
The virtual machine is segmented into two distinct components: a shell VM that handles external interactions and a core VM that manages internal execution functions. This segmentation allows the heavy computational workload to be offloaded to a dedicated core VM, enabling multiple applications to share fewer general purpose devices while maintaining performance during peak loads.
Solution Approach 2:
The shell VM serves multiple functions: it acts as the external interface, resource manager, and communication bridge between applications and the core VM. This multi-functionality reduces the need for separate management components, thereby limiting the increase in system complexity despite the architectural segmentation.
Data Source
AI summary
A technique for executing a segmented virtual machine (VM) is disclosed. A plurality of core VM's is implemented in a plurality of core spaces. Each core VM is associated with one of a plurality of shell VM's. Resources of the core spaces are allocated among the core VM's.


