Dual-Processor Boot Program Verification for Faster Startup

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing image forming apparatuses face inefficiencies in program verification during startup, leading to potential damage or invalidation of backup programs due to irregular verification and the need for double verification, which increases startup time and reduces system robustness.

Innovation Solution

An information processing apparatus with a nonvolatile memory storing a selection program and verification programs for randomly selecting and verifying a boot program, using a first and second processor to execute and verify the selected program, ensuring valid program execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If both the main program and backup program are verified at each startup, then the reliability of program execution is improved, but the startup time increases

Engineering Contradiction:
Improveprogram execution reliabilityVSAvoidstartup time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The backup program is verified in advance during the startup process before the main program execution begins. The verification unit verifies the backup program's validity and stores the verification result in non-volatile memory, so that when the main program needs to restore the backup program, the verification result is already available, eliminating the need for re-verification and reducing startup time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from the verification process to optimize future operations. The verification result of the backup program is stored in non-volatile memory and reused in subsequent startups. The control unit checks the stored verification result to determine whether the backup program needs to be verified again, creating a feedback loop that reduces redundant verification operations and improves startup efficiency.

Inventive Principle:
Principle #23Feedback

2Loss of time

If the backup program is verified only when restoration is necessary, then the startup time is reduced, but the reliability of the backup program decreases

Engineering Contradiction:
Improvestartup timeVSAvoidbackup program validity
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The backup program is verified in advance during the startup process before the main program execution begins. The verification unit verifies the backup program's validity and stores the verification result in non-volatile memory, so that when the main program needs to restore the backup program, the verification result is already available, eliminating the need for re-verification and reducing startup time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The verification of the backup program is performed continuously during the startup process rather than only when restoration is needed. This continuous verification ensures that the backup program remains valid and ready for restoration, while the verification result is cached in non-volatile memory to avoid repeated verification operations.

Inventive Principle:
Principle #20Continuity of useful action

3Ease of operation

If a temporary bootloader is used when update processing is not completed, then the system can start up, but the backup program may be invalid or damaged

Engineering Contradiction:
Improvesystem startup capabilityVSAvoidbackup program validity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The verification unit verifies the backup program's validity and stores the verification result in non-volatile memory before the main program execution begins. This preliminary verification ensures that even if the system uses a temporary bootloader due to incomplete update processing, the backup program remains valid and can be reliably restored when needed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The verification unit acts as an intermediary between the bootloader and the backup program. It performs verification of the backup program and stores the result in non-volatile memory, serving as a mediator that ensures the backup program's validity regardless of whether the system uses the main bootloader or a temporary bootloader due to update processing status.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12423433B2Information processing apparatus and method for controlling the same
Publication Date: 2025.09.23 CANON KK
  • US12423433B2 patent drawing
  • US12423433B2 patent drawing
  • US12423433B2 patent drawing

AI summary

A second processor verifies validity of at least a first boot program using a verification program, and a first processor executes a selection program to select a boot program verified as valid by the second processor, and executes the selected program.