Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (P)
Guardian Procedure Calls Reference Manual—522629-013
12-191
PROCESS_SPAWN_ Procedure
Considerations for Resolving File Names
•
All file names are specified using OSS pathname syntax and are resolved using
the caller’s OSS current working directory.
•
For TNS and accelerated processes on RVUs preceding the D42 RVU, if the
Z^SWAPFILENAME or Z^EXTSWAPFILENAME field of the
process-
extension parameter is specified and
•
A file with that name exists, that file is used for memory swaps of the user data
stack (Z^SWAPFILENAME ) or of the default extended data segment
(Z^EXTSWAPFILENAME) during execution of the process; if no file of that
name exists, then a file of that name and of the necessary size is created and
used for swapping.
•
Contains the name of a temporary file that is already in use, an error is
returned.
•
Contains only the disk volume name, then a temporary file is created on the
specified disk device.
•
Is equal to 0D, then the SWAP volume name in the =_DEFAULTS DEFINE is
used if available. Otherwise, the system chooses where to place the file.
•
Resolving the problem of spawning remote shell scripts
•
Use PROCESS_SPAWN_ to spawn a remote shell and pass the name of the
script as one of its arguments. The shell will run the script.
•
Spawn a local shell and use the Expand file system to read the remote shell
script.
Considerations for Resolving External References
•
Program file and user library file differences
A user library is an program file containing one or more procedures. The
difference between a program file and the library file is that the library file cannot
contain a MAIN procedure but a program file must contain a MAIN procedure.
Undefined external references in a program file are resolved from the user library,
if any, or the system library. Unresolved references in a library are resolved only
from the system library.
•
Library conflict PROCESS_SPAWN_ error
The library file for a process can be shared by any number of processes.
However, when a program is shared by two or more processes, all processes must
have the same user library configuration; that is, all processes sharing the program
either have the same user library or have no user library. A library conflict error
occurs when there is already a copy of the program running with a library
configuration different from that specified in the call to PROCESS_SPAWN_.
•
I/O error to the home terminal