Method and system for loading libraries into embedded systems

Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C717S152000

Reexamination Certificate

active

06363436

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to information handling systems and methods and, more particularly, to information handling systems and methods including methods for loading and linking libraries of accessory programs and data.
2. Prior Art
In information handling systems where a kernel of an operating system is stored in a read-only memory (ROM), it is desirable to minimize the area (footprint) of the ROM on the integrated circuit carrying the ROM. In the prior art, all machine readable or executable programs including dynamically linked programs and shared libraries are preloaded into the ROM to create the embedded system.
In a system where the industry standard Executable and Linking Format (ELF) is employed, it is desirable to store the machine readable and executable programs and libraries without storing ELF information. One issue presented by eliminating the ELF information from the ROM is that dynamically linked ELF machine readable files are generally not loadable from an external device to use the preloaded shared libraries.
An embedded system is needed which would provide a smaller area for the ROM by preloading shared libraries in the ROM but with a mechanism for dynamically loading ELF machine readable files from a source outside of the ROM.
SUMMARY OF THE INVENTION
Accordingly, a method and means for enhancing an embedded system includes generating shared library information which is stored in the ROM, the shared library information including pointers to structures for each shared library to be preloaded into the ROM, maintaining each module per library as a linked list, writing the structures describing the preloaded libraries into the ROM image when the ROM image is generated, and as pointers to the structures are not valid in the ROM image, relocating the pointers to these modules so that they are valid in the loader's address space when remapped into a loader by the kernel.
At system start-up or “boot,” the kernel starts the embedded loader and maps the structures exactly where the loader expects to find them. Thus, when the loader attempts to load an external dynamically linked ELF executable file that is linked to one of the shared libraries in the ROM, the loader resolves all references to the preloaded library by traversing the structures provided that were mapped into its address space by the system kernel.
It is an advantage of the present invention that the size of the read-only memory in an embedded system may be minimized by allowing dynamically linked programs and shared libraries without the need for the read-only memory to contain all of the ELF information.


REFERENCES:
patent: 5247678 (1993-09-01), Littleton
patent: 5375241 (1994-12-01), Walsh
patent: 5410698 (1995-04-01), Danneels et al.
patent: 5414854 (1995-05-01), Heninger et al.
patent: 5418964 (1995-05-01), Conner et al.
patent: 5459865 (1995-10-01), Heninger et al.
patent: 5465361 (1995-11-01), Hoenninger, III
patent: 5475840 (1995-12-01), Nelson et al.
patent: 5491800 (1996-02-01), Goldsmith et al.
patent: 5495612 (1996-02-01), Hirayama et al.
patent: 5499343 (1996-03-01), Pettus
patent: 5634058 (1997-05-01), Allen et al.
patent: 5708811 (1998-01-01), Arendt et al.
patent: 5797015 (1998-08-01), Daniels, Jr. et al.
patent: 5802368 (1998-09-01), Grigsby et al.
patent: 5812848 (1998-09-01), Cohen
patent: 5835749 (1998-11-01), Cobb
patent: 6052778 (2000-04-01), Hagy et al.
patent: 2097541 (1994-12-01), None
patent: 2097542 (1994-12-01), None
patent: 0 699 996 (1996-03-01), None
patent: 2 242 293 (1991-09-01), None
patent: 63-175929 (1988-07-01), None
patent: 1-191232 (1989-01-01), None
patent: 01-207824 (1989-08-01), None
patent: 02-244237 (1990-09-01), None
patent: 03-022161 (1991-01-01), None
patent: 4-65717 (1992-02-01), None
patent: 04-116756 (1992-04-01), None
patent: 04-234424 (1992-08-01), None
patent: 06019717 (1994-01-01), None
patent: 06-095869 (1994-04-01), None
patent: 07-182179 (1995-07-01), None
patent: 07-325719 (1995-12-01), None
patent: 08179947 (1996-07-01), None
patent: 08185318 (1996-07-01), None
patent: 08202557 (1996-08-01), None
patent: 08241207 (1996-09-01), None
patent: WO 95/01598 (1995-01-01), None
patent: WO 95/17062 (1995-06-01), None
“Sixteen- to Thirty-Two-Bit Operating System Compatibility Method for Personal Computers,”IBM Technical Disclosure Bulletin, vol. 34, No. 4B, pp. 314-317, Sep. 1991.
“Method to Intercept Dynamically Loaded Subroutine Calls on the IBM RISC System/6000 AIX Operating System,”IBM Technical Disclosure Bulletin, vol. 34, No. 10A, pp. 382-387, Mar. 1993.
“Method for Dynamic Loading of Object Modules in a Graphical User Interface Development Tool,”IBM Technical Disclosure Bulletin, vol. 36, No. 12, pp. 33-35, Dec. 1993.
“Address Space Partioning Using ‘Address Submaps,’”IBM Technical Disclosure Bulletin, vol. 37, No. 08,pp. 373-374, Aug. 1994.
“Inter-Program Binding,”IBM Technical Disclosure Bulletin, vol. 37, No. 12, pp. 415-419, Dec. 1994.
“NetWare Loadable Modules Bindery Monitoring,”IBM Technical Discloure Bulletin, vol. 38, No. 07, pp. 153-154, Jul. 1995.
“Method for Allowing Original Equipment Manufacturer DOS Setting Descriptions and Contextual Help,”IBM Technical Disclosure Bulletin, vol. 38, No. 10, pp. 141-145, Oct. 1995.
“Fast and Flexible Shared Libraries,” Proceedings of the Summer 1993 USENIX Conference, pp. 237-251, Jun. 1993.
“Building Modular Windows Applications with C++,” Proceedings of OOP '93, pp. 163-166, Feb. 1993.
“Screen Windows as Objects,”CHIP(German), No. 12, pp. 188-194, Dec. 1990.
“Portable Multitasking in C++,”Dr. Dobb's Journal, vol. 20, No. 11, pp. 70, 72, 74, 76, 78, Nov. 1995.
“Dynamic Link Libraries for DOS,”Dr. Dobb's Journal, vol. 15, No. 5, pp. 30-39, 104-106 and 108-109, May 1990.
“HS/FORTH's Rosetta Stone Dynamic Linker,”Programming Environments, Rochester FORTH Conference, pp. 41-42, Jun. 1988.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and system for loading libraries into embedded systems does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and system for loading libraries into embedded systems, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for loading libraries into embedded systems will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2878879

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.