Guardian Application Conversion Guide
Creating and Managing a High-PIN Process
Converting TAL Applications
3–16 096047 Tandem Computers Incorporated
5. Set
create^options
.<10> to 1 if you want the process to run at a high PIN
irrespective of process ancestry. Set
create^options
.<10> to zero (the default
value) if you want process ancestry to influence whether the process runs at a high
PIN or a low PIN.
In this example, PROCESS_CREATE_ creates a high-PIN process in a nowait manner,
assuming the inherited force-low flag is not set. The
nowait^tag
parameter is set to
a value other than -1D:
error := PROCESS_CREATE_(program^file:pf^length,
! library^file:lf^length ! ,
! swapfile:sf^length ! ,
! ext^swapfile:esf^length ! ,
priority,
cpu^number,
process^handle,
error^detail,
! name^option ! ,
! proc^name:proc^name^length ! ,
! process^desc:max^length ! ,
! process^desc^length ! ,
nowait^tag); ! Value is -1D.
When you call PROCESS_CREATE_ in a nowait manner, you receive the results as
follows:
System message -102 (PROCESS_CREATE_ completion)
If the system creates the process successfully, or if the system initiates the process
creation and an error occurs, the system returns the results to $RECEIVE in system
message -102. You read this message from $RECEIVE using the READX or
READUPDATEX procedure (provided you have already opened $RECEIVE to
receive system messages).
This message is analogous to system message -12 (NEWPROCESSNOWAIT
completion). For the description and format of all system messages, refer to the
Guardian Procedure Errors and Messages Manual.
The returned value
error
and the
error^detail
output parameter
If the system successfully initiates the creation, the returned value
error
is zero.
If the system cannot initiate the process creation, the system returns the results in
the returned value
error
and the
error^detail
output parameter and does not
send system message -102 to $RECEIVE.
For example, if the system encounters a parameter error, then
error
is 2 and the
error^detail
parameter contains the ordinal number of the first parameter that
the system detected as causing an error.