Virtual Machine Memory Management via Selective Copy-on-Write Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing virtual machine systems face challenges in reducing memory usage, particularly when duplicating virtual machines, as they often unnecessarily acquire new physical memory areas during copy-on-write processing, leading to increased memory demands and costs.
Innovation Solution
A virtual machine system that manages memory areas by assigning classification values based on usage status, allowing read access until a write access occurs, and then allocating new memory areas only when necessary, thereby preventing unnecessary physical memory acquisition.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If copy-on-write processing is used to duplicate virtual machines, then virtual machine duplication is enabled, but unnecessary physical memory areas are acquired increasing memory usage
Solution Approach 1:
The patent applies preliminary action by pre-classifying memory areas into five categories (first through fifth memory areas) based on their usage status before virtual machine duplication occurs. This classification enables the system to predict which memory areas will be needed after duplication and which can be avoided, preventing unnecessary memory allocation before it happens. The management unit uses this pre-established classification to control memory allocation during the duplication process.
Solution Approach 2:
The patent applies local quality by treating different memory areas with different allocation rules based on their specific characteristics. Instead of uniformly allocating all memory areas during copy-on-write, the system selectively allocates only specific types (second, third, and fourth memory areas) while avoiding others (first and fifth memory areas). This localized differentiation in memory management resolves the contradiction by matching allocation behavior to the actual needs of each memory region.
2Reliability
If new memory areas are allocated during copy-on-write, then data integrity is maintained, but memory costs increase
Solution Approach 1:
The patent applies parameter changes by introducing a classification parameter system that divides memory areas into five distinct categories based on their data characteristics and usage patterns. This parameter-based classification enables the system to make intelligent decisions about which memory areas require allocation for data integrity and which do not. By changing the approach from uniform allocation to parameter-driven selective allocation, the system maintains reliability while reducing unnecessary memory costs.
Solution Approach 2:
The patent applies discarding and recovering by identifying memory areas (first and fifth types) that can be safely discarded during duplication without compromising data integrity, while recovering and allocating only the necessary memory areas (second, third, and fourth types). This selective discarding and recovering approach reduces memory costs by eliminating wasteful allocations while preserving essential data through intelligent identification of which memory regions actually require protection.
Data Source
AI summary
A virtual machine system for duplicating a first virtual machine to generate one or more second virtual machines is provided with a management unit that manages each memory area accessible by the first virtual machine so that after generation of the second virtual machines, every virtual machine is permitted to perform a read access to the memory area until any virtual machine performs a write access to the memory area, a determination unit that determines whether each memory area is a specific memory area, a detection unit that detects, after detecting a write access to a specific memory area, that a virtual machine other than the virtual machine performing the write access is attempting access to the specific memory area, and a memory allocation unit that acquires and allocates a new memory area to the virtual machine detected to be attempting access to the specific memory area.


