HPlogo 900 Series HP 3000 Computer Systems: MPE/iX Architected Interface Facility: Operating System Reference Manual > Chapter 3 Architected Interface Descriptions

AIFPROCGET/PUT Items

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Index

The following two tables provide summary and detailed descriptions of the items associated with process information.

Item Summary

The following table summarizes the item numbers associated with process information. For more detailed information about these item numbers, refer to the table of process information item descriptions.

Table 3-26 Process Information Item Summary

ItemTypeDescriptionPutVerMinMaxError#
2001Longint_typePIDNY   
2002I32PINNY   
2003Longint_typeParent PIDNY   
2004I32Parent PINNY   
2005Longint_typeSibling PIDNY   
2006I32Sibling PINNY   
2007Longint_typeChild PIDNY   
2008I32Child PINNY   
2009Longint_typeJSmain PIDNY   
2010I32JSmain PINNY   
2011Longint_typeLast child PIDNY   
2012I32Last child PINNY   
2013Longint_typeCreator PIDNY   
2014I32Creator PINNY   
2015I32Job/session numberNY   
2016I32Scheduling stateNY   
2017I32Scheduling queueYY04-2008
2018BDegradable priority?YY   
2019I32PriorityYY032767-2009
2020U32Reasons for boostNY   
2021I32Post boost priorityNY   
2022I32Process stateNY   
2023Longint_typeWaiting time (ticks)NY   
2024Longint_typeWaiting time (msecs)NY   
2025I32Waiting reasonNY   
2026I32NM error queue headYY016-2007
2027I32NM error queue tailYY016-2007
2028BLost NM error entries?YY   
2029I32Number of NM errorsYY016-2007
2030I32AList of NM errorsYN   
2031I32I/O countNY   
2032I32CM I/O countNY   
2033U32Process typeNY   
2034Filename_typeProgram nameNY   
2035I32Program file numberNY   
2036A64Entry addressNY   
2037BCM mode initially?NY   
2038BInfo string passed?NY   
2039CA256Info stringNY   
2040I32ParmNY   
2041I32SR5 space IDNY   
2042A64XRT area baseNY   
2043A64XRT area limitNY   
2044A64CM area baseNY   
2045A64CM area limitNY   
2046A64NM stack baseNY   
2047A64NM stack limitNY   
2048A64Heap area baseNY   
2049A64Heap area limitNY   
2050A64PCBX addressNY   
2051BSplit stack mode?NY   
2052I32DB DST numberNY   
2053I32CM stack DST numberNY   
2054A64DB pointerNY   
2055A64DL pointerNY   
2056I32Initial DLNY   
2057I32Initial QNY   
2058I32Number of XDSNY   
2059Dstsrec_typeList of XDSNN   
2060I32LSTT DST numberNY   
2061A64LSTT addressNY   
2062I32Number of open filesNY   
2063I32rec_typeOpen file numbersNN   
2064Fnamerec_typeOpen file namesNN   
2065Ufidrec_typeOpen file UFIDsNN   
2066I64rec_typeList of child PIDsNN   
2067A64PCB pointerNY   
2068I32Maximum allowed short mapped spaceNY   
2069I32Used short-mapped spaceNY   
2070I32General resource capabilitiesYY   
2071I32System code depthNY   
2072I32Critical code depthNY   
2073I32Number of CM errorsYY06-2006
2074I32AList of CM errorsYN-3276832767-2005
2075I32Last FOPEN errorYY032767-2007
2076I32Last KOPEN errorYY0255-2007
2077BCM aritraps enabled?NY   
2078I32CM aritrap handler plabelNY   
2079I32NM aritrap maskNY   
2080A64NM aritrap handler addressNY   
2081I32CM libtrap handler plabelNY   
2082A64NM libtrap handler addressNY   
2083I32CM systrap handler plabelNY   
2084I32Privileged level of NM systrapNY   
2085A64NM systrap handler addressNY   
2086I32UNSAT handler addressNY   
2087CA32UNSAT handler nameNY   
2088BDump armed?YY   
2089CA256Debug commandsYY   
2090BDebug armed?YY   
2091Longint_typeCPU time (ticks)NY   
2092Longint_typeCPU time (msecs)NY   
2093BSIR holder?NY   
2094I32JS KeyNY   
2095I32User and file access capabilitiesYY   
2096Longint_typeTime process on Ready QueueNY   
2105@64NM stack maximum SPNY   
2106BExecution ModeNY   
2107I32CM MaxdataNY   
2108I32CM SNY   
2109I32JDT DSTNY   
2110CA16Job nameYY   
2111CA16User nameNY   
2112CA16Group nameNY   
2113CA16Account nameNY   
2114I32Maximum account job priorityNY   
2115I32Account securityYY   
2116I32Group securityYY   
2117CA16Home groupNY   
2118I32Account local attributesYY   
2119I32User capabilitiesYY   
2120I32General resource capabilitiesYY   
2121BA96Allow maskYY   
2122@64Pathnames of open filesNN   
2123RECAPath Identifiers of open filesNY   
2125BFork ProcessNY   
2126I32UIDYY   
2127I32EUIDYY   
2128I32GIDYY   
2129I32EGIDYY   
2130U32CMASKYY   
2131RECProgram pathnameNY   
2132BBreak Request DoneNY   
2133I32Break Request CancelNY   
2134I32Break Request PendingNY   
2135RECList of sibling PIDsNY   
2136RECList of parent PIDsNY   
2142BInteractive?YY   
2143BEnvironment NilNY   
2144CA256Workgroup nameYY   
2145BArtificial workgroup memberNY   
2146BReturn natural workgroupYN   
2147I32Execution stateNY   
2148I32Fixed priorityYN032767 

 

