|
|
1.1 root 1: /*
2: * Text structure.
3: * One allocated per pure
4: * procedure on swap device.
5: * Manipulated by text.c
6: */
7: #define NXDAD 12 /* param.h:MAXTSIZ / dmap.h:DMTEXT */
8:
9: struct text
10: {
11: swblk_t x_daddr[NXDAD]; /* disk addresses of DMTEXT-page segments */
12: swblk_t x_ptdaddr; /* disk address of page table */
13: size_t x_size; /* size (clicks) */
14: struct proc *x_caddr; /* ptr to linked proc, if loaded */
15: struct inode *x_iptr; /* inode of prototype */
16: short x_rssize;
17: short x_swrss;
18: char x_count; /* reference count */
19: char x_ccount; /* number of loaded references */
20: char x_flag; /* traced, written flags */
21: char x_slptime;
22: short x_poip; /* page out in progress count */
23: };
24:
25: #ifdef KERNEL
26: struct text *text, *textNTEXT;
27: int ntext;
28: #endif
29:
30: #define XTRC 01 /* Text may be written, exclusive use */
31: #define XWRIT 02 /* Text written into, must swap out */
32: #define XLOAD 04 /* Currently being read from file */
33: #define XLOCK 010 /* Being swapped in or out */
34: #define XWANT 020 /* Wanted for swapping */
35: #define XPAGI 040 /* Page in on demand from inode */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.