intro(D4) intro(D4)
NAME
intro - introduction to kernel data structures
SYNOPSIS
#include <sys/types.h>
#include <sys/ddi.h>
DESCRIPTION
This section describes the kernel data structures a developer
might need to use in a device driver.
USAGE
Driver developers should not declare arrays of these
structures, as the size of any structure might change between
releases. Two exceptions to this are the iovec(D4) and
uio(D4) structures.
Drivers must also avoid using kmem_alloc(sizeof (struct_t)),
because this will place a fixed structure size into the object
code.
Drivers can only reference those structure members described
on the manual page. The actual data structures may have
additional structure members beyond those described, but
drivers must not reference them.
Some structure members are flags fields that consist of a
bitmask of flags. Drivers must never directly assign values
to these structure members. Drivers should only set and clear
flags they are interested in, since the actual implementation
may contain unlisted flags.
Data structures that are ``black boxes'' to drivers are not
described in this section. These structures are referenced on
the manual pages where they are used. Drivers should not be
written to use any of their structure members. Their only
valid use is passing pointers to the structures to the
particular kernel routines.
Copyright 1994 Novell, Inc. Page 1