Boot Program Redundancy for Read Error Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional information processing apparatuses with nonvolatile memory, such as HDDs, face startup failures due to read errors in boot programs, leading to prolonged startup times when attempting to read and execute alternative boot programs from different storage areas.
Innovation Solution
An information processing apparatus with a controller that stores and manages multiple boot programs, allowing it to detect read errors in one program and seamlessly switch to and execute a corresponding program from another storage area, reducing startup time by avoiding the need to read from the beginning of the boot program.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple boot programs are stored in different storage areas to ensure startup reliability, then reliability is improved, but device complexity increases due to additional storage requirements and address management
Solution Approach 1:
The boot program is segmented into multiple identical copies stored in different storage areas of the nonvolatile memory. Each copy can independently serve as a boot program, ensuring that if one copy becomes unreadable, the system can still bootstrap from another copy. This segmentation approach directly improves startup reliability while maintaining manageable complexity through systematic duplication.
Solution Approach 2:
The system changes the storage parameter by allocating multiple storage areas within the nonvolatile memory, each capable of storing a complete boot program. By modifying the storage configuration to include redundant copies at different locations, the system achieves improved reliability against read errors while the address correspondence mechanism keeps the management complexity controlled.
2Reliability
If the system reads and executes a boot program from the beginning after a read error occurs, then reliability is maintained by attempting to read from the start, but startup time increases due to the need to re-read the entire program
Solution Approach 1:
The system performs preliminary actions by pre-storing multiple complete copies of the boot program in different storage areas before any read error occurs. When a read error is detected, the system can immediately switch to executing from a different pre-prepared copy without needing to re-read from the beginning, thus maintaining reliability while significantly reducing the time penalty.
Solution Approach 2:
The system creates and stores multiple copies of the boot program in different storage areas of the nonvolatile memory. When a read error occurs in one copy, the system can directly execute from another copy without re-reading, eliminating the time loss that would otherwise occur from re-reading the entire program from the start.
3Reliability
If the system stores identical boot programs in multiple storage areas to handle read errors, then reliability is improved, but the storage space requirement increases
Solution Approach 1:
Multiple storage areas in the nonvolatile memory are designed to universally store boot programs, with each area capable of holding a complete copy. This multi-functionality allows any of the storage areas to serve as the active boot program source, improving read error tolerance while the systematic arrangement keeps storage space utilization efficient.
Data Source
AI summary
An information processing apparatus includes a storage unit configured to store at least a first boot program and a second boot program corresponding to the first boot program, a controller configured to read and execute a program, detect, in accordance with occurrence of a read error at reading of the first boot program, an address of a storage area storing a program in which the read error has occurred in the first boot program, and specify, from an address of a storage area storing the second boot program, an address corresponding to the detected address. The controller reads and executes the second boot program stored in the specified address.


