Porting drivers to DDI 8

Changes to SCO OpenServer 5 kernel function set

The SVR5 kernel supports a different set of functions than the SCO OpenServer 5 kernel does. The manual pages for SCO OpenServer 5 functions are included in Section D3oddi manual pages, Section D3osdi manual pages, Section D3str manual pages, and Section D3mdi manual pages for reference. Note that the STREAMS and MDI functions are documented in the same sections as the SVR5 functions, and identified with ODDI pseudo-version numbers for STREAMS functions, and mdi: 1 for MDI functions. See ``ODDI driver interface version for SCO OpenServer 5'' for an explanation of the pseudo-versioning scheme used to document the SCO OpenServer 5 driver interfaces.

The pages for SCO OpenServer 5 functions include information about SVR5 features that provide similar functionality. Some of the major issues are summarized below.

Locks and synchronization

The SVR5 kernel includes a rich set of locks and synchronization variables. For a complete discussion of these, see ``Synchronization variables''. Note the following:

Memory allocation

See ``Memory allocation'' for information about the memory allocation facilities on both platforms. Especially note the following:

Other function call changes

TTY drivers

SVR5 does not support the traditional clist-based TTY drivers. Instead, serial drivers should be implemented using the STREAMS interface.

Consequently, the following SCO OpenServer 5 functions are not supported in SVR5: getc(D3oddi), getcb(D3oddi), getcf(D3oddi), putc(D3oddi), putcb(D3oddi), putcf(D3oddi), ldistributed(D3oddi), the tty locking functions documented on the tc_tlock(D3oddi) manual page, and the functions documented on the tty(D3oddi) manual page.

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