IK(4) BSD/vax Kernel Interfaces Manual IK(4)NAMEik — Ikonas frame buffer, graphics device interface
device ik0 at uba? csr 0172460 vector ikintr
The ik driver provides an interface to an Ikonas frame buffer graphics
device. Each minor device is a different frame buffer interface board.
When the device is opened, its interface registers are mapped, via vir‐
tual memory, into the user processes address space. This allows the user
process very high bandwidth to the frame buffer with no system call over‐
Bytes written or read from the device are DMA'ed from or to the inter‐
face. The frame buffer XY address, its addressing mode, etc. must be set
up by the user process before calling write or read.
Other communication with the driver is via ioctls. The IK_GETADDR
ioctl(2) returns the virtual address where the user process can find the
interface registers. The IK_WAITINT ioctl suspends the user process
until the ikonas device has interrupted (for whatever reason — the user
process has to set the interrupt enables).
The ik driver appeared in 4.2BSD.
An invalid access (e.g., longword) to a mapped interface register can
cause the system to crash with a machine check. A user process could
possibly cause infinite interrupts hence bringing things to a crawl.
4.2 Berkeley Distribution June 5, 1993 4.2 Berkeley Distribution