Packaging Read-Only Files Into Executable Shared Libraries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing software installation processes are inefficient due to the need to copy and manage numerous files across multiple subdirectories, requiring significant disk I/O and temporary storage space, which complicates the installation of software products like tax preparation software.

Innovation Solution

Packaging multiple groups of read-only files into executable files, allowing these files to be accessed as shared libraries, reducing the need for individual file distribution and minimizing disk I/O by using an index to manage access to the files within the executable files.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If numerous files are copied to multiple subdirectories during installation, then the software product can be fully installed with all necessary components, but the installation process becomes complex and requires significant disk I/O and temporary storage space

Engineering Contradiction:
Improvesoftware installation completenessVSAvoidinstallation process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent combines multiple read-only files into a single executable file that functions as a shared library. This merging eliminates the need to copy numerous individual files to multiple subdirectories during installation, thereby reducing installation complexity and disk I/O requirements while maintaining the functionality of all software components

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The executable file serves multiple functions simultaneously: it acts as both the application executable and as a container for multiple read-only files (images, tax forms, etc.). This multi-functionality allows a single file to replace what would traditionally require numerous separate files and subdirectories, simplifying the installation process

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

2Quantity of substance

If multiple individual files are distributed and managed, then all necessary software components are available, but disk I/O operations increase and storage efficiency decreases

Engineering Contradiction:
Improvenumber of filesVSAvoiddisk I/O operations
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

Multiple read-only files are merged into a single executable file structure. This reduces the quantity of individual files from hundreds to one, thereby minimizing disk I/O operations during both installation and runtime access, while improving storage efficiency by eliminating redundant file copies

Inventive Principle:
Principle #5Merging (Combining)

3Ease of operation

If files are copied to numerous subdirectories, then all software components are organized, but the end user has no knowledge of the file structure and installation is simplified only through installer software

Engineering Contradiction:
Improveinstallation simplicityVSAvoidfile directory structure
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent extracts the read-only files from their traditional directory structure and incorporates them directly into the executable file. This eliminates the need for complex subdirectory structures that the end user would need to navigate, while maintaining organized access to all software components through the unified executable file

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS8522205B2Packaging multiple groups of read-only files of an application's components into multiple shared libraries
Publication Date: 2013.08.27 ORACLE INT CORP
  • US8522205B2 patent drawing
  • US8522205B2 patent drawing
  • US8522205B2 patent drawing

AI summary

Multiple groups of read-only files, for use by various components of an application program in a computer, are packaged as follows. Several executable files are prepared, each executable file corresponding to a group of read-only files used by one or more components. Each executable file includes an array that has sufficient space to accommodate the group of read-only files to be packaged therein. Each array in each executable file is overwritten with data from a corresponding group of read-only files. The presence or absence of each executable file for a group of read-only files is indicated by an index that is developed during initialization of components. Retrieval of data is from the executable files, if the index indicates, on first accessing each read-only file, that the corresponding executable file is present. If the executable file is indicated by the index as being absent, then the read-only file is directly accessed.