|
|
Plan 9 NeXT
typedef struct Conf Conf;
typedef struct FFrame FFrame;
typedef struct FPsave FPsave;
typedef struct Label Label;
typedef struct Lock Lock;
typedef struct Mach Mach;
typedef struct Page Page;
typedef struct PMMU PMMU;
typedef struct Portpage Portpage;
typedef struct Ureg Ureg;
typedef struct User User;
#define MACHP(n) (n==0? &mach0 : *(Mach**)0)
extern Mach mach0;
extern void (*kprofp)(ulong);
/*
* parameters for sysproc.c
*/
#define AOUT_MAGIC A_MAGIC
struct Lock
{
char key;
ulong pc;
ulong sr;
};
struct Label
{
ulong sp;
ulong pc;
ushort sr;
};
/*
* floating point registers
*/
enum
{
FPinit,
FPactive,
FPdirty,
};
struct FPsave
{
uchar type;
uchar size;
short reserved;
char junk[212]; /* 68881: sizes 24, 180; 68882: 56, 212 */
/* this offset known in db */
union{
char reg[3*4+8*12];
struct{
ulong fpcr;
ulong fpsr;
ulong fpiar;
struct{
ulong d[3];
}dreg[8];
};
};
};
struct Conf
{
int nmach; /* processors */
int nproc; /* processes */
int monitor; /* has display */
ulong npage0; /* total physical pages of memory, bank 0 */
ulong npage1; /* total physical pages of memory, bank 1 */
ulong npage;
ulong base0; /* base of bank 0 */
ulong base1; /* base of bank 1 */
ulong upages; /* user page pool */
ulong nimage; /* number of page cache image headers */
ulong nswap; /* number of swap blocks */
int copymode; /* 0 is copy on write, 1 is copy on reference */
int portispaged; /*
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.