Annotation of lucent/sys/src/9/dat.h, revision 1.1.1.1

1.1       root        1: typedef struct Conf    Conf;
                      2: typedef struct FFrame  FFrame;
                      3: typedef struct FPsave  FPsave;
                      4: typedef struct Label   Label;
                      5: typedef struct Lock    Lock;
                      6: typedef struct Mach    Mach;
                      7: typedef struct Page    Page;
                      8: typedef struct PMMU    PMMU;
                      9: typedef struct Portpage        Portpage;
                     10: typedef struct Ureg    Ureg;
                     11: typedef struct User    User;
                     12: 
                     13: #define        MACHP(n)        (n==0? &mach0 : *(Mach**)0)
                     14: 
                     15: extern Mach    mach0;
                     16: extern  void   (*kprofp)(ulong);
                     17: 
                     18: /*
                     19:  *  parameters for sysproc.c
                     20:  */
                     21: #define AOUT_MAGIC     A_MAGIC
                     22: 
                     23: struct Lock
                     24: {
                     25:        char    key;
                     26:        ulong   pc;
                     27:        ulong   sr;
                     28: };
                     29: 
                     30: struct Label
                     31: {
                     32:        ulong   sp;
                     33:        ulong   pc;
                     34:        ushort  sr;
                     35: };
                     36: 
                     37: /*
                     38:  * floating point registers
                     39:  */
                     40: enum
                     41: {
                     42:        FPinit,
                     43:        FPactive,
                     44:        FPdirty,
                     45: };
                     46: 
                     47: struct FPsave
                     48: {
                     49:        uchar   type;
                     50:        uchar   size;
                     51:        short   reserved;
                     52:        char    junk[212];      /* 68881: sizes 24, 180; 68882: 56, 212 */
                     53:        /* this offset known in db */
                     54:        union{
                     55:        char    reg[3*4+8*12];
                     56:        struct{
                     57:                ulong   fpcr;
                     58:                ulong   fpsr;
                     59:                ulong   fpiar;
                     60:                struct{
                     61:                        ulong   d[3];
                     62:                }dreg[8];
                     63:        };
                     64:        };
                     65: };
                     66: 
                     67: struct Conf
                     68: {
                     69:        int     nmach;          /* processors */
                     70:        int     nproc;          /* processes */
                     71:        int     monitor;        /* has display */
                     72:        ulong   npage0;         /* total physical pages of memory, bank 0 */
                     73:        ulong   npage1;         /* total physical pages of memory, bank 1 */
                     74:        ulong   npage;
                     75:        ulong   base0;          /* base of bank 0 */
                     76:        ulong   base1;          /* base of bank 1 */
                     77:        ulong   upages;         /* user page pool */
                     78:        ulong   nimage;         /* number of page cache image headers */
                     79:        ulong   nswap;          /* number of swap blocks */
                     80:        int     copymode;       /* 0 is copy on write, 1 is copy on reference */
                     81:        int     portispaged;    /*

unix.superglobalmegacorp.com

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