|
|
1.1 root 1: /*
2: * Declaration of block device
3: * switch. Each entry (row) is
4: * the only link between the
5: * main unix code and the driver.
6: * The initialization of the
7: * device switches is in the
8: * file conf.c.
9: */
10: struct bdevsw
11: {
12: int (*d_open)();
13: int (*d_close)();
14: int (*d_strategy)();
15: int (*d_dump)();
16: int d_flags;
17: };
18: #ifdef KERNEL
19: struct bdevsw bdevsw[];
20: #endif
21:
22: /*
23: * Character device switch.
24: */
25: extern struct cdevsw
26: {
27: int (*d_open)();
28: int (*d_close)();
29: int (*d_read)();
30: int (*d_write)();
31: int (*d_ioctl)();
32: int (*d_mmap)();
33: int (*d_reset)();
34: struct streamtab *qinfo;
35: };
36: #ifdef KERNEL
37: struct cdevsw cdevsw[];
38: #endif
39:
40: /* file system types */
41: struct fstypsw {
42: int (*t_put)();
43: struct inode *(*t_get)();
44: int (*t_free)();
45: int (*t_updat)();
46: int (*t_read)();
47: int (*t_write)();
48: int (*t_trunc)();
49: int (*t_stat)();
50: int (*t_nami)();
51: int (*t_mount)();
52: int (*t_ioctl)();
53: struct inode * (*t_open)();
54: };
55: #ifdef KERNEL
56: extern struct fstypsw fstypsw[];
57: extern nfstyp;
58: /* defaults for fstypsw */
59: extern struct inode *nullget();
60: extern int nullnami();
61: extern struct inode *nullopen();
62: #endif
63:
64: /*
65: * stream processor table
66: */
67: extern struct streamtab {
68: struct qinit *rdinit;
69: struct qinit *wrinit;
70: } *streamtab[];
71:
72: /*
73: * Swap device information
74: */
75: struct swdevt
76: {
77: dev_t sw_dev;
78: int sw_freed;
79: };
80: #ifdef KERNEL
81: struct swdevt swdevt[];
82: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.