next up previous contents index
Next: MZEBRA - initialize Up: Memory management Previous: Memory management

ZEBRA bank format

    LQ(L-NL-NIO-1) IOcb/NOFF    IOcb: I/O control byte (16 bits)
                                NOFF = NIO + NL + 12 (16 bits)

    LQ(L-NL-NIO)   IOW (1)      first extra I/O descriptor word (if any)
                   ...
    LQ(L-NL-1)     IOW (NIO)    last  extra I/O descriptor word

    LQ(L-NL)       link NL      last reference link
                   ...
    LQ(L-NS-1)     link NS+1    first reference link
    LQ(L-NS)       link NS      last structural link
                   ...
    LQ(L-1)        link 1       first structural link

    LQ(L)          next         adr of the next bank in the linear str.
    LQ(L+1)        up           adr of the supporting bank
    LQ(L+2)        origin       adr of the supporting link

    IQ(L-5)        IDN          numeric   bank ID
    IQ(L-4)        IDH          Hollerith bank ID  (4 characters)
    IQ(L-3)        NL           number of links
    IQ(L-2)        NS           number of structural links
    IQ(L-1)        ND           number of data words

    IQ(L)          status       bits  1-18 user
                                     19-32 system   25: drop bit
                                     19-22 NIO      26: mark bit
    IQ(L+1)        first data word
                   ...
    IQ(L+ND)       last  data word

            This layout requires:

                  DIMENSION    LQ(999), IQ(999), Q(999)
                  EQUIVALENCE (LQ(9),IQ(1),Q(1))


 ---- Format of a short dead region ----

    word 1:  bits  1-16: NW, # of words, with  0 < NW < 12
                   17-24: NW again for redundancy
                      25: drop-bit set
                  26-end: zero
     2->NW:  dead words, content irrelevant


Janne Saarela
Mon May 15 08:34:47 METDST 1995