DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
Device driver overview

I/O operations

The following entry points are used in non-STREAMS DDI 8 drivers for the actual I/O operations:


biostart(D2)
Handle all standard I/O operations (reads and writes).

ioctl(D2)
Handle custom I/O operations requested by a user level process.

drvctl(D2)
Handle custom I/O operations requested by another driver. This is similar to the ioctl(D2) entry point routine, but handles requests coming from kernel level rather than user level.

STREAMS drivers, including MDI drivers, use the following entry point routines for I/O operations:


put(D2str)
Receive messages from the preceeding queue. The write put routine is required for STREAMS drivers and modules, but the read put routine is required only for STREAMS modules; STREAMS drivers do this processing in their intr(D2str) routine.

srv(D2str)
Service queued messages. This routine is optional for both STREAMS drivers and modules and is not used in MDI drivers because the interface itself handles this processing.

Non-STREAMS drivers for DDI versions prior to version 8 and ODDI drivers for SCO OpenServer 5 use the read(D2), write(D2), and strategy(D2) (or read(D2oddi), write(D2oddi), and strategy(D2oddi)) entry point routines rather than biostart(D2).

The actual I/O operations are coded according to the I/O strategy that the hardware supports. See


© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005