Annotation of researchv9/jerq/sgs/inc/sdpsrc/hd/struct.h, revision 1.1

1.1     ! root        1: /*
        !             2:  * static char ID_strcth[] = "@(#) struct.h: 1.1 1/7/82";
        !             3:  */
        !             4: 
        !             5: /*
        !             6:  * Each manager keeps track of information relevant to a particular
        !             7:  * frame. There is one manager for each frame.
        !             8:  *
        !             9:  *     forward, backward: link the managers into a doubly-linked list of
        !            10:  *                        available (e.g., free) page frames
        !            11:  *     frame_pntr:        the address of the start of the
        !            12:  *                        associated frame.
        !            13:  *
        !            14:  * These three fields are initialized by function sdpinit(), and do
        !            15:  * not change.
        !            16:  *
        !            17:  *     page_id:    the itemid of the start of the page
        !            18:  *                 which resides in the associated frame.
        !            19:  *     ref_chng:   a flag which indicates whether or not
        !            20:  *                 the page which resides in the associated frame
        !            21:  *                 has been changed.
        !            22:  *     lock_count: the number of lock calls made on items on the resident
        !            23:  *                 page without a corresponding unlock call being issued
        !            24:  *     partition:  the number of the page-frame partition
        !            25:  *                 to which this manager belongs
        !            26:  *
        !            27:  * The value of these last three members is transient.
        !            28:  */
        !            29: 
        !            30: struct frame_manager {
        !            31:        long    page_id;        /* itemid to start of resident page     */
        !            32:        int     lock_count;     /* number of locks without matching 
        !            33:                                        unlocks                         */
        !            34:        int     forward;        /* forward link to next manager         */
        !            35:        int     backward;       /* backward link to previous manager    */
        !            36:        int     ref_chng;       /* reference/change flag                */
        !            37:        int     partition;      /* page frame partition                 */
        !            38:        char   *frame_pntr;     /* address of associated frame          */
        !            39:        };
        !            40: 
        !            41: typedef struct frame_manager MANAGER;
        !            42: /*eject*/
        !            43: /*
        !            44:  * A structure header_buffer exists for each open address space.
        !            45:  * Each structure contains information which descirbe the status
        !            46:  * of the associated address space.
        !            47:  */
        !            48: 
        !            49: struct header_buffer {
        !            50:        long    maxpage;        /* largest page number allocated        */
        !            51:        long    curpage;        /* page number of current page          */
        !            52:        int     curoffset;      /* offset into current page             */
        !            53:        int     numbfiles;      /* number of files composing space      */
        !            54:        long    filesize[MAXFILES];     /* size (in pages) of files     */
        !            55:        int     filedes[MAXFILES];      /* file descriptors of files    */
        !            56:        };
        !            57: 
        !            58: typedef struct header_buffer HEADER;

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.