Skip to content

Run Time Library Files

ksherlock edited this page Jan 19, 2020 · 1 revision

Run-Time Library Files

Run-time library files (file type $B4) contain dynamic load segments that the System Loader can load when these segments are referenced through the jump table. Usually, run-time library files contain general routines that can be used by more than one application.

When you include a run-time library file while linking, the file is scanned by the linker during the link process. When the linker finds a referenced segment in the run-time library file, it generates an INTERSEG reference to the segment in the relocation dictionary and adds an entry to the jump-table segment for that file. The linker also adds the pathname of the run-time library file to the pathname table if it has not already done so. It does not extract the segment from the file and place it in the file that referenced it, as it does for ordinary library files. In other words, references to segments in run-time library files are treated by the linker like references to other dynamic segments, except that the run-time library file segments are in a file other than the currently executing load file.

The first load segment of the run-time library file contains all the information the linker needs to find referenced segments; it is not necessary for the linker to scan every subroutine in every segment each time a subroutine is referenced. The first segment contains a table of ENTRY records, each one corresponding to a segment name or global reference in the run-time library file.

Run-time library files are typically created from corresponding object files by specifying an option to a linker command.

Clone this wiki locally