Materialize Process Attributes (MATPRATR)


Op Code (Hex) Operand 1 Operand 2 Operand 3
0333 Receiver Process control space Materialization options
Operand 1: Space pointer.

Operand 2: System pointer or null.

Operand 3: Character(1) scalar.

Bound program access

Built-in number for MATPRATR is 65. MATPRATR ( receiver : address process_control_space : address of system pointer OR null operand materialization_options : address )

Warning

The following information is subject to change from release to release. Use it with caution and be prepared to adjust for changes with each new release.

Description

The instruction causes either one specific attribute or all the attributes of the designated process to be materialized.

Operand 1 specifies a space that is to receive the materialized attribute values. The space pointer specified in operand 1 must address a 16-byte aligned area.

Operand 2 identifies the process control space associated with the process whose attributes are to be materialized. If operand 2 is NULL, the attributes being materialized will be those associated with the thread that issued the instruction. Otherwise, the attributes being materialized will be those associated with the initial thread of the identified process. If process attributes are being materialized by a thread in another process, the thread must be contained in the process that initiated the subject process or the thread must have process control special authorization defined in its user profile or in a currently adopted user profile.

Operand 3 specifies which process attribute is to be materialized.

A summary of the allowable hex values for operand 3 follows.

Table 1. Materialize Process Attributes Scope

Option on Materialize Process Attributes Page Attribute Scope
Valid Process Control Space pointer Null Operand
00 - Entire PDT reference #1 Process and initial thread Process and issuing thread
01 - Process type reference #1 Process Process
02 - Instruction wait access state control reference #1 Process Process
03 - Time slice end access state control reference #1 Process Process
04 - Time slice event option reference #1 Process Process
06 - Initiation phase program option reference #1 Process Process
07 - Problem phase program option reference #1 Process Process
08 - Termination phase program option reference #1 Process Process
09 - Process default exception handler option reference #1 Process Process
0A - Name resolution list option reference #1 Initial thread Issuing thread
0B - Process access group option reference #1 Process Process
0C - Signal event control mask reference #2 Process Process
0D - Number of event monitors reference #3 Process Process
0E - Process Priority reference #4 Process Process
0F - Main storage pool ID reference #5 Initial thread Issuing thread
10 - Maximum temporary auxiliary storage allowed reference #6 Process Process
11 - Time slice interval reference #7 Process Process
12 - Default time-out interval reference #8 Process Process
13 - Maximum processor time allowed reference #9 Process Process
14 - Multi-programming level class ID reference #10 Initial thread Issuing thread
15 - Modification control indicators reference #11 Process Process
16 - User profile pointer reference #12 Initial thread Issuing thread
17 - Process Communications Object (PCO) pointer reference #13 Process Process
18 - Name resolution list pointer reference #14 Process Process
19 - Initiation phase program pointer reference #15 Process Process
1A - Termination phase program pointer reference #16 Process Process
1B - Problem phase program pointer reference #17 Process Process
1C - Process default exception handler program pointer reference #18 Process Process
1F - Process access group pointer reference #19 Process Process
20 - Process status indicators reference #20 Process and initial thread Process and issuing thread
21 - Process resource usage attributes reference #21 Process Process
22 - Obsolete reference #22 Not applicable Not applicable
23 - Thread performance attributes reference #23 Initial thread Issuing thread
24 - Execution status attributes reference #24 Process and initial thread Process and issuing thread
25 - Process control space pointer reference #25 Process Process
26 - Group profile list reference #26 Initial thread Issuing thread
27 - Group profile list option reference #27 Initial thread Issuing thread
28 - Process category reference #28 Process Process
29 - Queue space object pointer reference #29 Process Process
2A - Secondary process communications object (PPCO) pointer reference #30 Process Process
2B - Signal enablement option reference #31 Process Process
2C - Process signal controls reference #32 Process and initial thread Process and issuing thread
2D - Lock statistics reference #33 Initial thread Issuing thread

The value of attribute scope is as follows:

Attribute Scope

Meaning

Process

The attribute is maintained as the process level resource. The value materialized has the same value for all threads within the process.

Initial thread

The attribute is maintained as a thread level resource. The value materialized is only applicable to the initial thread within the process.

Issuing thread

The attribute is maintained as a thread level resource. The value materialized is only applicable to the thread within the process that is being materialized.

Process and initial thread

The attribute being materialized is derived from values maintained at the process level and the initial thread within the process.

Process and issuing thread

The attribute being materialized is derived from values maintained at the process level and the issuing thread within the process.

The materialization template has the following general format when a scalar attribute is materialized:

Offset
Dec Hex
Field Name
Data Type and Length
0 0
Materialization size specification
Char(8)
0 0
Number of bytes provided for materialization
Bin(4)
4 4
Number of bytes available for materialization
Bin(4)
8 8
Process scalar attributes
Char(*)
* *
--- End ---

The materialization template has the following general format when a pointer attribute is materialized:

Offset
Dec Hex
Field Name
Data Type and Length
0 0
Materialization size specification
Char(8)
0 0
Number of bytes provided for materialization
Bin(4)
4 4
Number of bytes available for materialization
Bin(4)
8 8
Reserved (binary 0)
Char(8)
16 10
Process pointer attribute
System pointer or Space pointer
32 20
--- End ---

(Ref #1.)

The following attributes require materialization sizes of varying lengths. The attributes to be materialized and their operand 3 materialization option values follow:

The resource management attributes and data types are as follows:

The process pointer attributes which may be materialized are the following:

The following attributes require materialization sizes of varying lengths. The attributes to be materialized and their operand 3 materialization option values follow.

Authorization Required

Lock Enforcement

Exceptions

06 Addressing

08 Argument/Parameter

0A Authorization

10 Damage Encountered

1A Lock State

1C Machine-Dependent

20 Machine Support

22 Object Access

24 Pointer Specification

28 Process/Thread State

2E Resource Control Limit

32 Scalar Specification

36 Space Management

38 Template Specification

44 Protection Violation