Bootable Device Resource Conflict Resolution via Dynamic Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualization environments, device resource conflicts arise when multiple virtual machines compete for limited resources during the boot process, leading to inefficiencies and potential failures in loading guest operating systems.

Innovation Solution

A device manager identifies bootable devices with resource conflicts, disables their resources, selects a device in a predetermined order, enables resources for the selected device, and attempts to boot it, repeating the process until all devices are successfully booted, thereby managing resource allocation and reducing conflicts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional loading firmware enables all resources for supported devices before OS loading, then device compatibility is improved, but device resource conflicts occur

Engineering Contradiction:
Improvedevice compatibilityVSAvoidresource conflict
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies preliminary action by having the firmware scan and identify bootable devices and their resource requirements before enabling any resources. The firmware determines the boot device order first, then selectively enables resources based on this predetermined order, preventing resource conflicts before they occur while maintaining compatibility with multiple device types.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the resource enabling process into discrete steps corresponding to each boot device in the predetermined order. Instead of enabling all resources simultaneously, the firmware enables resources for one boot device at a time, allowing systematic resource allocation that prevents conflicts between multiple boot devices.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If firmware scans real devices in predetermined order to load host OS, then boot process is simplified, but resource conflicts arise among multiple bootable devices

Engineering Contradiction:
Improveboot process simplicityVSAvoidresource allocation complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The firmware performs preliminary scanning and identification of all bootable devices in a predetermined order before resource allocation. This preliminary action establishes a clear boot sequence, simplifying the overall boot process while enabling systematic resource management that prevents conflicts among multiple boot devices.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic resource allocation where resources are enabled and disabled based on the current boot device being processed. The resource allocation is dynamic rather than static, allowing the system to adapt resource availability to the specific boot device currently being loaded, thereby preventing conflicts.

Inventive Principle:
Principle #15Dynamics

3Productivity

If hypervisor scans virtual devices in predetermined order to load guest OS, then virtual machine booting is streamlined, but guest resource conflicts occur among virtual machines

Engineering Contradiction:
Improveboot speedVSAvoidguest resource conflict
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The hypervisor performs preliminary scanning of virtual devices to establish a boot order before resource allocation. This preliminary identification of bootable virtual devices allows the system to streamline the boot process by knowing in advance which devices will be used, while simultaneously enabling conflict-free resource allocation based on this predetermined sequence.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the virtual device resource allocation into discrete portions assigned to each virtual machine based on the predetermined boot order. Each virtual machine receives its specific resource allocation in sequence, preventing resource conflicts between guest operating systems while maintaining efficient boot speeds.

Inventive Principle:
Principle #1Segmentation

4Adaptability or versatility

If all device resources are enabled simultaneously, then device accessibility is improved, but memory conflicts occur due to limited PIO memory

Engineering Contradiction:
Improvedevice accessibilityVSAvoidavailable memory
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic resource allocation where device resources are enabled and disabled based on the current boot device being processed. Resources are dynamically allocated to match the specific needs of each boot device in the predetermined order, ensuring device accessibility while preventing memory exhaustion that would occur with simultaneous resource enabling.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments the limited PIO memory resources into discrete allocations for each boot device processed in sequence. Instead of all devices competing for the same memory pool simultaneously, the firmware allocates memory segments to each device as it is processed, ensuring adequate memory availability for each device while preventing overall memory exhaustion.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8949587B2Method for dynamic loading of operating systems on bootable devices
Publication Date: 2015.02.03 RED HAT ISRAEL
  • US8949587B2 patent drawing
  • US8949587B2 patent drawing
  • US8949587B2 patent drawing

AI summary

A method for booting is provided. A devices manager of a host operating system residing on a host machine (or a boot loader) disables resources of one or more bootable devices having resource conflicts. The device manager enables resources required by one of the one or more bootable device. The device manager initiates booting of the one of the one or more bootable device. If the one of the one or more bootable device fails to boot, the failed bootable device is identified as unavailable for booting.