Item Descriptions

The following table provides detailed descriptions of item numbers and corresponding items associated with process information.

Table 3-27 Process Information Item Descriptions

Item NumberItem Name (Data Type) Put; Verify; Description
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.)

2006Sibling 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.
2007Child 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.)
2008Child 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.
2009JSmain 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.)
2010JSmain 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.
2011PID 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.)
2012PIN 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.
2013PID 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.)
2014PIN 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.
2015Job/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

2016Scheduling 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.
2017Scheduling 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.
2018Degradable 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.
2019Priority (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
2020Reasons 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.
2021Post 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.
2022Process 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

2023Time 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.)
2024Time 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.)
2025Reason 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

2026Last 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.
2027First 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.
2028Any 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.
2029Total 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.
2030NM 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.
2031I/Os outstanding (I32) Put: No; Verify: Yes; Release 3.0
 Returns the total number of I/Os outstanding for this process.
2032CM I/Os outstanding (I32) Put: No; Verify: Yes; Release 3.0
 Returns the number of CM I/Os outstanding for this process.
2033Process 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)

2034Program 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.)
2035Program file number (I32) Put: No; Verify: Yes; Release 3.0
 Returns the HPFOPEN process local file number for the program file.
2036Entry pointer (@64) Put: No; Verify: Yes; Release 3.0
 Returns the address of the entry point for the program.
2037CM 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.
2038Info string passed? (B) Put: No; Verify: Yes; Release 3.0
 Returns true if an info string was passed when the program was loaded.
2039Info 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.
2040Parm (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.
2041Space 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.
2042XRT area base (@64) Put: No; Verify: Yes; Release 3.0
 Returns a pointer to the base of the XRT area.
2043XRT 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.
2044CM area base (@64) Put: No; Verify: Yes; Release 3.0
 Returns a pointer to the base of the CM area.
2045CM 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.
2046NM stack base (@64) Put: No; Verify: Yes; Release 3.0
 Returns a pointer to the base of NM Stack.
2047NM 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.
2048Heap area base (@64) Put: No; Verify: Yes; Release 3.0
 Returns a pointer to the base of the heap area.
2049Heap 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.
2050PCBX address (@64) Put: No; Verify: Yes; Release 3.0
 Returns the address of PCBX base.
2051Split 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.
2052DB 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.
2053CM 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.
2054DB (@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.
2055DL (@64) Put: No; Verify: Yes; Release 3.0
 Returns the address of DL. It points into the CM stack area.
2056Initial 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.
2057Initial 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.
2058Number of extra data segments (I32) Put: No; Verify: Yes; Release 3.0
 Returns the number of extra data segments allocated to the process.
2059List 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.)
2060LSTT DST number (I32) Put: No; Verify: Yes; Release 3.0
 Returns the DST number of the segment holding the logical segment transfer table.
2061LSTT 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.
2062Number 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.
2063File 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.)
2064MPE 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.)
2065UFIDs 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.)
2066Process 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.)
2067PCB pointer (@64) Put: No; Verify: Yes; Release 3.0
 Returns the PCB pointer.
2068Max. short mapped space allowed (I32) Put: No; Verify: Yes; Release 3.0
 Returns the maximum amount, in bytes, of short-mapped space allowed.
2069Short mapped space used (I32) Put: No; Verify: Yes; Release 3.0
 Returns the amount, in bytes, of virtual space used for short-mapped files.
2070General 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

2071System code depth (I32) Put: No; Verify: Yes; Release 3.0
 Returns the number of nested calls to enter system code.
2072Critical code depth (I32) Put: No; Verify: Yes; Release 3.0
 Returns the number of nested calls to enter critical code.
2073Number 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.
2074CM 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.
2075Last 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).
2076Last 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.
2077CM arithmetic trap enabled? (B) Put: No; Verify: Yes; Release 3.0
 Returns true if arithmetic traps in CM are enabled, and false otherwise.
2078CM 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.
2079NM 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.
2080NM 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.
2081CM 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.
2082NM 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.
2083CM 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.
2084NM system trap privileged level (I32) Put: No; Verify: Yes; Release 3.0
 Returns the privileged level at which the trap handler executes.
2085NM 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.
2086Unsatisfied 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.
2087Unsatisfied 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.
2088Dump 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.
2089DEBUG 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.
2090DEBUG 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.
2091CPU 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.)
2092CPU 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.)
2093Does 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.
2094JS 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.)
2095User 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

2096Time 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.)
2105NM 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.
2106Execution 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.
2107CM Maxdata (I32) Put: No; Verify: Yes; Release 4.0
 Returns the maximum CM stack area size in 16 bit words.
2108CM S (I32) Put: No; Verify: Yes; Release 4.0
 Returns the current CM top of stack in DB relative CM (16-bit) words.
2109JDT 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.
2111User 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
2122Pathnames 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.
2123Path 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
2125Fork Process (B) Put: No; Verify: Yes; Release 4.5
 Returns true if the process was created using the fork() function.
2126UID (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.
2127EUID - 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.
2128GID (I32) Put: Yes; Verify: Yes; Release 4.5
 Returns the process' real group ID. This POSIX attribute describes the group a process belongs to.
2129EGID - 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.
2130CMASK (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.
2131Program 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
2132Break 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.
2133Break 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.
2134Break 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.
2135List 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)
2136List 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)
2142Interactive? (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.
2143Environment 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.
2144Workgroup 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
2145Artificial Member? (B) Put: No; Verify: Yes
 Returns true if the specified process is an artificial member of its workgroup.
2146Return 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.
2147Execution 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.

2148Fixed 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.)

 

Feedback to webmaster