DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

Intro(D4)


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)

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.


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