Linux Mobile Handset Firmware Update via Compression Decompression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Updating firmware or software in mobile devices with compressed or encrypted content is inefficient due to complexities in determining space requirements and the need for different techniques than those used for uncompressed code, especially in Linux-based systems with specific file systems and access mechanisms.

Innovation Solution

Employing compression and decompression mechanisms in mobile handsets to update firmware and software, using methods like 'update as it is' and 'update with decompression on demand' to handle compressed kernels and CramFS file systems, which split firmware images into write units, decompress in RAM, and update in fault-tolerant modes, while managing fragmentation and dependency on file directories.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If compression techniques are used to store firmware and software in mobile devices, then storage space efficiency is improved, but the complexity of updating code increases

Engineering Contradiction:
Improvestorage space efficiencyVSAvoidcomplexity of updating code
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The system performs preliminary decompression of the compressed firmware image into a working directory before applying updates. This preliminary action separates the decompression step from the update step, allowing standard update techniques to be used on the decompressed files while maintaining space efficiency through compression in storage

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A working directory serves as an intermediary between the compressed storage medium and the update process. The compressed firmware image is decompressed to this intermediate location where updates can be applied using conventional methods, then the updated files are compressed and stored back. This intermediary resolves the contradiction by providing a space for updates without requiring permanent uncompressed storage

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If compressed file systems are used in Linux-based mobile devices, then storage capacity is improved, but the ease of updating firmware decreases

Engineering Contradiction:
Improvestorage capacityVSAvoidease of updating firmware
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The firmware update process is segmented into distinct phases: decompression of the compressed image to a working directory, application of updates to specific files in the working directory, and recompression of updated files. This segmentation allows each phase to use appropriate techniques independently, maintaining ease of operation while preserving storage capacity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the state parameter of firmware files from compressed to uncompressed during the update process by decompressing to a working directory. This parameter change enables standard file operations and update mechanisms to work efficiently, improving ease of operation while the final compressed state maintains storage capacity

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If firmware images are compressed before storage, then space utilization is improved, but the ability to determine space requirements for updates deteriorates

Engineering Contradiction:
Improvespace utilizationVSAvoiddifficulty of determining space requirements
Core Design Contradiction:
Quantity of substanceVSDifficulty of detecting and measuring

Solution Approach 1:

The system performs preliminary decompression to a working directory before updates, which allows accurate calculation of space requirements for updated files. This preliminary action makes the space requirements visible and measurable in the uncompressed state, resolving the difficulty of determining space needs while maintaining compressed storage for space utilization

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7814474B2Updatable mobile handset based on Linux with compression and decompression techniques
Publication Date: 2010.10.12 QUALCOMM INC
  • US7814474B2 patent drawing
  • US7814474B2 patent drawing
  • US7814474B2 patent drawing

AI summary

There are two different types of compression used on the Embedded Linux Platform that the present invention is targeting. For the kernel, a singular compression is used. A whole kernel is compressed into a single compressed zImage by zlib at once. When the kernel is loaded into RAM, the whole kernel has to be decompressed to RAM and executes there. The root file system is built through the CramFS that employs a different compression mechanism. It is a block-based compression. When the device is running, it is not necessary to load the whole file system to RAM. The kernel mounts the file system and performs the decompression on a file when it is needed.