Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.

LNGBK

Prolog  

Control Block Contents  
   LNGBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


LNGBK Prolog

 NAME       : HCPLNGBK
 DESCRIPTION: Language Information Block
 COPYRIGHT -
              THIS MODULE IS "RESTRICTED MATERIALS OF IBM"
              5654-030 (C) COPYRIGHT IBM CORP. - 1988, 1995
              LICENSED MATERIALS - PROPERTY OF IBM
              SEE COPYRIGHT INSTRUCTIONS, G120-2083
 DSECT      : LNGBK
 FUNCTION   : Contains information about the message repository.
 LOCATED BY : SYSLANG   LNGBK chain anchor
              VMDLANG   Pointer to the LNGBK
              LNGNEXT   Forward pointer
              LNGBACK   Backward pointer
 CREATED BY : HCPNLS    At initialization for the default
              MESSAGE repository (HCPMES).
              HCPNLS    When the first user is connected
              to a message repository.
 DELETED BY : HCPNLS    When the user count of the message repository
              is zero the associated LNGBK is deleted.
 REFERENCES : HCPICRBK - Indirect Call Request Block
 SERIALIZED :
              Created and destroyed only when the SYSLNGLK lock
              is held exclusive.
              Searched only when the LNGLOCK lock is held shared.

 

LNGBK Control Block Content


LNGBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      LNGBK          Language Information Block
0000    0 Address      4 LNGNEXT        Address of next LNGBK
0004    4 Address      4 LNGBACK        Address of previous LNGBK Notes :
                                        If there is only one LNGBK, then
                                        this field will have the same
                                        address as "LNGNEXT" in it.
0008    8 Dbl-Word     8 LNGLOCK (3)    Purge LNGBK lock. If both the
                                        LNGBK queue lock (SYSLNGBK), and
                                        the LNGBK lock (LNGLOCK), must be
                                        acquired, one must acquire them
                                        in this order: SYSLNGBK, then
                                        LNGLOCK
0020   32 Signed       2 LNGPAGE        Total number of repository pages
0022   34 Bitstring    1 LNGFLAG        Language flag byte
          1... ....      LNGDBCS        X'80' Double-byte character set.
                                        Notes : LNGDBCS is originally set
                                        by the compiler if the language
                                        uses the double-byte character
                                        set.
          .... ..1.      LNGPAGBL       X'02' The entry point name
                                        LNGEPNAM is in CP pageable
                                        storage.
          .... ...1      LNGSKIP        X'01' For HCPERM: skip this LNGBK
                                        at the moment because it is being
                                        manipulated, therefore is not
                                        complete, and we don't want to
                                        get into a deadly embrace of
                                        multiple acquisitions of the
                                        LNGLOCK.
0023   35 Bitstring    1 *              Reserved
0024   36 Address      4 LNGIMGBK       Address of imgbk
0028   40 Character    5 LNGLANG        Language identifier
002D   45 Character    3 LNGCOMP        Component identifier
0030   48 Signed       4 LNGCNT         User count
0034   52 Address      4 LNGLBX         Address of LBXBK
0038   56 Address      4 *              Reserved
003C   60 Address      4 LNGEPADR       Virtual address of LNGEPNAM. For
                                        its real address, use the page
                                        pointers in the LBXBK.
0040   64 Bitstring   16 LNGICR (0)     The ICRBK fields
0040   64 Character    8 LNGEPNAM       Associated epname
0048   72 Address      4 LNGADDRL       Address of ICLBK
004C   76 Bitstring    1 LNGATTR        Attributes of epname
          .1.. ....      ICRRLONG       X'40' Caller is LONGREG
          ..1. ....      ICRELONG       X'20' Callee is LONGREG
          ...1 ....      ICRESTA        X'10' callee uses static savearea
          .... 1...      ICRRMP         X'08' caller MP capable
          .... .1..      ICRERES        X'04' callee Resident
          .... ..1.      ICREMP         X'02' callee MP capable
          .... ...1      ICRTRC         X'01' issue TRACE instruction
