Shared Library Deduplication for Lower Storage and I/O Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing number of applications in electronic devices leads to redundant storage of shared libraries, causing waste of storage space and affecting I/O performance and memory utilization.

Innovation Solution

An electronic device method to identify and reuse shared libraries by determining identical file data across applications, deleting redundant shared library data, and mapping only the common library to memory for invocation, thereby reducing mapped data and improving storage and memory efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If each APP stores its own shared libraries independently, then application functionality is ensured, but storage space is wasted due to redundant duplicate libraries

Engineering Contradiction:
Improveapplication functionalityVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges duplicate shared libraries from multiple APPs into a single shared instance. When the system detects that different APPs contain identical shared library files, it consolidates them into one shared library that can be shared across multiple APPs, thereby reducing storage space while ensuring all APPs maintain their required functionality.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a universal shared library that serves multiple APPs simultaneously. Instead of each APP having its own private copy of the same shared library, the system establishes a universal library that can be invoked by any APP that requires it, making the shared library resource multi-functional and accessible to multiple applications.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If duplicate shared libraries are stored for each APP, then application independence is maintained, but I/O performance deteriorates due to repeated data mapping

Engineering Contradiction:
Improveapplication independenceVSAvoidI/O performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent merges the mapping operations for duplicate shared libraries into a single unified mapping operation. By consolidating identical shared libraries into one instance, the system performs file mapping only once for the shared library rather than separately for each APP, thereby improving I/O performance while maintaining application independence through the shared access mechanism.

Inventive Principle:
Principle #5Merging (Combining)

3Ease of operation

If multiple copies of the same shared library are stored, then each APP can access its library independently, but memory utilization decreases due to redundant mapped data

Engineering Contradiction:
Improveindependent accessVSAvoidmemory utilization
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The patent establishes a universal shared library that can be accessed by multiple APPs simultaneously. When a shared library is loaded into memory, it becomes a shared resource that multiple APPs can access through the same memory mapping, eliminating redundant memory allocations and improving overall memory utilization while maintaining independent access capability for each APP.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP4191409B1Shared library multiplexing method and electronic device
Publication Date: 2025.10.22 HUAWEI TECH CO LTD
  • EP4191409B1 patent drawingFigure 1
  • EP4191409B1 patent drawingFigure 2A
  • EP4191409B1 patent drawingFigure 2B~2C

AI summary

Embodiments of this application relate to the field of electronic device technologies and provide a method for reusing a shared library and an electronic device, to enable different applications APPs to invoke a same shared library during running, so as to improve utilization of storage space of an electronic product. A specific solution includes: An electronic device may determine whether a second shared library having same file data as a first shared library of a first APP exists in the electronic device. If the second shared library exists in the electronic device, a correspondence between a first index node (inode) and a file name of the first shared library is stored, and the file data of the first shared library is deleted from the electronic device. Then, when the electronic device runs the first APP to invoke the first shared library, the electronic device may search for the first inode corresponding to the file name of the first shared library, to read file data of the second shared library stored in a storage area indicated by the first inode.