|
|
1.1 ! root 1: /* ! 2: * header file for standalone package ! 3: */ ! 4: ! 5: /* ! 6: * io block: includes an ! 7: * inode, cells for the use of seek, etc, ! 8: * and a buffer. ! 9: */ ! 10: struct iob { ! 11: char i_flgs; ! 12: struct inode i_ino; ! 13: int i_unit; ! 14: daddr_t i_boff; ! 15: daddr_t i_cyloff; ! 16: off_t i_offset; ! 17: daddr_t i_bn; ! 18: char *i_ma; ! 19: int i_cc; ! 20: char i_buf[BSIZE]; ! 21: }; ! 22: ! 23: #define F_READ 01 ! 24: #define F_WRITE 02 ! 25: #define F_ALLOC 04 ! 26: #define F_FILE 010 ! 27: ! 28: /* ! 29: * dev switch ! 30: */ ! 31: struct devsw { ! 32: char *dv_name; ! 33: int (*dv_strategy)(); ! 34: int (*dv_open)(); ! 35: int (*dv_close)(); ! 36: }; ! 37: ! 38: struct devsw devsw[]; ! 39: ! 40: /* ! 41: * request codes. Must be the same a F_XXX above ! 42: */ ! 43: #define READ 1 ! 44: #define WRITE 2 ! 45: ! 46: #define NBUFS 4 ! 47: ! 48: char b[NBUFS][BSIZE]; ! 49: daddr_t blknos[NBUFS]; ! 50: ! 51: #define NFILES 4 ! 52: struct iob iob[NFILES]; ! 53: ! 54: #define PHYSUBA0 0x20006000 ! 55: #define PHYSMBA0 0x20010000 ! 56: #define PHYSMBA1 0x20012000 ! 57: #define PHYSUMEM 0x2013e000
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.