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

DSCBK

Prolog  

Control Block Contents  
   DSCBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


DSCBK Prolog

 NAME       : HCPDSCBK
 DESCRIPTION: Demand Scan Control Block
 DSECT      : DSCBK
 FUNCTION   :
              The Demand Scan Control Block (DSCBK) contains
              information about the Available List Demand Scan
              operation.  The DSCBK is persistent and some
              information is saved between Demand Scans.
 CREATED BY : Assembly at Entry Point HCPRSMSC.
 DELETED BY : None.

 

DSCBK Control Block Content


DSCBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      DSCBK          Demand Scan Control Block
0000    0 Signed       4 DSCWORD (0)    Demand Scan Status Word
0000    0 Bitstring    1 DSCPROG        Indicate Demand Scan Progress
          1... ....      DSCPASS1       X'80' Working on the first pass
          .1.. ....      DSCPASS2       X'40' Working on the second pass
          ..1. ....      DSCEMRGP       X'20' Working on EMERGENCY pass
          ...1 ....      DSCLTD         X'10' Working on a user from the
                                        Long-Term Dormant List
          .... 1...      DSCLTDHX       X'08' This scan ended on a user
                                        from the Long-Term Dormant List
          .... .1..      DSCDLSCN       X'04' Scanning the Dormant List
          .... ..1.      DSCTKALL       X'02' Took ALL possible frames
                                        from the Dormant List VMDBK base
                                        address space (except locked or
                                        reserved frames).
0001    1 Bitstring    1 DSCLKFLG       Contains only lock status and is
                                        cleared in RELLOCKS subroutine in
                                        module HCPALS.
          1... ....      DSCPTILK       X'80' Demand Scan owns the Page
                                        Table Lock (VMDPTIL) now.
          .1.. ....      DSCPTIL2       X'40' Indicate we obtained
                                        VMDPTIL in the INVAL routine (in
                                        HCPALS).
          ..1. ....      DSCSHDLK       X'20' Demand Scan owns the Shadow
                                        Table Lock (VMDSHDLK) now.
          ...1 ....      DSCDFRCT       X'10' Demand Scan has incremented
                                        the Deferred Work count.
          .... 1...      DSCSHFRM       X'08' Stealing shared frames,
                                        which means we must ALWAYS use
                                        IPTE.
          .... .1..      DSCPTILS       X'04' Note that VMDPTIL was
                                        obtained SHARED (verses
                                        EXCLUSIVE).
0002    2 Bitstring    1 DSCTERM        Flags to tell the Steal Task how
                                        to handle RABIs, Unreferenced
                                        frames, and end-of-scan.
          1... ....      DSCRBINX       X'80' Do NOT move RABIs to XSTORE
          .1.. ....      DSCUNREF       X'40' Take UNREFERENCED frames
                                        only
          ..1. ....      DSCPURGE       X'20' Perform a PTLB (Purge
                                        Translate Look-Aside Buffers).
          .... ...1      DSCAGAIN       X'01' Steal should re-invoke
                                        itself at the end of the current
                                        cycle.
          .... ....      DSCDONE        X'00' Do NOT try to restart
                                        Demand Scan at the end of the
                                        current cycle.
0003    3 Bitstring    1 DSCXSTFL       XSTORE management flags
          1... ....      DSCXSTOR       X'80' Try paging out to XSTORE
                                        before sending them to DASD
          .... ....      DSCNOXST       X'00' Page out directly to DASD
     The primary Demand Scan may be able to satisfy the system requirement
     without performing every possible scan. In order to drain frames from
     every possible source, a "Round Robin" algorithm is used to select a
     different scan routine each time Demand Scan runs. The pointer DSCELEM
     holds the address of the next scan element (a structure defined in
     HCPALD). The next scan will be performed by the routine associated with
     this scan element.
0004    4 Signed       4 DSCCYCL        Count the number of scan cycles
0008    8 Address      4 DSCELEM        Address of next scan element (see
                                        HCPALD SCANELEM structure)
     These fields apply to the current Demand Scan.
000C   12 Signed       4 DSCTOTAL       Total pages stolen by the current
                                        Demand Scan process
