Compressed Kernel Image Boot Loading via Multi-Core Block Decompression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing method of loading a kernel image file is excessively time-consuming, leading to prolonged startup times for electronic devices and affecting user experience.
Innovation Solution
A method utilizing a multi-core processor with a first core group for data block retrieval and checking, and a second core group for parallel decompression, where data blocks are obtained, checked, and decompressed in parallel to speed up the processing and reduce loading time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If a single core reads and checks the entire compressed kernel image file sequentially, then the loading process is simple to implement, but the loading time becomes excessively long
Solution Approach 1:
The patent divides the compressed kernel image file into multiple data blocks and assigns different cores to process different blocks simultaneously. The kernel image is segmented into chunks that can be read, checked, and decompressed in parallel by multiple cores, dramatically reducing the overall loading time while maintaining manageable complexity through structured division of labor
Solution Approach 2:
The patent implements preliminary checking of data blocks as they are being read from storage, before complete file loading. The first core group checks data blocks immediately upon reading them, and valid blocks are queued for decompression. This preliminary validation prevents wasted decompression operations on corrupted data and enables parallel processing to begin earlier
2Reliability
If the entire kernel image file is read and checked before decompression, then data integrity is ensured, but the startup time is prolonged
Solution Approach 1:
The patent performs preliminary checking of data blocks immediately as they are read from non-volatile storage, before the entire file is loaded. The first core group checks each data block upon reading it, and valid blocks are immediately queued for decompression by the second core group. This preliminary validation ensures data integrity while enabling parallel decompression to begin without waiting for complete file verification
Solution Approach 2:
The patent maintains continuous useful action by overlapping the checking operation with the decompression operation. While the first core group continues checking incoming data blocks, the second core group simultaneously decompresses previously validated blocks. This continuous parallel processing eliminates idle time and keeps all cores productively engaged throughout the loading process
Data Source
AI summary
Example methods and apparatus for fast loading a kernel image file are provided. A multi-core processor includes a first core group and a second core group. The second core group includes a plurality of cores. In one example method, the first core group obtains a plurality of data blocks in a compressed kernel image file from a nonvolatile storage, and checks the currently obtained current data block. The current data block is put into a decompression queue in response to determining that the data block is correct. At least two of the plurality of cores in the second core group obtain the data block from the decompression queue, and after obtaining a plurality of data blocks, decompress the plurality of obtained data blocks into a memory in parallel to obtain the kernel image file.


