Browse Prior Art Database

Grid Auto-load Library

IP.com Disclosure Number: IPCOM000020349D
Original Publication Date: 2003-Nov-14
Included in the Prior Art Database: 2003-Nov-14
Document File: 2 page(s) / 41K

Publishing Venue

IBM

Abstract

Grid Auto-loaded Library allows for an executable to run on any compatible machine regardless of installed libraries.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 71% of the total text.

Page 1 of 2

Grid Auto-load Library

When a program is compiled its dynamically linked shared libraries are listed in the executable binary. Before this binary can be executed the loader resolves the dynamic linking of these libraries. The loader must resolve all symbols in its deferred binding process before execution of the program can be begin. The location of these libraries are also specified at compile time and saved in the executable.

For example, using the command "dump -H <executable file>" displays the same information that the loader looks at.

***Import File Strings*** INDEX PATH BASE MEMBER 0 /usr/lib:/lib:/usr/lpp/xlC/lib 1 libc.a shr.o 2 libbsd.a shr.o 3 libbind.a shr.o 4 libi18n.a shr.o 5 libcur.a shr.o 6 libiconv.a shr4.o 7 libcur.a shr32c.o 8 libauthm.a shr.o

In the above example line 0 shows the directories the loader will search looking for the libraries, and line 1-8 shows the libraries which will be linked.

This method works particularly well when the executable is run on the same or similarly configured systems or when the executable is part of a software package which includes all of the necessary libraries. This does rigid system does not lend itself to the dynamic Grid environment.

The executable file can be remotely moved to a system that may not have the necessary libraries or the same directory paths leading to the necessary libraries. It is not possible to execute on such systems even though the remote system runs the same OS and the same CPU.

The idea of Grid Auto-loaded Library (GAL) is to allow for an executable to run on any compatible machine with the necessary OS and CPU regardless of the prerequisite libraries.

GAL is a default library search p...