Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (N)
Guardian Procedure Calls Reference Manual—522629-013
10-21
NEWPROCESS Procedure
(Superseded by PROCESS_LAUNCH_ Procedure )
The creator access ID of the new process is always the same as the process
access ID of the creator process. The process access ID of the new process is the
same as that of the creator process unless the program file has the PROGID
attribute set; in that case the process access ID of the new process is the same as
the user ID of the program file’s owner and the new process is always local.
•
NEWPROCESS and low PINs
Processes created by NEWPROCESS always have low PINs because a high PIN
cannot fit into a 4-word process ID.
DEFINE Considerations
•
DEFINEs from the process context of the caller are propagated to the new
process. DEFINEs are propagated to the new process according to the DEFINE
mode of the new process. Buffer space for DEFINEs being propagated to a new
process is limited to 256 KB whether the process is local or remote. However, the
caller can propagate only as many DEFINEs as the child’s PFS can accommodate
in the buffer space for the DEFINEs themselves and in the operational buffer space
needed to do the propagation. The maximum number of DEFINEs that can be
propagated varies depending upon the size of the DEFINEs being passed. See
the DEFINESAVE procedure for an estimate of the size of each type of DEFINE.
•
When a process is created, its DEFINE working set is initialized with the default
attributes of class MAP.
•
Any or all of the three filenames in the filenames parameter may be DEFINE
names; NEWPROCESS will use the disk volume or file given in the DEFINE. If
program-file is a DEFINE name but no such DEFINE exists, the appropriate
error is returned. If either of the other names,
library-file or swap-file, is a
logical name but the DEFINE is missing, the procedure will behave as if the file
name was not present in the call. This characteristic of accepting absence of
DEFINEs provides the programmer with a convenient mechanism which allows,
but does not require, user specification of library and/or swap file location.
•
Each process has an associated count of the changes to its context. This count is
incremented each time the procedures DEFINEADD, DEFINEDELETE, and
DEFINEDELETEALL are invoked and a consequent change to the process context
occurs. In the case of DEFINEDELETE and DEFINEDELETEALL the count is
incremented by one even if more than one DEFINE is deleted. The count is also
incremented if the DEFINE mode of the process is changed. If a call to
CHECKDEFINE causes a DEFINE in the backup to be altered, deleted or added,
then the count for the backup process is incremented. This count is 0 for newly-
created processes, and new processes do not inherit the count of their creators.