2001 | PID (REC) Put: No; Verify: Yes; Release 3.0 Returns the PID of the process. Record type: longint_type (Refer to appendix B.) |
2002 | PIN (I32) Put: No; Verify: Yes; Release 3.0 Returns the PIN of the process. |
2003 | Parent PID (REC) Put: No; Verify: Yes; Release 3.0 Returns the PID of the parent process. Record type: longint_type (Refer to appendix B.) |
2004 | Parent PIN (I32) Put: No; Verify: Yes; Release 3.0 Returns the PIN of the parent process. |
2005 | Sibling PID (REC) Put: No; Verify: Yes; Release 3.0 Returns the PID of the sibling process (the next sibling in chronological order). All the children of a process are linked together in one direction. The head of the list is always at parent.child. A value of 0 indicates the end of the sibling list. Record type: longint_type (Refer to appendix B.) |
2006 | Sibling PIN (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the PIN of the sibling process (the next sibling in chronological order). All the children of a process are linked together in one direction. The head of the list is always at parent.child. A value of 0 indicates the end of the sibling list. |
2007 | Child PID (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the PID of the first child process created by the specified process. A PID of 0 indicates that no child process exists. |
| Record type: longint_type (Refer to appendix B.) |
2008 | Child PIN (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the PIN of the first child process created by the specified process. A PIN of 0 indicates that no child process exists. |
2009 | JSmain PID (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the PID of the JSmain process of the tree to which this process belongs. For system processes, a 0 is returned. For Jsmains in use, its own PID is the also JSmain PID. |
| Record type: longint_type (Refer to appendix B.) |
2010 | JSmain PIN (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the PIN of the JSmain process of the tree to which this process belongs. For processes of type system, detach, and task, a 0 is returned.
|
2011 | PID of the last child process (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the PID of the last child created by this process. Because the last child created may no longer exist, the PID should be used carefully. A 0 is returned if no child process was ever created. |
| Record type: longint_type (Refer to appendix B.) |
2012 | PIN of the last child process (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the PIN of the last child created by this process. Because the last child created may no longer exist, the PIN should be used carefully. A 0 is returned if no child process was ever created. |
2013 | PID of creator (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the PID of the creator process, usually the parent process. However, some system processes are adopted to another parent after creation. These processes have a different creator. |
| Record type: longint_type (Refer to appendix B.) |
2014 | PIN of creator (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the PIN of the creator process, usually the parent process. However, some system processes are adopted to another parent after creation. These processes have a different creator. |
2015 | Job/session number (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the job/session number of the job/session domain to which the process belongs.
This number is valid for processes of the type user and son.
For all other processes, a 0 is returned.
It also returns a 0 for some user processes like VTSERVER and NFT.
A negative number indicates a job; a positive number indicates a session.
The job/session number for this job or session in the following format: - Bits (0:2)
Job or session? ( 1 = Session, 2 = Job ) - Bits (2:14)
Number - Bits (16:16)
Extension
|
2016 | Scheduling state (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the state of the process, as viewed by the dispatcher. It is the first
item that should be interrogated to ascertain a process's state. Values and
their meanings are as follows: - 0
Executing (only for Calling Process) - 1
Ready - 2
Short wait - 3
Long wait - 4
Null
|
| Processes in the ready queue are linked together in the order of priority. A short wait is basically a wait for disk I/O, and the dispatcher expects the process to be ready in a short while. See the item 2025 "Reason for waiting" for further information. The null state is seen only for processes that are dead or in the process of dying. |
2017 | Scheduling queue (I32) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the scheduling queue that this process belongs to. Values and their meaning are as follows: - 0
AS Queue - 1
BS Queue - 2
CS Queue - 3
DS Queue - 4
ES Queue
|
| Modifying this information causes the process to be placed in the specified queue, with the priority being the base of the new queue. |
2018 | Degradable priority? (B) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies whether the process undergoes priority decay. True indicates that the process will undergo the normal priority decay from base to limit to base of the scheduled class it is in (CS, DS, ES), while it is in a circular queue. False causes the priority to remain fixed at the current priority. Classes are obtaining through AIFSCGET. |
| This item makes sense only for processes in the circular classes (CS, DS, ES) since the linear queue processes do not undergo priority decay. Also, a process that has gone through decayable boosting is always subject to priority drop. This also means that it contributes towards the system CS-SAQ. |
| Scheduling classes can be obtained through AIFSCGET. |
2019 | Priority (I32) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the priority of the process. This is an MPE/iX priority. It is very transient for user processes. For processes whose priority is not fixed, this value should be interpreted as the priority at which the process was last dispatched. For nonconstant priority processes, it is not used in determining the priority at which it will be dispatched next. |
| A valid MPE/iX priority is in the range 0..32767. The new priority should be in the range of priorities specified by the base and the limit of the current scheduling class of the process. This priority can be mapped to MPE V by the following formula:
MPEVPri = (32767 - MPEXLPri) DIV 128 (All formula values are decimal)
ex. B149 = (32767 - 13695) DIV 128
|
|
2020 | Reasons for boost (U32) Put: No; Verify: Yes; Release 3.0 |
| Returns the reasons for the priority boost. The bits and their meanings are as follows: - Bit (0:1)
The process is experiencing a non-decayable boost because the process owns a priority semaphore or resource for which there is a contention. - Bit (1:1)
The process is experiencing a non-decayable boost because the process owns a SIR for which there is a contention. - Bit (2:1)
The process is experiencing a non-decayable boost because the process has a long-running system transaction. - Bit (3:1)
The process is experiencing a non-decayable boost to ensure prompt handling of a system or subsystem break event. - Bit (4:1)
The process is experiencing a decayable boost because the process owns a priority semaphore or resource for which there is contention. - Bit (5:1)
The process is experiencing a non-decayable boost because the process is currently deemed unpreemptable and has blocked. - Bit (6:1)
The process is experiencing a non-decayable boost because the process is hosting a IPC server for which there is contention. - Bit (7:1)
The process is experiencing a decayable boost because the process has a long-running user transaction. - Bit (8:1)
The process is experiencing a non-decayable boost because the process owns a priority semaphore port for which there is contention. - Bit (9:1)
The process, a serial printer server, is experiencing a decayable boost to force priority oscillation.
|
| If no bit is turned on, the process priority has not been boosted. |
2021 | Post boost priority (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the post boost priority of the process. This is an MPE/iX priority with a range of 0..32767. This is the priority that will be in effect after the
process has unboosted from a new priority to which it was boosted for some
purpose. The process will be reassigned this priority as soon as possible.
A 0 is returned if the process is not currently boosted. |
2022 | Process state (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the state of the process from the viewpoint of process management. In general, it should be alive for most processes. The other states are
generally very transient. The data returned is valid mainly for the alive case. Values and their meanings are as follows: - 0
Unknown - 1
Dying - 2
Dead - 3
Alive - 4
Initiate - 5
Unborn
|
2023 | Time in ticks, when it began waiting (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the time, in ticks, since 1970 when the process entered the wait state.
This field is only updated when the Measurement Interface is turned on.
This time is processor dependent. To obtain processor-independent time, use the item 2024 for time in milliseconds. (This item provides faster access to time than item 2024.) |
| Record type: longint_type (Refer to appendix B.) |
2024 | Time in milliseconds, when it began waiting (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the time, in milliseconds, since 1970 when the process entered the wait state.
This field is only updated when the Measurement Interface is turned on.
This time is processor independent. |
| Record type: longint_type (Refer to appendix B.)
|
2025 | Reason for waiting (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns reasons that a process is not currently executing. - 0
nm code page fault - 1
nm stack page fault - 2
nm transient page fault - 3
file page fault - 4
cm code page fault - 5
cm stack page fault - 6
cm transient page fault
{The page fault reasons 0..6 are returned when the Measurement Interface
is turned on. Otherwise, disc io wait (9) will be returned.} - 7
terminal read wait - 8
terminal write wait - 9
disc io wait - 10
other io wait - 11
ipc trans complete - 12
sir wait - 13
rin wait - 14
memory manager prefetch - 15
quantum expiration - 16
timer wait - 17
parent wait - 18
control block wait - 19
child wait - 20
data comm wait - 21
rit wait - 22
disp work - 23
port wait
{ the following are subevents of port wait } - 24
mail wait - 25
junk wait - 26
message wait - 27
impede - 28
break wait - 29
wait queue - 30
memory management wait - 31
port blocked make present - 32
file blocked - 33
file unblocked - 34
storage management - 35
user to debug message - 36
io configuration wait - 37
pfp reply wait - 38
db monitor wait - 39
fill disc wait - 40
hlio wait
|
2025 | Reason for waiting (continued from previous page); Release 3.0 - 41
file system terminal io wait - 42
memory manager post wait - 43
signal timer wait - 44
preemption - 45
disc io preemption - 46
priority preemption - 47
sql lock wait - 48
sql latch level 1 wait - 49
sql latch level 2 wait - 50
sql latch level 3 wait - 51
sql latch level 4 wait - 52
sql latch level 5 wait - 53
sql latch level 6 wait - 54
sql latch level 7 wait - 55
sql latch level 8 wait - 56
sql latch level 9 wait - 57
sql latch level 10 wait - 58
sql latch level 11 wait - 59
sql latch level 12 wait - 60
sql latch level 13 wait - 61
sql latch level 14 wait - 62
sql latch level 15 wait - 63
sql latch level 16 wait - 64
sql latch level 17 wait - 65
sql latch level 18 wait - 66
sql latch level 19 wait - 67
sql latch level 20 wait - 68
sql latch level 21 wait - 69
sql latch level 22 wait - 70
sql latch level 23 wait - 71
sql latch level 24 wait - 72
sql latch level 25 wait - 73
sql latch level 26 wait - 74
sql latch level 27 wait - 75
sql latch level 28 wait - 76
sql latch level 29 wait - 77
sql latch level 30 wait - 78
sql latch level 31 wait - 79
sql latch level 32 wait
|
2025 | Reason for waiting (continued from previous page); Release
3.0 - 80
sql buffer wait - 81
long pause_wait - 82
memory manager freeze and other - 83
release - 84
deferred preempt - 85
memory manager pseudo ioread - 86
memory manager pseudo iowrite - 87
other wait - 100
dispatcher not blocked - 101
dead process
|
2026 | Last NM error entry number (I32) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the last NM error entry number, a value in the range 0..16. The NM error object is a circular queue of 16 elements. Upon entry into an NM intrinsic, the NM intrinsic error object is flushed out. The last error returned here is an index into the error object, to the rear of the error queue. It is reset to 0 upon entry into an intrinsic.
|
2027 | First NM error entry number (I32) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the first error entry number, a value in the range 0..16. The NM error circular queue may wrap around in case of too many errors. This item returns an index to the first valid error message, that is, the new front of the circular queue. It is reset to 0 upon entry into an intrinsic. |
2028 | Any NM errors lost? (B) Put: Yes; Verify: Yes; Release 3.0 |
| True if the error queue has wrapped around, causing errors to be lost. It is reset to false upon entry into an intrinsic. |
2029 | Total number of NM errors (I32) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the number of valid errors recorded in the error queue, a value in the range 0..16. It is reset to 0 upon entry into an intrinsic. |
2030 | NM intrinsic errors (I32A) Put: Yes; Verify: No; Release 3.0 |
| Returns an array of all the errors dumped onto the stack by the last call to an NM intrinsic. The errors are all MPE/iX statuses that can be investigated through normal error mechanisms. The range of indices holding valid errors is determined by the above items. The maximum number of errors is 16. The user should pass an area of appropriate size. The first word of the buffer is expected to hold the size, in words, of the rest of the buffer area. The first word, on return, specifies the number of errors returned. The itemstatus_array should be checked to determine whether information was truncated. |
2031 | I/Os outstanding (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the total number of I/Os outstanding for this process. |
2032 | CM I/Os outstanding (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the number of CM I/Os outstanding for this process. |
2033 | Process type (U32) Put: No; Verify: Yes; Release 3.0 |
| Returns the type of the process. Values and their meanings are as follows: - 0
User (any process created by a user) - 1
Son (process created by CI to run user programs) - 2
Main (CI process) - 3
Task (not in use) - 4
System (some integral processes) - 5
Detach (not connected to the PROGEN tree) - 6
UCOP (JSmain) - 7
Unknown (uninitialized processes)
|
2034 | Program name (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the fully qualified MPE syntax name of the program file. It is of type filename_type, with the file, group, and account names each left-justified and padded with blanks. |
| Note that this item should be used only for names that can be expressed
using MPE syntax.
Item 2131 should be used for HFS syntax or MPE syntax program files
which are represented using a HFS pathname.
If you select this item for a file that cannot be represented using
MPE syntax, then blanks are returned and a warning is issued in
itemstatus_array. |
| Record type: filename_type (Refer to appendix B.) |
2035 | Program file number (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the HPFOPEN process local file number for the program file. |
2036 | Entry pointer (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns the address of the entry point for the program. |
2037 | CM mode initially? (B) Put: No; Verify: Yes; Release 3.0 |
| Returns true if the image was loaded from a CM program and false if it was loaded from an NM program. |
2038 | Info string passed? (B) Put: No; Verify: Yes; Release 3.0 |
| Returns true if an info string was passed when the program was loaded.
|
2039 | Info string (CA256) Put: No; Verify: Yes; Release 3.0 |
| Returns the character array (of maximum 256 characters) that was passed when the program was loaded. It is valid only if item 2038 "Info string passed?" is true. It is left-justified and padded with blanks. |
2040 | Parm (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the parm specified (if any) when the program was loaded. By default it is always 0. |
2041 | Space ID of the stack (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the space ID for SR5. This space consists of, among other things, the NM area, the XRT area, and the CM area. |
2042 | XRT area base (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns a pointer to the base of the XRT area. |
2043 | XRT area limit (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns a pointer to the limit of the XRT area. This area is used for branching to external routines. |
2044 | CM area base (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns a pointer to the base of the CM area. |
2045 | CM area limit (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns a pointer to the limit of the CM area. The CM area is configured exactly as in MPE V/E. It takes into account the MAXDATA specified in the RUN command or at process creation time. |
2046 | NM stack base (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns a pointer to the base of NM Stack. |
2047 | NM stack limit (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns a pointer to the limit of the NM stack. Within the area between the NM stack base and the stack limit lie the stack area, the heap area, and the global data area. It takes into account the size specified at process creation time or in the NMSTACK option in the RUN command. |
2048 | Heap area base (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns a pointer to the base of the heap area. |
2049 | Heap area limit (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns a pointer to the limit of the heap area. The heap grows in the area between the heap base and the heap limit. The heap and the stack grow towards each other in Pascal. It takes into account the size specified at process creation time or in the NMHEAP option in the RUN command. |
2050 | PCBX address (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns the address of PCBX base. |
2051 | Split stack mode? (B) Put: No; Verify: Yes; Release 3.0 |
| Returns true if the process is currently in split stack mode. By default it is false, even for NM processes. |
2052 | DB DST number (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the DST number of the segment into which DB is pointing. It may be different from the actual stack DST in split stack mode. |
2053 | CM stack DST number (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the DST number assigned to the CM area in the process local space. It is initialized at process creation time, once and for all. The address of the CM area base, in split stack mode, can be obtained through the CM area base and NM SID items. |
2054 | DB (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns an offset within the space ID of the current stack. This is maintained only at the time of a switch. It may be outdated information if the process is in CM. |
2055 | DL (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns the address of DL. It points into the CM stack area. |
2056 | Initial DL (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the initial displacement from DL to DB, in halfwords (16-bit words). It is the size specified in the DL option of the RUN command or at process creation time. |
2057 | Initial Q (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the initial displacement from DB to Q, in halfwords (16-bit words). It takes into account the size specified in the STACK option at process creation time or in the RUN command. |
2058 | Number of extra data segments (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the number of extra data segments allocated to the process.
|
2059 | List of extra data segments (REC) Put: No; Verify: No; Release 3.0 |
| Returns an array of the DST numbers and the virtual addresses of the extra data segments allocated to the process. The maximum number of DSTs for a process can be obtained from AIFSCGET. You should pass a buffer of appropriate size. The first word of the buffer is expected to hold the size, in words, of the rest of the buffer area. The first word, upon return, specifies the number of DST numbers returned. Check itemstatus_array to see if information was truncated. |
| Record type: dstsrec_type (Refer to appendix B.) |
2060 | LSTT DST number (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the DST number of the segment holding the logical segment transfer table. |
2061 | LSTT address (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns the address of the logical segment transfer table. Using this address is a faster method of accessing the LSTT than the CM way of going through a DST. |
2062 | Number of open files (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the number of files opened for this process. Standard files and all active opens are counted. If a file has been opened twice, it is counted twice. |
2063 | File numbers of the open files (REC) Put: No; Verify: No; Release 3.0 |
| Returns an array of the NM file numbers of all the files opened by the process.
The maximum number of files can be 1024, including the standard files. |
| Note that this item returns file numbers for both MPE syntax and HFS syntax
files.
Item 2064 only supports names that can be
represented using MPE syntax. Item 2122 is able to represent all
file names, including MPE syntax and HFS syntax files. |
| Not all the standard files may be open by default.
Hence, some of these may not be returned.
The file numbers for the standard files are: - 0
$STDIN - 1
$STDLIST - 2
$STDERR - 3
Not used - 4
Root directory - 5
Account directory - 6
Group directory - 7
Temporary directory
|
| You should pass an area of appropriate size. The first word of the buffer is expected to hold the size, in words, of the rest of the buffer area. The first word, upon return, specifies the number of file numbers returned. Check itemstatus_array to see if information was truncated. |
| Record type: I32rec_type (Refer to appendix B.)
|
2064 | MPE names of files (REC) Put: No; Verify: No; Release 3.0 |
| Returns a list of fully qualified file names of the files opened by this process. The file name, group name, and account name are each left-justified and padded with blanks. For device files and standard files, the group and account names will be blanks. |
| Only those names which can be represented by MPE-syntax will
be returned. For HFS files, the filename, group, and account fields will
be blank and a warning will be returned.
Your application can either check for blank names if you wish to continue using
this item or you can use item 2122 to retrieve the file pathnames. |
| The maximum number of files that can be opened by a process can be obtained from AIFSCGET. You should pass an area of appropriate size. The first word of the buffer is expected to hold the size, in 16-byte records, of the rest of the buffer area. The first word, on return, specifies the number of names returned. Check itemstatus_array to see if information was truncated. |
| Record type: Fnamerec_type (Refer to appendix B.) |
2065 | UFIDs of files (REC) Put: No; Verify: No; Release 3.0Returns a list of UFIDs (unique identifiers) for the open files. These can then be used as input to the other AIFs. For device files and standard files, the UFID will be blanks. You should pass an area of appropriate size. The first word of the buffer will be expected to hold the size, in 5-word chunks, of the rest of the buffer area. The first word, on return, specifies the number of UFIDs returned. Check itemstatus_array to see if information was truncated. |
| The Pathname Identifier, item 2123, should be specified for HFS files
since the UFID alone is not adequate to return a Pathname for an HFS file. |
| Record type: Ufidrec_type (Refer to appendix B.) |
2066 | Process Tree (REC) Put: No; Verify: No; Release 3.0 |
| Returns entire process tree, PIDs for calling process, PIDs for children, and
PIDs for any grandchildren.
The children appear in chronological order of birth. The maximum size is a system constant, obtainable from AIFSCGET. You should pass a buffer of appropriate size. The first word of the buffer is expected to hold the size, in longwords, of the rest of the buffer area. The first word, upon return, specifies the number of PIDs returned. Check itemstatus_array to see if information was truncated.
|
| Record type: I64rec_type (Refer to appendix B.) |
2067 | PCB pointer (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns the PCB pointer. |
2068 | Max. short mapped space allowed (I32) Put: No; Verify: Yes; Release
3.0 |
| Returns the maximum amount, in bytes, of short-mapped space allowed. |
2069 | Short mapped space used (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the amount, in bytes, of virtual space used for short-mapped files.
|
2070 | General resource capabilities (U32) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the resources capability mask for the process. This mask contains the resource capabilities for the user associated with the process. Not valid for processes in the wait state. Mask bits and their meanings are as follows: - Bits (0:22)
Unused - Bit (23:1)
Batch access - Bit (24:1)
Interactive access - Bit (25:1)
Privileged mode - Bit (26:2)
Unused - Bit (28:1)
Multiple RINs - Bit (29:1)
Unused - Bit (30:1)
Extra data segment - Bit (31:1)
Process handling
|
2071 | System code depth (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the number of nested calls to enter system code. |
2072 | Critical code depth (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the number of nested calls to enter critical code. |
2073 | Number of CM intrinsic errors (I32) Put: Yes; Verify: Yes; Release
3.0 |
| Returns or modifies the number of errors during the last call to a CM intrinsic. Values are in the range 0..6. This item is zeroed out upon entry into a CM intrinsic. |
2074 | CM intrinsic errors (I32A) Put: Yes; Verify: No; Release 3.0 |
| Returns or modifies the errors dumped onto the stack by the last call to a CM intrinsic. It is flushed out upon entry to any intrinsic. Values are in the range of shortint. |
| The highest index entry is the last error recorded. The format of the error message depends upon the intrinsic called. This array can have a maximum of 6 elements. You should pass an area of appropriate size. The first word of the buffer is expected to hold the size, in words, of the rest of the buffer area. The first word, upon return, specifies the number of error returned. Check itemstatus_array to see if information was truncated. |
2075 | Last FOPEN error (I32) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the last FOPEN error in accessing a file.
Prior to Release 4.5, valid values for this item were in the range 0..255. Now
because there is an increase in the number of errors the file system must
report, the last FOPEN error is kept in the form of an HPE status in a
process structure. This HPE status gets converted to an MPE error when
the user calls FCHECK. |
| Therefore, when getting this item, the HPE status will be converted to an MPE
error, and on a PUT, the MPE error will be converted to a HPE status.
This is to maintain compatibility for existing applications. Currently, if
you pass in an invalid FOPEN error which cannot be converted, the file system
will return an FOPEN error of -20 (Invalid Operation). |
2076 | Last KOPEN error (I32) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the last KOPEN error in accessing a KSAM file. It is a CM KOPEN error status.
Values are in the range 0..255.
|
2077 | CM arithmetic trap enabled? (B) Put: No; Verify: Yes; Release 3.0 |
| Returns true if arithmetic traps in CM are enabled, and false otherwise.
|
2078 | CM arithmetic trap handler (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns a short pointer which is actually a CM Plabel. It is the plabel for the trap handler to be invoked in case of an arithmetic trap. |
2079 | NM arithmetic trap mask (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns the mask for arithmetic traps raised in NM. This mask is set by the compiler. The bits and their meanings are as follows: - Bits (0:7)
Reserved (set to zero) - Bit (8:1)
Paragraph stack overflow - Bit (9:1)
Unimplemented error conditions - Bit (10:1)
Software detected misaligned result of pointer arithmetic or error in conversion from long pointer to short pointer - Bit (11:1)
Software detected nil pointer - Bit (12:1)
Range errors - Bit (13:1)
IEEE floating-point, invalid operation - Bit (14:1)
IEEE floating-point divide by zero - Bit (15:1)
IEEE floating-point overflow - Bit (16:1)
IEEE floating-point underflow - Bit (17:1)
IEEE floating-point inexact result - Bit (18:1)
Decimal divide by 0 - Bit (19:1)
Reserved for future use (set to 0) - Bit (20:1)
Unused - Bit (21:1)
Invalid decimal digit - Bit (22:1)
Invalid ASCII digit - Bit (23:1)
Decimal overflow - Bit (24:1)
3000 mode double precision divide by zero - Bit (25:1)
3000 mode double precision underflow - Bit (26:1)
3000 mode double precision overflow - Bit (27:1)
Integer overflow - Bit (28:1)
3000 mode floating-point overflow - Bit (29:1)
3000 mode floating-point underflow - Bit (30:1)
Integer divide by zero - Bit (31:1)
3000 mode floating-point divide by zero
|
| Consult the intrinsic HPENBLTRAP for further details. |
2080 | NM arithmetic trap handler (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns the address of the exception handler to be invoked in case of a floating-point exception. |
2081 | CM library trap handler (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns a short pointer that is actually a CM plabel. It is the plabel for the trap handler to be invoked in case of a library trap in CM.
|
2082 | NM library trap handler (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns the address of the trap handler to be invoked in case of a library trap in NM. |
2083 | CM system trap handler (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns a short pointer which is actually a CM plabel. It is the plabel for the trap handler to be invoked in case of a system trap in CM. |
2084 | NM system trap privileged level (I32) Put: No; Verify: Yes; Release
3.0 |
| Returns the privileged level at which the trap handler executes. |
2085 | NM system trap handler (@64) Put: No; Verify: Yes; Release 3.0 |
| Returns the address of the trap handler to be invoked in case of a system trap in NM. |
2086 | Unsatisfied reference handler (I32) Put: No; Verify: Yes; Release 3.0 |
| Returns an NM plabel for the procedure to be invoked in case of an unresolved external call. By default, a load fails in cases of unresolved externals. However, if the UNSAT option is specified at process creation time, this item is initialized and this procedure is called instead of unresolved externals. A nil pointer indicates that there are no unresolved externals. |
2087 | Unsatisfied reference procedure (CA32) Put: No; Verify: Yes; Release
3.0 |
| Returns the name of the procedure to be invoked in case of an
unsatisfied external reference at run time. The name will be left-justified and padded with blanks. It is set through the
UNSAT option in the RUN command or the CREATEPROCESS intrinsic. It is blank if there are no unsatisfied external references in the image. |
2088 | Dump armed? (B) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies whether the SETDUMP intrinsic has been called by the process. True if SETDUMP has been called and false otherwise. If it is true, then upon process abort, Debug is called with a command string that results in a full stack trace of both the CM and the NM data stacks, and a dump of NM registers. This output is sent to the standard list device. |
2089 | DEBUG commands (CA256) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies the commands to be executed by Debug upon invocation when a process aborts and if a call to SETDUMP intrinsic had been made prior to the abort. The names are returned left-justified and padded with blanks. By default, a call to SETDUMP causes the Debug commands to be tr d,i;c. Blanks are returned if SETDUMP was not invoked. |
| This item should consist only of valid Debug commands separated by a semicolon (;), the same as the macros for DAT/Debug/SAT and the SETDUMP intrinsic.
|
2090 | DEBUG armed? (B) Put: Yes; Verify: Yes; Release 3.0 |
| Returns or modifies whether or not Debug should be invoked if the program aborts. By default it is false. It is true if the RUN command is invoked with the DEBUG option. |
2091 | CPU time, in ticks (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the CPU time, in ticks, used by the process. It is processor dependent and accessed speedily. For processor-independent time, use item 2092 to obtain the time in milliseconds. |
| Record type: longint_type (Refer to appendix B.) |
2092 | CPU time, in milliseconds (REC) Put: No; Verify: Yes; Release 3.0 |
| Returns the CPU time, in milliseconds, used by the process. |
| Record type: longint_type (Refer to appendix B.) |
2093 | Does process have a SIR? (B) Put: No; Verify: Yes; Release 3.0 |
| Returns true if this process is currently holding a SIR, and false otherwise. |
2094 | JS key (I32) Put: No; Verify: Yes; Release 4.0 |
| An internal key used to access job/session information through AIFJSGET. A JS key should be used only as an input key in calls to AIFJSGET, and should not be interpreted as any sort of job/session identifier. (JS keys are also returned by AIFSYSWIDEGET.) |
2095 | User and file access capabilities (I32) Put: Yes; Verify: Yes; Release
3.0 |
| Returns or modifies the capability mask for this process. It is a bit map, and if the bit is set to 1, the process owns the corresponding capability. Bits and their meanings are as follows: - Bits (0:16)
Unused - Bit (16:1)
System manager - Bit (17:1)
Account manager - Bit (18:1)
Account librarian - Bit (19:1)
Group librarian - Bit (20:1)
Diagnostician - Bit (21:1)
System supervisor - Bit (22:1)
Create volume sets - Bit (23:1)
Use private volumes - Bit (24:1)
Use user logging - Bit (25:1)
Unused - Bit (26:1)
Programmatic sessions - Bit (27:1)
Network administrator - Bit (28:1)
Node manager - Bit (29:1)
Use comm subsystem - Bit (30:1)
Nonshareable device - Bit (31:1)
Save files
|
2096 | Time process on ready queue after awakening (REC) Put: No; Verify: Yes; Release 4.0 |
| Returns time when process is inserted in Ready Queue. Used by Measurement
Interface to calculate time spent on Ready Queue by subtracting Ready Queue
time from current time (time when process is launched). This value is updated
when the Measurement Interface is turned on. |
| Record type: "longint_type" (Refer to appendix B.) |
2105 | NM stack maximum SP (@64) Put: No; Verify: Yes; Release 4.0 |
| Returns a pointer to the NM stack maximum. When a stack is initialized
for a process this is the same value as the NM stack limit. It takes
into account the size specified at process creation time or in the
NMSTACK option in the RUN command. |
2106 | Execution Mode (B) Put: No; Verify: Yes; Release 4.0 |
| Returns the execution mode of the specified process. Note that the
process' execution changes dynamically, therefore this is just
a "snapshot" of the process' execution mode. True indicates the
execution mode is CM, a false value indicates NM execution. |
2107 | CM Maxdata (I32) Put: No; Verify: Yes; Release 4.0 |
| Returns the maximum CM stack area size in 16 bit words. |
2108 | CM S (I32) Put: No; Verify: Yes; Release 4.0 |
| Returns the current CM top of stack in DB relative CM (16-bit) words. |
2109 | JDT DST (I32) Put: No; Verify: Yes; Release 4.0 |
| Returns the DST number of the segment for the Job Directory Table(JDT). |
2110 | Job name (CA16) Put: Yes; Verify: Yes; Release 4.5 |
| Returns or modifies the identifier given to a job or session. It must be
left-justified, all capitals, and padded with blanks. All blanks represent a
job or session that does not have a job name. Only the first eight characters
are changed using AIFJSPUT. This information is local to the process. |
2111 | User name (CA16) Put: No; Verify: Yes; Release 4.5 |
| Returns the name of the user that the job or session is logged on to. It is
left-justified and padded with blanks. This information is local to
the process. |
2112 | Group name (CA16) Put: No; Verify: Yes; Release 4.5 |
| Returns the name of the group that the job or session is logged on to. This is
left-justified and padded with blanks. This information is local to the
process. |
2113 | Account name (CA16) Put: No; Verify: Yes; Release 4.5 |
| Returns the name of the account that the job or session is logged on to. This
is left-justified and padded with blanks. This information is local to the
process. |
2114 | Maximum Account Job Priority (I32) Put: No; Verify: Yes; Release 4.5 |
| Returns or modifies a priority that is the maximum allowed for the account that
the job or session is logged on to. This information is local to the process.
The maximum priority for an account is specified by using the MAXPRI
parameter of the NEWACCT and ALTACCT commands. This item will not
return valid data for jobs in the WAIT state.
The values and their associated queues are as follows: - 100
BS queue - 150
CS queue - 200
DS queue - 250
ES queue
|
2115 | Account Security (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns or modifies the security mask for the account that the job or session
is logged on to. This information is local to the process. The account
security mask can also be set using the ALTSEC command. Not valid for jobs in the WAIT state. The bits of the mask have the following meanings: - Bits (0:20)
Unused - Bit (20:1)
Read any - Bit (21:1)
Read account user - Bit (22:1)
Append any - Bit (23:1)
Append account user - Bit (24:1)
Write any - Bit (25:1)
Write account user - Bit (26:1)
Lock any - Bit (27:1)
Lock account user - Bit (28:1)
Execute any - Bit (29:1)
Execute account user - Bits (30:2)
Unused
|
2116 | Group security (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns or modifies the security mask for the group that the job or session is
logged on to. This information is local to the process. The group security
mask can also be set using the ALTSEC command. Not valid for jobs in the WAIT
state. The bits of the mask have the following meanings: - Bits (0:2)
Unused - Bit (2:1)
Read any - Bit (3:1)
Read account user - Bit (4:1)
Read account librarian - Bit (5:1)
Read group user - Bit (6:1)
Read group librarian - Bit (7:1)
Append any - Bit (8:1)
Append account user - Bit (9:1)
Append account librarian - Bit (10:1)
Append group user - Bit (11:1)
Append group librarian - Bit (12:1)
Write any - Bit (13:1)
Write account user - Bit (14:1)
Write account librarian - Bit (15:1)
Write group user - Bit (16:1)
Write group librarian - Bit (17:1)
Lock any - Bit (18:1)
Lock account user - Bit (19:1)
Lock account librarian - Bit (20:1)
Lock group user - Bit (21:1)
Lock group librarian - Bit (22:1)
Execute any - Bit (23:1)
Execute account user - Bit (24:1)
Execute account librarian - Bit (25:1)
Execute group user - Bit (26:1)
Execute group librarian - Bit (27:1)
Save any - Bit (28:1)
Save account user - Bit (29:1)
Save account librarian - Bit (30:1)
Save group user - Bit (31:1)
Save group librarian
|
2117 | Home Group (CA16) Put: No; Verify: Yes; Release 4.5 |
| Returns the name of the home group for the user that the job or session is
logged on to. This is left-justified and padded with blanks.
Not valid for jobs in the WAIT state. This information is local to the process. |
2118 | Account Local Attributes (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns or modifies the local attributes for the account that the job
or session is currently logged on to. These attributes are an extension of
MPE/iX security and are not required. Their meaning is user defined,
although the first 16 bits are unused. Not valid for jobs in the WAIT state. This information is local to the process. |
2119 | User Capabilities (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns or modifies the user capability mask for the job or session. Not valid
for jobs in the WAIT state. This information is local to the process. Mask
bits and their meanings are as follows: - Bits (0:16)
Unused - Bit (16:1)
System manager - Bit (17:1)
Account manager - Bit (18:1)
Account librarian - Bit (19:1)
Group librarian - Bit (20:1)
Diagnostician - Bit (21:1)
System supervisor - Bit (22:1)
Create volume sets - Bit (23:1)
Use private volumes - Bit (24:1)
Use user logging - Bit (25:1)
Unused - Bit (26:1)
Programmatic session - Bit (27:1)
Network administrator - Bit (28:1)
Node manager - Bit (29:1)
Use comm subsystem - Bit (30:1)
Non-shareable device - Bit (31:1)
Save files
|
2120 | General Resource Capabilities (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns or modifies the general resources capability mask for the job or
session. This mask contains the general resource capabilities for the user
that the job or session is logged on to. Not valid for jobs in the WAIT
state. This information is local to the process. Mask bits and their meanings are as follows: - Bits (0:23)
Unused - Bit (23:1)
Batch access - Bit (24:1)
Interactive access - Bit (25:1)
Privileged mode - Bit (26:2)
Unused - Bit (28:1)
Multiple RINs - Bit (29:1)
Unused - Bit (30:1)
Extra data segment - Bit (31:1)
Process handling
|
2121 | Allow Mask (BA96) Put: Yes; Verify: Yes; Release 4.5 |
| Returns or modifies the commands allowed for this session in a packed array of
96 booleans. True is returned if the command is allowed for the job or session.
Not valid for jobs in the WAIT state. This information is local to the
process. The commands and their array locations are as follows:
ABORTIO = 1 DELETE = 19 LDISMOUNT = 37
ACCEPT = 2 DISALLOW = 20 MRJECONTROL = 38
DOWN = 3 JOBFENCE = 21 JOBSECURITY = 39
GIVE = 4 LIMIT = 22 DOWNLOAD = 40
HEADOFF = 5 STOPSPOOL = 23 MIOENABLE = 41
HEADON = 6 SUSPENDSPOOL = 24 MIODISABLE = 42
REFUSE = 7 OUTFENCE = 25 LOG = 43
REPLY = 8 RECALL = 26 FOREIGN = 44
STARTSPOOL = 9 RESUMEJOB = 27 IMF = 45
TAKE = 10 RESUMESPOOL = 28 SHOWCOM = 46
UP = 11 STREAMS = 29 OPENQ = 47
MPLINE = 12 CONSOLE = 30 SHUTQ = 48
DSCONTROL = 13 WARN = 31 DISCSENSING = 49
ABORTJOB = 14 WELCOME = 32 VSRESERVESYS = 50
ALLOW = 15 MON = 33 VSRELEASESYS = 51
ALTFILE = 16 MOFF = 34 VSCLOSE = 52
ALTJOB = 17 VMOUNT = 35 VSOPEN = 53
BREAKJOB = 18 LMOUNT = 36 unused = 54..96
|
|
2122 | Pathnames of Open Files (@64) Put: No; Verify: No; Release 4.5 |
| Returns a list of file pathnames for each file opened by this process.
The long pointer specified in this item points to the buffer where the
names will be returned. Each name will be terminated by a NULL character. |
| On input, the first four bytes in the buffer will represent the maximum buffer
length in bytes. On output, the first four bytes will contain the actual
number of bytes returned (this includes the NULL terminators separating each
name). Refer to Operation Notes for AIFSYSWIDEGET for a diagram of the
buffer format. |
| If an HFS file has been opened by UFID and not by name or if the file is a
special MPE file which cannot be represented as an HFS pathname (for example,
$TEMPDIRC),
then there
will be no pathname associated with the file. In this case, a NULL character
will be written to the buffer to delimit a place holder for the file.
This is so that each name will match up with a
corresponding entry in the file number and path_identifier arrays
(items 2063 and 2123). |
| See the buffer_type declaration in appendix B for a suggestion on how to
define this buffer. |
2123 | Path Identifiers of Open Files (RECA) Put: No; Verify: Yes; Release 4.5 |
| Returns the unique path identifiers for the open files. If a file has been
opened by UFID and not by name or if the file is a special MPE file not
supported by the hierarchical directory services, then the path_identifier
entry for that file will not contain all the information needed to identify a
unique pathname. The parent_ufid and link ID fields will be 0. |
| Record type: path_id_rec_type |
2125 | Fork Process (B) Put: No; Verify: Yes; Release 4.5 |
| Returns true if the process was created using the fork() function. |
2126 | UID (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns the process' real user ID. This POSIX attribute is
assigned to each user on the system. Every process created by a user has that
user's real user ID. |
2127 | EUID - Effective UID (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns the process' effective user ID. This POSIX attribute describes
the access rights of a process to files. At process creation time,
the EUID matches the UID, but it may be changed with the setuid() function. |
2128 | GID (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns the process' real group ID. This POSIX attribute
describes the group a process belongs to. |
2129 | EGID - Effective GID (I32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns the process' effective Group ID. This is a POSIX attribute which
determines access rights of a process to files. At process creation time, the
EGID matches the GID, but it may be changed with the setgid() function. |
2130 | CMASK (U32) Put: Yes; Verify: Yes; Release 4.5 |
| Returns the process' file creation mask. This mask changes with the
POSIX umask() function. Any file created after a process calls
umask will have an ACD attached to the file. |
2131 | Program pathname (REC) Put: No; Verify: Yes; Release 4.5 |
| Returns the absolute pathname of the program file. |
| On input, the first four bytes in the buffer will represent the maximum buffer
length in bytes. On output, the name will be terminated by a NULL character
and the first four bytes will contain the actual number of bytes returned
(not including the NULL character or the one word length). |
| Note that this item should only be used for names that can be expressed
using HFS syntax.
If you specify this item for a program (for example, $OLDPASS) that cannot be
expressed using HFS syntax, then a warning
is returned in itemstatus_array. |
| Record type: pathname_type |
2132 | Break Request Done (B) Put: No; Verify: Yes; Release 4.5 |
| Returns the Boolean flag used to indicate whether a process
received the process management break interrupt message or not.
Set to true to indicate that the process has been put into a
break wait. Set to false to indicate that the process is no longer
in break wait but on the dispatcher queue. |
2133 | Break Request Cancel (I32) Put: No; Verify: Yes; Release 4.5 |
| Returns counter used by process management to indicate whether
a pending process management break interrupt message just
received is to be ignored or not. |
2134 | Break Request Pending (I32) Put: No; Verify: Yes; Release 4.5 |
| Returns counter used by process management to indicate whether
a process management break interrupt message that is being sent
has been received and is being acted upon. The process receiving the
message will be in a break wait state. |
2135 | List of sibling PIDs (REC) Put: No; Verify: No; Release 4.5 |
| Returns a list of PIDs of all the sibling processes. The maximum
size is a system constant, obtainable from AIFSCGET. You should
pass a buffer of appropriate size. The first word of the buffer
is expected to hold the size, in longwords, of the rest of the
buffer area. The first word, upon return, specifies the number of
PIDs returned. Check itemstatus_array to see if information was
truncated. |
| Record type: I64rec_type (Refer to appendix B) |
2136 | List of parent PIDs (REC) Put: No; Verify: No; Release 4.5 |
| Returns a list of PIDs of all the parent processes. The maximum
size is a system constant, obtainable from AIFSCGET. You should
pass a buffer of appropriate size. The first word of the buffer
is expected to hold the size, in longwords, of the rest of the
buffer area. The first word, upon return, specifies the number of
PIDs returned. Check itemstatus_array to see if information was
truncated. |
| Record type: I64rec_type (Refer to appendix B)
|
2142 | Interactive? (B) Put: Yes; Verify: Yes; Release 5.0 |
| Returns or modifies the interactive status of the process.
True when human intervention is required for all input operations.
|
2143 | Environment Nil (B) Put: No; Verify: Yes; Release 5.0 |
| Returns whether the user has a nil environment.
If a process has a nil environment, then during startup of its child POSIX process, all the CI variables for the job/session environment are changed into an environment format and inherited by the child process. |
2144 | Workgroup name (CA256) Put: Yes; Verify: Yes |
| Returns or modifies the name of the workgroup to which the specified process
belongs. The workgroup name will be left justified and terminated by a
NULL character (ASCII 0). AIFPROCPUT with this item number will move the
target process to the specified workgroup. A process moved in this manner
is considered an artificial member of the workgroup (the process was
placed in a workgroup explicitly, rather than naturally by meeting the
membership criteria specified for the workgroup). A process remains an
artificial member of its assigned workgroup until either the workgroup
is purged or its explicit assignment is changed by AIFPROCPUT item 2146. |
| An artificial member is not affected by a system-wide scan or by the changing
of its process attributes used to determine workgroup membership. |
| If both items 2144 and 2146 are specified, then the order they are passed
will determine the outcome. If the order is item 2144 followed by item
2146, then the process will migrate to its natural workgroup. However if
item 2146 is passed followed by item 2144, then the process will be
pegged to the name of the workgroup passed as its artificial member. |
| Record type: CA256 |
2145 | Artificial Member? (B) Put: No; Verify: Yes |
| Returns true if the specified process is an artificial member of its workgroup. |
2146 | Return to Natural Workgroup (B) Put: Yes; Verify: No |
| Returns the specified process to its natural workgroup. This item will
return a warning for AIFPROCGET in the item status array.
This item allows the process to migrate to its natural workgroup.
If the process is an artificial member of a workgroup, this item will
release the process from its explicit workgroup assignment. However
a process who is a member of its natural workgroup will not be
impacted. |
| If both items 2144 and 2146 are specified, then the order they are passed
will determine the outcome. If the order is item 2144 followed by item
2146, then the process will migrate to its natural workgroup. However if
item 2146 is passed followed by item 2144, then the process will be
pegged to the name of the workgroup passed as its artificial member. |
2147 | Execution State? (I32) Put: No; Verify: Yes |
| Returns the execution state of the process. Values and their meanings are: - 0
Blocked for memory manager. - 1
Unused. - 2
Blocked for control block. - 3
All purpose block, usually waiting for a message. - 4
Ready to execute (or executing). - 5
Blocked for terminal write or control.
|
2148 | Fixed Priority? (I32) Put: Yes; Verify: NO |
| Fixes the priority of the process at the value passed. This item will return a warning
for AIFPROCGET. |
| A valid MPE/iX priority is in the range 0 .. 32767. This priority can be mapped to
MPE V priority by the following formula: |
| MPEVPri= (32767 - MPEXLPri) DIV 128 (All formula values are decimal.) |