## Storage Device Driver Reference

[prev][next][parent][TOC]

### Introduction to DASD, SCSI, and CD-ROM Programming Interfaces

This reference defines the OS/2* 2.0 (and later) programming interfaces to support original equipment manufacturer (OEM) direct access storage devices (DASD), small computer system interface (SCSI) devices, and compact disc read only memory (CD-ROM) devices.

The programming interfaces described in this reference provide the following benefits:

Device drivers can be written in the C programming language.

The development of new DASD, SCSI, and CD-ROM support for unique device interfaces is expedited by reducing the amount of new code required and the complexity of that code.

Facilitate development of a new DASD, SCSI, or CD-ROM driver for a specific bus interface.

Relatively complex OS/2 kernel interfaces are replaced with a single interface.

Independent development organizations are better able to reuse existing DASD device driver code.

OS/2 2.0 (and later) is better equipped for installing, starting, and operating on a broad range of Intel** 80386SX-compatible workstations.

The following figure illustrates the organization of the new code:

[Artwork not shown]

The following types of device drivers are included in this reference:

Device managers
Adapter device drivers
Filter device drivers

A device manager (DM) is a hardware-independent module that services the standard OS/2 request packet interface. An adapter device driver is a hardware-dependent module and is a member of the lowest layer in the device -driver hierarchy. The adapter device driver to device manager interface is designed such that an adapter device driver is little more than a state machine responsible for moving blocks of I/O between system memory and a target device.

A filter device driver differs from an adapter device driver in that it normally does not manage hardware directly. See Filter Device Drivers and Using Filter Device Drivers for details about filter device drivers.