004D   77 Bitstring    1 LNGF1          Attributes
          .... ...1      ICRNLOSS       X'01' HCPCALL TYPE=INDIRECT must
                                        not result in loss of control
004E   78 Bitstring    1 * (2)          Reserved
0050   80 Dbl-Word     8 LNGUSRD1       Reserved for non-IBM use
0058   88 Dbl-Word     8 LNGUSRD2       Reserved for non-IBM use
0060   96 Signed       4 LNGUSRF1       Reserved for non-IBM use
0064  100 Signed       4 LNGUSRF2       Reserved for non-IBM use
0068  104 Signed       2 LNGUSRH1       Reserved for non-IBM use
006A  106 Signed       2 LNGUSRH2       Reserved for non-IBM use
006C  108 Bitstring    1 LNGUSRX1       Reserved for non-IBM use
006D  109 Bitstring    1 LNGUSRX2       Reserved for non-IBM use
006E  110 Bitstring    1 LNGUSRX3       Reserved for non-IBM use
006F  111 Bitstring    1 LNGUSRX4       Reserved for non-IBM use
          0000000E       LNGSIZE        (*-LNGBK+7)/8 Size of the LNGBK

 

LNGBK Storage Layout

          
*** LNGBK - Language Information Block
*
*     +---------------------------+---------------------------+
*   0 |         LNGNEXT           |         LNGBACK           |
*     +---------------------------+---------------------------+
*   8 |                                                       |
*     =                       LNGLOCK                         =
*     |                                                       |
*     +-------------+------+------+---------------------------+
*  20 |  LNGPAGE    |:FLAG |//////|         LNGIMGBK          |
*     +-------------+------+------+------+--------------------+
*  28 |             LNGLANG              |      LNGCOMP       |
*     +---------------------------+------+--------------------+
*  30 |          LNGCNT           |          LNGLBX           |
*     +---------------------------+---------------------------+
*  38 |///////////////////////////|         LNGEPADR          |
*     +---------------------------+---------------------------+
*  40 |                       LNGEPNAM                        |
*     +---------------------------+------+------+-------------+
*  48 |         LNGADDRL          |:ATTR |LNGF1 |/////////////|
*     +---------------------------+------+------+-------------+
*  50 |                       LNGUSRD1                        |
*     +-------------------------------------------------------+
*  58 |                       LNGUSRD2                        |
*     +---------------------------+---------------------------+
*  60 |         LNGUSRF1          |         LNGUSRF2          |
*     +-------------+-------------+------+------+------+------+
*  68 |  LNGUSRH1   |  LNGUSRH2   |:USRX1|:USRX2|:USRX3|:USRX4|
*     +-------------+-------------+------+------+------+------+
*  70
*
*** LNGBK - Language Information Block

 

LNGBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
ICRELONG       004C 20
ICREMP         004C 02
ICRERES        004C 04
ICRESTA        004C 10
ICRNLOSS       004D 01
ICRRLONG       004C 40
ICRRMP         004C 08
ICRTRC         004C 01
LNGADDRL       0048
LNGATTR        004C
LNGBACK        0004
LNGCNT         0030
LNGCOMP        002D
LNGDBCS        0022 80
LNGEPADR       003C
LNGEPNAM       0040
LNGFLAG        0022
LNGF1          004D
LNGICR         0040
LNGIMGBK       0024
LNGLANG        0028
LNGLBX         0034
LNGLOCK        0008
LNGNEXT        0000
LNGPAGBL       0022 02
LNGPAGE        0020
LNGSIZE        006F 0000000E
LNGSKIP        0022 01
LNGUSRD1       0050
LNGUSRD2       0058
LNGUSRF1       0060
LNGUSRF2       0064
LNGUSRH1       0068
LNGUSRH2       006A
LNGUSRX1       006C
LNGUSRX2       006D
LNGUSRX3       006E
LNGUSRX4       006F

This information is based on z/VM V4R3.0. Last updated on 1 May 2002 at 09:11:13 EDT.
Copyright IBM Corporation, 1990, 2002