|
|
1.1 ! root 1: /* frinit.c - frinit */ ! 2: ! 3: #include <conf.h> ! 4: #include <kernel.h> ! 5: #include <frame.h> ! 6: ! 7: #ifdef NNETS ! 8: struct fglob fdata[NNETS]; ! 9: int frbpool; ! 10: #endif ! 11: ! 12: /*------------------------------------------------------------------------ ! 13: * frinit -- initialize frame-level network input and output processes ! 14: *------------------------------------------------------------------------ ! 15: */ ! 16: SYSCALL frinit(netid, indev, outdev) ! 17: int netid; ! 18: int indev, outdev; ! 19: { ! 20: #ifdef NNETS ! 21: struct fglob *fgptr; ! 22: int frtimer(), finput(), foutput(); ! 23: ! 24: if (netid < 0 || netid >= NNETS) ! 25: return(SYSERR); ! 26: fgptr = &fdata[netid]; ! 27: fgptr->findev = indev; ! 28: fgptr->foutdev = outdev; ! 29: fgptr->fiport = pcreate(FIPORTS); ! 30: fgptr->foport = pcreate(FOPORTS); ! 31: fgptr->ffport = pcreate(FFPORTS); ! 32: fgptr->fosem = screate(0); ! 33: fgptr->ftfuse = -1; ! 34: fgptr->ftpid = 0; ! 35: fgptr->fmachid = getmid(netid); ! 36: fgptr->ftimproc = ! 37: create(frtimer, FRSTACK, FRTPRIO, "frtimer", 1, netid); ! 38: resume( create(finput, FRSTACK, FRIPRIO, "finput", 1, netid) ); ! 39: resume( create(foutput,FRSTACK, FROPRIO, "foutpt", 1, netid) ); ! 40: return(OK); ! 41: #else ! 42: return(SYSERR); ! 43: #endif ! 44: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.