Hypervisor Control Block Scheduling for Nested VMs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtual machine processing systems, scheduling control blocks across nested hypervisors becomes complex and inefficient, leading to unfair resource allocation and increased processing burdens due to isolated scheduling levels.

Innovation Solution

A method where hypervisors negotiate compatibility with host platforms, tag control blocks with information associating them with control groups, and schedule them based on whether they are the base hypervisor, ensuring fair and optimized processing across virtual machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If isolated scheduling levels are used in nested hypervisors, then each hypervisor can independently manage its virtual machines, but scheduling complexity increases and resource allocation becomes unfair

Engineering Contradiction:
ImproveIndependent hypervisor managementVSAvoidScheduling complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges the scheduling functions of nested hypervisors into a unified scheduling mechanism. The base hypervisor consolidates control block scheduling from both itself and nested hypervisors, eliminating the complexity of multiple independent scheduling levels while maintaining fair resource allocation across all virtual machines.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The base hypervisor performs universal scheduling functions for the entire virtualized environment, including scheduling control blocks from nested hypervisors and directly from virtual machines. This multi-functional approach replaces multiple specialized schedulers with a single universal scheduler that handles all scheduling needs.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If multiple nested hypervisors operate independently, then virtual machine isolation is maintained, but processing efficiency decreases due to redundant scheduling operations

Engineering Contradiction:
ImproveVirtual machine isolationVSAvoidProcessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the scheduling function from nested hypervisors and transfers it to the base hypervisor. Nested hypervisors retain their virtual machine management and isolation functions, but the scheduling of control blocks is extracted and centralized at the base hypervisor level, eliminating redundant scheduling operations and improving processing efficiency.

Inventive Principle:
Principle #2Taking out (Extraction)

3Ease of manufacture

If control blocks are scheduled at each nested hypervisor level, then local resource management is optimized, but overall system fairness deteriorates

Engineering Contradiction:
ImproveLocal resource managementVSAvoidResource allocation fairness
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The base hypervisor acts as an intermediary that receives control blocks from both nested hypervisors and virtual machines directly. It applies unified scheduling policies and fairness rules at this intermediary level, ensuring that resource allocation is fair across the entire system while still allowing nested hypervisors to manage their local virtual machines effectively.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9971625B2Virtual machine collaborative scheduling
Publication Date: 2018.05.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9971625B2 patent drawing
  • US9971625B2 patent drawing
  • US9971625B2 patent drawing

AI summary

A method for operating a processing system comprising in a hypervisor, negotiating with a host platform to determine compatibility between a virtual machine and the host platform, responsive to determining that the virtual machine is compatible with the host platform, receiving a control block from the virtual machine, tagging the control block with information that associates the control block with a control group, determining whether the hypervisor is a base hypervisor, and scheduling the control block for processing responsive to determining that the hypervisor is the base hypervisor.