142
IRIS WORKSTATION GUIDE
Interrupt Levels
Currently the only interrupt level available for OEM use is level 5 and is further
restricted to the IRIS Workstation. Development is in progress to allow shared
interrupt levels.
Physical I/O Interface
The physical I/O interface under the IRIS system is different from the standard
System V interface in a few important ways. First, the physio procedure now
takes the following arguments:
physio(strategy, tab, dev. rdwri, min)
int
struct
dev_t
int
int
strategy
tab
dev
rdwri
min
The physio routine uses minphys to bound a given request, but will continue to
loop until u.u_count is zero, or an error occurs. The standard minimum routine
for DMA drivers is called minphys and is defined in ../h/system.h. In the case
where a driver needs its own minphys routine, it is recommended that the
system minphys routine be called prior to the bounding done by the device
driver. This will account for hardware limitations on virtual I/O.
J.3 Kernel Generation
The Silicon Graphics configuration system is based on the Berkeley auto-
configuration mechanism provided by 4.2BSD. Its purpose is to ease the task
of system construction and to automate as much of the kernel generation as
seems reasonable. What config(8) provides is the ability to generate a makefile to
construct the system, as well as a configuration file describing the devices to be
used by the system.
First we will give the step by step procedure for generating a kernel with OEM
supplied device drivers. An example follows the procedure.
(*strategy)();
buf *tab;
dev;
rdwri;
(*min)();
is the address of the device driver strategy routine.
points to the head of the devices active queue.
is the argument given to the devread or devwrite
routine.
is either B_READ or B_WRITE as defined in
../h/buf.h.
is the address of a routine use to bound the amount
of physio done for the current request.
Appendix J:
Version 1.0
Need help?
Do you have a question about the IRIS Workstation and is the answer not in the manual?