Annotation of xinu/h/q.h, revision 1.1

1.1     ! root        1: /* q.h - firstid, firstkey, isempty, lastkey, nonempty */
        !             2: 
        !             3: /* q structure declarations, constants, and inline procedures          */
        !             4: 
        !             5: #ifndef        NQENT
        !             6: #define        NQENT           NPROC + NSEM + NSEM + 4 /* for ready & sleep    */
        !             7:                                                /* & preemption         */
        !             8: #endif
        !             9: 
        !            10: struct qent    {               /* one for each process plus two for    */
        !            11:                                /* each list                            */
        !            12:        short   qkey;           /* key on which the queue is ordered    */
        !            13:        short   qnext;          /* pointer to next process or tail      */
        !            14:        short   qprev;          /* pointer to previous process or head  */
        !            15:        };
        !            16: 
        !            17: extern struct  qent q[];
        !            18: extern int     nextqueue;
        !            19: 
        !            20: /* inline list manipulation procedures */
        !            21: 
        !            22: #define        isempty(list)   (q[(list)].qnext >= NPROC)
        !            23: #define        nonempty(list)  (q[(list)].qnext < NPROC)
        !            24: #define        firstkey(list)  (q[q[(list)].qnext].qkey)
        !            25: #define lastkey(tail)  (q[q[(tail)].qprev].qkey)
        !            26: #define firstid(list)  (q[(list)].qnext)
        !            27: 
        !            28: #define        EMPTY   -1              /* equivalent of null pointer           */

unix.superglobalmegacorp.com

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