Guardian Procedure Calls Reference Manual
For more information about building TNS user libraries, see the Binder Manual. For more
information about building non-PIC TNS/R SRLs, see the nld Manual and the noft Manual. For
more information about building PIC TNS/R DLLs, see the ld Manual. For more information
about building PIC TNS/E DLLs, see the eld Manual and the enoft Manual. For more information
about loading PIC programs and DLLs, see the rld Manual.
• Library conflict: PROCESS_LAUNCH_ 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 non-PIC processes must have the same user
library configuration; that is, all non-PIC processes sharing the program either have the same
user library, or they have no user library. A library conflict error occurs when there is already
a copy of the non-PIC program running with a library configuration different from that specified
in the call to PROCESS_LAUNCH_.
This error is also generated if a user library file is specified when running an older TNS
program containing an implicit user library. (Before the D30.00 RVU, a large TNS program
file could be created with 16 segments of user code and up to 16 additional segments mapped
as a user library. Subsequently, the user code and user library limits were raised to 32 segments
each, and the binder stopped creating programs with an implicit user library.)
• Device subtypes for named processes (process subtypes)
The device subtype (or process subtype) is a program file attribute that can be set by either a
TAL compiler directive at compile time, nld flag at link time, or Binder command at bind time.
You can obtain the device type and subtype of a named process by calling
FILE_GETINFO[BYNAME]_, FILEINFO, or DEVICEINFO.
Note that a process with a device subtype other than 0 must always be named.
There are 64 process subtypes available, where 0 is the default subtype for general use. The
other subtypes are as follows:
are reserved for definition by HP. Currently, 1 is a CMI process, 2 is a security monitor process, 30
is a device simulation process, and 31 is a spooler collector process. Also, for subtypes 1 to 15,
1 — 47
PROCESS_LAUNCH_ rejects the create request with an invalid process subtype error unless the caller
has a creator access ID of the super ID, or the program file is licensed, or the program file has the
PROGID attribute set and an owner of the super ID.
are for general use. Any user can create a named process with a device subtype in this range.48 — 63
For a list of all device types and subtypes, see Appendix A: Device Types and Subtypes.
• Reserved process names
The operating system reserved process name space includes these names: $Xname, $Yname,
and $Zname, where name is from 1 through 4 alphanumeric characters. You must not use
names of this form in any application. System-generated process names (from
PROCESS_LAUNCH_, NEWPROCESS[NOWAIT], PROCESSNAME_CREATE_,
CREATEPROCESSNAME and CREATEREMOTENAME) are selected from this set of names.
For more information about reserved process names, see Appendix B: Reserved Process
Names.
• Creator access ID (CAID) and process access ID (PAID)
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
1074 Guardian Procedure Calls (P)