head	1.5;
access;
symbols;
locks; strict;
comment	@# @;


1.5
date	92.07.14.05.54.17;	author ptong;	state Exp;
branches;
next	1.4;

1.4
date	92.07.12.21.10.19;	author ptong;	state Exp;
branches;
next	1.3;

1.3
date	91.08.13.21.49.36;	author kemnitz;	state Exp;
branches;
next	1.2;

1.2
date	90.10.27.21.04.07;	author kemnitz;	state Exp;
branches;
next	1.1;

1.1
date	90.10.26.00.19.33;	author kemnitz;	state Exp;
branches;
next	;


desc
@Description of the "load" command.
@


1.5
log
@reformated
@
text
@.\" XXX standard disclaimer belongs here....
.\" $Header: /home/postgres/mer/refs/postquel/RCS/load,v 1.4 1992/07/12 21:10:19 ptong Exp ptong $
.SP LOAD COMMANDS 6/14/90
.XA 2 Load
.uh NAME
.lp
load \*- dynamically load an object file
.uh SYNOPSIS
.lp
.(l
\fBload \fR "filename"
.)l
.uh DESCRIPTION
.lp
.b Load
loads an object (or ".o") file into \*(PP's address space.  Once a file
is loaded, all functions in that file can be accessed.  This function is
used in support of ADT's.
.lp
If a file is not loaded using the 
.b load
command, the file will be loaded automatically the first time the function
is called by \*(PP.
.b Load
can also be used to reload an object file if it has been edited and recompiled.
Only objects created from C language files are supported at this time.
.uh EXAMPLE
.lp
.nf
.ft C
/* Load the file /usr/postgres/demo/circle.o */

load "/usr/postgres/demo/circle.o"
.ft
.fi
.sp
.uh CAVEATS
.sp
Functions in loaded object files should not call functions in other object
files loaded through the 
.b load
command, meaning, for example, that all functions in file A should call
each other, functions in the standard or math libraries, or in \*(PP itself.
They should not call functions defined in a different loaded file B.  This is
because if B is reloaded, the \*(PP loader is not "smart" enough to relocate
the calls from the functions in A into the new address space of B.  If B is
not reloaded, however, there will not be a problem.
.lp
On diskless platforms or when running across NFS,
.b load
can take two or three minutes or more, depending on network traffic.  On
diskful platforms,
.b load
takes from a few seconds on Suns and Sparcs to several minutes on DECstations.
.lp
On DECstations, you must use the "-G O" option when compiling object files to
be loaded.
.lp
Note that if you are porting \*(PP to a new platform, the
.b load
command will have to work in order to support ADT's.
@


1.4
log
@Changed references to POSTGRES to the macro \*(PP.
@
text
@d2 1
a2 1
.\" $Header: /home/postgres/mer/refs/postquel/RCS/load,v 1.3 1991/08/13 21:49:36 kemnitz Exp ptong $
d10 3
a12 2
.b load 
"filename"
d30 1
d33 2
a34 1
   load "/usr/postgres/demo/circle.o"
@


1.3
log
@fixed a couple of problems.
@
text
@d2 1
a2 1
.\" $Header: RCS/load,v 1.2 90/10/27 21:04:07 kemnitz Exp Locker: kemnitz $
d15 1
a15 1
loads an object (or ".o") file into Postgres's address space.  Once a file
d22 1
a22 1
is called by Postgres.
d40 1
a40 1
each other, functions in the standard or math libraries, or in Postgres itself.
d42 1
a42 1
because if B is reloaded, the Postgres loader is not "smart" enough to relocate
d56 1
a56 1
Note that if you are porting Postgres to a new platform, the
@


1.2
log
@Fixed formfeed problem.
@
text
@d2 1
a2 1
.\" $Header: RCS/load,v 1.1 90/10/26 00:19:33 kemnitz Exp Locker: kemnitz $
d51 1
a51 1
takes about one minute.
d55 4
@


1.1
log
@Initial revision
@
text
@d2 1
a2 1
.\" $Header: load,v 1.1 90/10/25 17:35:22 kemnitz Exp $
a54 1
.pp
@