0010   16 Dbl-Word     8 DSCREQD (0)    Frames needed by the system
0010   16 Signed       4 DSCREQD0       Frames needed from BELOW 2Gb
0014   20 Signed       4 DSCREQDG       Frames needed from 2G and ABOVE
0018   24 Dbl-Word     8 DSCTRGT (0)    Target frame limit (Low/High)
0018   24 Signed       4 DSCTRGT0       Target frames from BELOW 2Gb
001C   28 Signed       4 DSCTRGTG       Target frames from 2Gb and ABOVE
0020   32 Dbl-Word     8 DSCFRMS (0)    Frame counters (Low/High)
0020   32 Signed       4 DSCFRMS0       Frames stolen from BELOW 2Gb
0024   36 Signed       4 DSCFRMSG       Frames stolen from 2Gb and ABOVE
0028   40 Dbl-Word     8 DSCSTLW (0)    Steal Write counters (Low/High)
0028   40 Signed       4 DSCSTLW0       Steal Write frames BELOW 2Gb
002C   44 Signed       4 DSCSTLWG       Steal Write frames 2Gb and ABOVE
     These fields are primarily for diagnostic purposes. They should not
     affect the operation of Demand Scan.
0030   48 Bitstring    1 DSCDEBUG       Debug Flags
          1... ....      DSCACTIV       X'80' Demand Scan is ACTIVE
0031   49 Bitstring    3 *              reserved
0034   52 Signed       4 DSCCOUNT       Count the number of times we
                                        entered Demand Scan (HCPALDSC)
0038   56 Bitstring    1 DSCALSCN       Track our progress in HCPALSCN
0039   57 Bitstring    1 DSCALSCS       Track our progress in HCPALSCS
003A   58 Bitstring    1 DSCALSCD       Track our progress in HCPALSCD
003B   59 Bitstring    5 *              Reserved
0040   64 Address      4 DSCWHOCM       Last caller of CALCMORE routine
0044   68 Address      4 DSCWHOEX       Previous HCPCALL before CALCMORE
0048   72 Bitstring    1 DSC$END (0)    End of DSCBK
          00000048       DSCBKLN        *-DSCBK DSCBK length (in bytes)
          00000009       DSCBKSZ        (*-DSCBK+7)/8 DSCBK size (in
                                        doublewords)

 

DSCBK Storage Layout

          
*** DSCBK - Demand Scan Control Block
*
*     +------+------+------+------+---------------------------+
*   0 |:PROG |:LKFLG|:TERM |:XSTFL|         DSCCYCL           |
*     +------+------+------+------+---------------------------+
*   8 |         DSCELEM           |         DSCTOTAL          |
*     +---------------------------+---------------------------+
*  10 |         DSCREQD0          |         DSCREQDG          |
*     +---------------------------+---------------------------+
*  18 |         DSCTRGT0          |         DSCTRGTG          |
*     +---------------------------+---------------------------+
*  20 |         DSCFRMS0          |         DSCFRMSG          |
*     +---------------------------+---------------------------+
*  28 |         DSCSTLW0          |         DSCSTLWG          |
*     +------+--------------------+---------------------------+
*  30 |:DEBUG|////////////////////|         DSCCOUNT          |
*     +------+------+------+------+---------------------------+
*  38 |:ALSCN|:ALSCS|:ALSCD|//////////////////////////////////|
*     +------+------+------+------+---------------------------+
*  40 |         DSCWHOCM          |         DSCWHOEX          |
*     +---------------------------+---------------------------+
*
*** DSCBK - Demand Scan Control Block

 

DSCBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
DSC$END        0048
DSCACTIV       0030 80
DSCAGAIN       0002 01
DSCALSCD       003A
DSCALSCN       0038
DSCALSCS       0039
DSCBKLN        0048 00000048
DSCBKSZ        0048 00000009
DSCCOUNT       0034
DSCCYCL        0004
DSCDEBUG       0030
DSCDFRCT       0001 10
DSCDLSCN       0000 04
DSCDONE        0002 00
DSCELEM        0008
DSCEMRGP       0000 20
DSCFRMS        0020
DSCFRMSG       0024
DSCFRMS0       0020
DSCLKFLG       0001
DSCLTD         0000 10
DSCLTDHX       0000 08
DSCNOXST       0003 00
DSCPASS1       0000 80
DSCPASS2       0000 40
DSCPROG        0000
DSCPTILK       0001 80
DSCPTILS       0001 04
DSCPTIL2       0001 40
DSCPURGE       0002 20
DSCRBINX       0002 80
DSCREQD        0010
DSCREQDG       0014
DSCREQD0       0010
DSCSHDLK       0001 20
DSCSHFRM       0001 08
DSCSTLW        0028
DSCSTLWG       002C
DSCSTLW0       0028
DSCTERM        0002
DSCTKALL       0000 02
DSCTOTAL       000C
DSCTRGT        0018
DSCTRGTG       001C
DSCTRGT0       0018
DSCUNREF       0002 40
DSCWHOCM       0040
DSCWHOEX       0044
DSCWORD        0000
DSCXSTFL       0003
DSCXSTOR       0003 80

This information is based on z/VM V4R1.0.
Last updated on 7 Jun 2001 at 11:10:30 EDT.
Copyright IBM Corporation, 1990, 2001