Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
PXIBK
Control Block Contents
PXIBK DSECT
Cross Reference (Contains links to field and bit definitions)
PXIBK Prolog
NAME : HCPPXIBK DESCRIPTION: POSIX IDs Block DSECT : PXIBK FUNCTION : Contain the POSIX IDs associated with a process. LOCATED BY : PXINEXT SYSPXIBK VMDPXIBK CREATED BY : HCPPXCBS HCPPXCCR HCPPXDLN DELETED BY : HCPPXCRL SERIALIZED : The VMDPXILK serializes access to the PXIBK chain, and the PXILOCK serializes access to the data in a PXIBK. RELOCATION CONSIDERATIONS : This control block is relocated as part of a live guest relocation (LGR). The bits and fields that need to be relocated are defined in the corresponding LGRPXIBK COPY file. Whenever changes are made to this control block, consideration must be given to any effects these changes will have on a relocation. If any new fields or bits are defined, they may need to be relocated. If existing bits or fields are changed, corresponding modifications may be required in the LGR version of this control block. Consider also the effects of these changes on a relocation involving a back-level release of CP. COMMENTS : This block contains the POSIX user IDs (UIDs) and POSIX group IDs (GIDs), and it points to the supplementary group IDs (SGIDs). These are initially set or derived from the "POSIX database". Since this block contains most of the environmental information CP has about a POSIX process, it is often referred to as a "process context". See the HCPPXC module prolog for more serialization and data structure details. Any time this block is included in a module, the HCPPSGBK must also be included, because the PXIBK references fields defined in the PSGBK.
PXIBK Control Block Content
PXIBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure PXIBK POSIX IDs Block 0000 0 Dbl-Word 8 PXILOCK (3) PXIBK lockword. It is used to serialize access to the PXIBK 0018 24 Address 4 PXINEXT Address of next PXIBK on the chain of PXIBKs owned by this virtual configuration 001C 28 Signed 4 PXIPID POSIX process ID (PID) for the process whose IDs are contained here. Only valid in non-creation PXIBKs. 0020 32 Address 4 PXIOWNER Address of the base VMDBK of the configuration that owns this POSIX process 0024 36 Bitstring 1 PXIFLAG Option flags: 1... .... PXICREAT X'80' PXICREAT Indicate this is the creation PXIBK (it is either an original or an alternate creation PXIBK) .1.. .... PXIWPSG X'40' PXIWPSG Indicates that this PXIBK contains a PSGBK at PXISGINF ..1. .... PXIRELC0 X'20' PXIRELC0 Indicates that this PXIBK can be released as soon as PSGPXICT in the imbedded PSGBK becomes 0 0025 37 Bitstring 1 * (3) Reserved for IBM use 0028 40 Bitstring 24 PXIIDS (0) ALL IDs (UIDs and GIDs) Notes : the subfields in PXIUIDS and PXIGIDS must be kept in the same order. 0028 40 Bitstring 12 PXIUIDS (0) All UIDs 0028 40 Signed 4 PXIRUID Real UID 002C 44 Signed 4 PXIEUID Effective UID 0030 48 Signed 4 PXISSUID Saved set-UID Notes : the subfields in PXIUIDS and PXIGIDS must be kept in the same order. 0034 52 Bitstring 12 PXIGIDS (0) All GIDs (except SGIDs) 0034 52 Signed 4 PXIRGID Real GID 0038 56 Signed 4 PXIEGID Effective GID 003C 60 Signed 4 PXISSGID Saved set-GID 0040 64 Address 4 PXIORGCR Pointer to the original creation PXIBK. Only meaningful in the current creation PXIBK. 0044 68 Address 4 PXIPSGBK Pointer to this process's supplementary GID information (PSGBK) 00000048 PXIHDRLN (*-PXIBK) Size of fixed-length portion of the PXIBK, in bytes 0048 72 Signed 4 PXISGINF (0) Supplementary GID info area. It only exists in the creation PXIBK. It is pointed to by PXIPSGBK of all other PXIBKs in a vConfig. It is mapped by HCPPSGBK. **** THE VALUE OF NGMAXMAX FOR DATAMAP IS 125 00000200 PXIMAXLN (PSGHDRLN+(NGMAXMAX*L'PSGSGIDS)) Maximum length of PXISGINF area, in bytes 00000248 PXIMAXBS (PXIHDRLN+PXIMAXLN) Maximum PXIBK size, in bytes 00000049 PXIMAXDS (PXIMAXBS+7)/8 Maximum PXIBK size, in doublewords
PXIBK Storage Layout
*** PXIBK - POSIX IDs Block * * +-------------------------------------------------------+ * 0 | | * = PXILOCK = * | | * +---------------------------+---------------------------+ * 18 | PXINEXT | PXIPID | * +---------------------------+------+--------------------+ * 20 | PXIOWNER |:FLAG |////////////////////| * +---------------------------+------+--------------------+ * 28 | PXIRUID | PXIEUID | * +---------------------------+---------------------------+ * 30 | PXISSUID | PXIRGID | * +---------------------------+---------------------------+ * 38 | PXIEGID | PXISSGID | * +---------------------------+---------------------------+ * 40 | PXIORGCR | PXIPSGBK | * +---------------------------+---------------------------+ * *** PXIBK - POSIX IDs Block
PXIBK Cross Reference
Symbol Dspl Value -------------- ---- ----- PXICREAT 0024 80 PXIEGID 0038 PXIEUID 002C PXIFLAG 0024 PXIGIDS 0034 PXIHDRLN 0044 00000048 PXIIDS 0028 PXILOCK 0000 PXIMAXBS 0048 00000248 PXIMAXDS 0048 00000049 PXIMAXLN 0048 00000200 PXINEXT 0018 PXIORGCR 0040 PXIOWNER 0020 PXIPID 001C PXIPSGBK 0044 PXIRELC0 0024 20 PXIRGID 0034 PXIRUID 0028 PXISGINF 0048 PXISSGID 003C PXISSUID 0030 PXIUIDS 0028 PXIWPSG 0024 40
Copyright IBM Corporation, 1990, 2011