08edc827086511c1494555e9b4982a6402dcb321
int hpstrategy(),hpread(),hpwrite(),hpintr(),hpdump();
int htopen(),htclose(),htstrategy(),htread(),htwrite(),htdump();
int rkstrategy(),rkread(),rkwrite(),rkintr(),rkdump();
int tmopen(),tmclose(),tmstrategy(),tmread(),tmwrite(),tmioctl(),tmdump();
int upstrategy(),upread(),upwrite(),upreset(),updump();
int swstrategy(),swread(),swwrite();
nulldev
, nulldev
, hpstrategy
, hpdump
, 0, /*0*/
htopen
, htclose
, htstrategy
, htdump
, B_TAPE
, /*1*/
nulldev
, nulldev
, upstrategy
, updump
, 0, /*2*/
nulldev
, nulldev
, rkstrategy
, rkdump
, 0, /*3*/
nodev
, nodev
, swstrategy
, nodev
, 0, /*4*/
tmopen
, tmclose
, tmstrategy
, tmdump
, B_TAPE
, /*5*/
tsopen
, tsclose
, tsstrategy
, tsdump
, B_TAPE
, /*6*/
int cnopen(),cnclose(),cnread(),cnwrite(),cnioctl();
int ctopen(),ctclose(),ctwrite();
int dhopen(),dhclose(),dhread(),dhwrite(),dhioctl(),dhstop(),dhreset();
int flopen(),flclose(),flread(),flwrite();
int dzopen(),dzclose(),dzread(),dzwrite(),dzioctl(),dzstop(),dzreset();
int lpopen(),lpclose(),lpwrite(),lpioctl(),lpreset();
int syopen(),syread(),sywrite(),syioctl();
int vaopen(),vaclose(),vawrite(),vaioctl(),vareset();
int vpopen(),vpclose(),vpwrite(),vpioctl(),vpreset();
int mxopen(),mxclose(),mxread(),mxwrite(),mxioctl();
int ptsopen(), ptsclose(), ptsread(), ptswrite();
int ptcopen(), ptcclose(), ptcread(), ptcwrite();
cnopen
, cnclose
, cnread
, cnwrite
, /*0*/
cnioctl
, nulldev
, nulldev
, &cons
,
dzopen
, dzclose
, dzread
, dzwrite
, /*1*/
dzioctl
, dzstop
, dzreset
, dz_tty
,
syopen
, nulldev
, syread
, sywrite
, /*2*/
syioctl
, nulldev
, nulldev
, 0,
nulldev
, nulldev
, mmread
, mmwrite
, /*3*/
nodev
, nulldev
, nulldev
, 0,
nulldev
, nulldev
, hpread
, hpwrite
, /*4*/
nodev
, nodev
, nulldev
, 0,
htopen
, htclose
, htread
, htwrite
, /*5*/
nodev
, nodev
, nulldev
, 0,
vpopen
, vpclose
, nodev
, vpwrite
, /*6*/
vpioctl
, nulldev
, vpreset
, 0,
nulldev
, nulldev
, swread
, swwrite
, /*7*/
nodev
, nodev
, nulldev
, 0,
flopen
, flclose
, flread
, flwrite
, /*8*/
nodev
, nodev
, nulldev
, 0,
nodev
, nodev
, nodev
, nodev
, /*8*/
mxopen
, mxclose
, mxread
, mxwrite
, /*9*/
mxioctl
, nulldev
, nulldev
, 0,
vaopen
, vaclose
, nodev
, vawrite
, /*10*/
vaioctl
, nulldev
, vareset
, 0,
nulldev
, nulldev
, rkread
, rkwrite
, /*11*/
nodev
, nodev
, nulldev
, 0,
dhopen
, dhclose
, dhread
, dhwrite
, /*12*/
dhioctl
, dhstop
, dhreset
, dh11
,
nulldev
, nulldev
, upread
, upwrite
, /*13*/
nodev
, nodev
, upreset
, 0,
tmopen
, tmclose
, tmread
, tmwrite
, /*14*/
tmioctl
, nodev
, nulldev
, 0,
lpopen
, lpclose
, nodev
, lpwrite
, /*15*/
lpioctl
, nodev
, lpreset
, 0,
tsopen
, tsclose
, tsread
, tswrite
, /*16*/
nodev
, nodev
, nulldev
, 0,
nodev
, nodev
, nodev
, nodev
, /*17*/
nodev
, nodev
, nulldev
, 0,
ctopen
, ctclose
, nodev
, ctwrite
, /*18*/
nodev
, nodev
, nulldev
, 0,
nodev
, nodev
, nodev
, nodev
, /*19*/
nodev
, nodev
, nulldev
, 0,
ptsopen
, ptsclose
, ptsread
, ptswrite
, /*20*/
ptyioctl
, nodev
, nodev
, 0,
ptcopen
, ptcclose
, ptcread
, ptcwrite
, /*21*/
ptyioctl
, nodev
, nodev
, 0,
nodev
, nodev
, nodev
, nodev
, /*22*/
nodev
, nodev
, nodev
, nodev
, /*23*/
nodev
, nodev
, nodev
, nodev
, /*24*/
/* 25-29 reserved to local sites */
int ttyopen(),ttread(),nullioctl(),ttstart();
int ttyinput(),ttyrend();
int bkopen(),bkclose(),bkread(),bkinput(),bkioctl();
int ntyopen(),ntyclose(),ntread();
int ntyinput(),ntyrend();
ttyopen
, nulldev
, ttread
, ttwrite
, nullioctl
,
ttyinput
, ttyrend
, nulldev
, nulldev
, nulldev
, /* 0 */
bkopen
, bkclose
, bkread
, ttwrite
, bkioctl
,
bkinput
, nodev
, nulldev
, ttstart
, nulldev
, /* 1 */
ntyopen
, ntyclose
, ntread
, ntwrite
, nullioctl
,
ntyinput
, ntyrend
, nulldev
, ttstart
, nulldev
, /* 2 */
mxopen
, mxclose
, mcread
, mcwrite
, mxioctl
,
nulldev
, nulldev
, nulldev
, nulldev
, nulldev
, /* 3 */
struct inode inode
[NINODE
];
struct buf bfreelist
[BQUEUES
]; /* buffer chain headers */
struct buf bswlist
; /* free list of swap headers */
struct buf
*bclnlist
; /* header for list of cleaned pages */
int mem_no
= 3; /* major device number of memory special file */
* Swapdev is a fake device implemented
* in sw.c used only internally to get to swstrategy.
* It cannot be provided to the users, because the
* swstrategy routine munches the b_dev and b_blkno entries
* before calling the appropriate driver. This would horribly
* confuse, e.g. the hashing routines. Instead, /dev/drum is
* provided as a character (raw) device.
dev_t swapdev
= makedev(4, 0);