Stack Error Code Differencing for Fast Corruption Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing information processing systems face challenges in detecting stack destruction during program execution interruptions and resumptions, leading to potential data corruption and system malfunctions due to the overhead of generating and comparing error detection codes for entire stack areas.
Innovation Solution
An information processing apparatus that generates and stores error detection codes for used stack areas, differentiates changes between interruption and resumption times, and collates these codes to detect stack destruction, reducing processing overhead by focusing on differential areas and unused regions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If error detection codes are generated and compared for the entire stack area, then stack destruction detection reliability is improved, but processing overhead increases and execution speed deteriorates
Solution Approach 1:
The patent divides the stack area into multiple segments and generates error detection codes for each segment separately. When the program is interrupted, only the error detection codes for the used partial area segments are generated and compared, rather than processing the entire stack area. This segmentation approach maintains detection reliability for the active stack regions while significantly reducing the processing overhead compared to whole-stack verification.
2Measurement precision
If error detection codes are generated at every interruption and resumption, then detection precision is improved, but processing time increases
Solution Approach 1:
The patent applies partial action by generating error detection codes only for the used partial area of the stack at interruption and resumption points, rather than for the entire stack area. This approach maintains sufficient detection precision for the active code regions while reducing the time loss associated with generating and comparing error detection codes during frequent interrupt operations.
3Reliability
If the entire stack area is monitored for destruction, then detection coverage is improved, but device complexity increases
Solution Approach 1:
The patent implements local quality by applying error detection specifically to the used partial area of the stack where active data resides, rather than uniformly monitoring the entire stack area. This approach achieves effective detection coverage for the relevant regions while simplifying the detection system by avoiding unnecessary processing of unused stack regions, thereby reducing overall system complexity.
Data Source
AI summary
An information processing apparatus includes a memory and a processor. The memory stores a first string of error detection codes each corresponding to a used partial area of a stack area allocated to a program. The processor generates, when execution of the program is interrupted, a differential string of error detection codes each corresponding to a used partial area of a difference between used partial areas at the time of generating the first string and used partial areas at the interruption. The processor obtains a second string of error detection codes by reflecting the differential string to the first string. The processor generates, when the execution of the program is resumed, a third string of error detection codes each corresponding to a used partial area of the stack area at the resumption. The processor detects stack destruction based on collation between the second string and the third string.


