Virtual Machine Reuse for Extended Application Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The processing performance of extended applications in image forming apparatuses is hindered by the significant overhead of launching and terminating virtual machines (VMs) due to limited resources, leading to inefficient VM management.

Innovation Solution

An information processing apparatus and method that holds a VM in a launched state and determines whether the VM can be reused for an extended application, allowing execution using a reusable VM to reduce overhead and improve performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the VM is launched and terminated each time an extended application is launched and terminated, then the resources are properly managed, but the processing performance drops due to significant overhead

Engineering Contradiction:
Improveresource managementVSAvoidprocessing performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by holding the VM in a launched state in advance, so that when an extended application needs to run, the VM is already prepared and can be reused immediately. This eliminates the need to launch and terminate the VM repeatedly, reducing overhead and improving processing performance while maintaining proper resource management through controlled holding and reuse of the VM instance.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the VM is held in a launched state, then the processing performance is improved by avoiding repeated launches, but the resource consumption increases

Engineering Contradiction:
Improveprocessing performanceVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent applies parameter changes by dynamically adjusting the state of the VM based on whether it can be reused. The system changes the VM's lifecycle parameters (hold vs. terminate) depending on reuse determination results, optimizing the balance between performance and resource consumption by holding the VM only when reuse is beneficial.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If the VM is reused for extended applications, then the overhead is reduced and performance is improved, but the complexity of VM management increases

Engineering Contradiction:
Improveprocessing performanceVSAvoidVM management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies feedback by implementing a determination mechanism that checks whether a held VM can be reused before reusing it. This feedback loop (determine reusability → decide to hold or terminate) manages the complexity systematically, ensuring that VM reuse decisions are made based on specific criteria rather than arbitrary choices, thus balancing performance improvement with manageable complexity.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11720390B2Information processing apparatus that determines whether an extended application can reuse a virtual machine, method of controlling the same, and storage medium
Publication Date: 2023.08.08 CANON KK
  • US11720390B2 patent drawing
  • US11720390B2 patent drawing
  • US11720390B2 patent drawing

AI summary

An information processing apparatus that is able to execute an extended application, and a method of controlling the information processing apparatus are provided. The information processing apparatus holds, in a launched state, a virtual machine (VM) for executing the extended application, determines, in a case that the extended application is launched, whether or not the extended application can reuse the VM. In a case that it is determined that the extended application can reuse the VM, the information processing apparatus determines whether or not a VM that can be reused by the extended application is held, and in a case that it is determined that the VM which can be reused by the extended application is held, execute the extended application using the held VM.