LOADER_$COND_LOAD Domain/OS LOADER_$COND_LOAD
NAME
loader_$cond_load - ensure a module is loaded
SYNOPSIS (C)
#include <apollo/base.h>
#include <apollo/loader.h>
boolean loader_$cond_load(
char *path_name,
short &path_length,
loader_$opts &load_options,
loader_$handle_t *image_handle,
status_$t *status)
SYNOPSIS (Pascal)
%include '/sys/ins/base.ins.pas';
%include '/sys/ins/loader.ins.pas';
function loader_$cond_load(
in path_name: univ name_$long_pname_t;
in path_length: integer;
in load_options: loader_$opts;
out image_handle: loader_$handle_t;
out status: status_$t): boolean;
DESCRIPTION
Loader_$cond_load loads the object module at path_name if it isn't loaded
already. It returns true if the module was not loaded already and had to
be loaded during the call, and returns false if the the module was loaded
already and, consequently, was not loaded during the call.
path_name
The pathname of an object module.
path_length
The number of bytes in path_name.
load_options
A small set of options that affect how the module will be loaded.
Specify a combination of the following values:
loader_$copy_proc
Copy the object module text into the address space, instead of
mapping it.
loader_$install
Put all defined globals into the Known Global Table (KGT).
loader_$no_unresolveds
Do not load the module if it has unresolved globals.
loader_$dont_redefine
Do not redefine any already known symbols in the Known Global
Table (KGT).
loader_$load_writable
Map the object module text in the address space as writable.
loader_$keep_on_exec
Keep the module loaded across UNIX exec(2) calls.
image_handle
A handle on the loaded image of the object module, used to refer to
the image when making further calls to the loader.
status
The completion status.