Generic Device Driver for Personal Computer Compact Disk Read-Only Memory
Original Publication Date: 1994-Jan-01
Included in the Prior Art Database: 2005-Mar-26
Publishing Venue
IBM
Related People
Abstract
Described is a software implementation for Personal Computers (PCs) that utilize Small Computer System Interface (SCSI) classifications to provide a generic device driver that supports many different types and models of removable media, such as Compact Disk Read-Only Memory (CD-ROM) devices.
Generic Device Driver for Personal Computer Compact Disk
Read-Only
Memory
Described is
a software implementation for Personal Computers
(PCs) that utilize Small Computer System Interface (SCSI)
classifications to provide a generic device driver that supports many
different types and models of removable media, such as Compact Disk
Read-Only Memory (CD-ROM) devices.
With a large
number of SCSI devices available for PCs,
manufacturers of attachment devices must provide many different types
and models of compatible device drivers.
Although a number of device
driver support packages are available for a variety of adapters and
SCSI devices, the many different types of packages
increases the cost
of hardware. The concept described
herein allows a single device
driver to support many CD-ROMs that can be attached to a SCSI
adapter. It supports the SCSI common
command set and is compatible
with existing operating system software.
Typically,
the SCSI specification contains a common command set
that must be supported by all SCSI devices.
This common command set
provides the basis for all SCSI device drivers.
The device driver is
able to query the device to find out the information necessary for
control of the device. The SCSI device
inquiry command is used to
identify the make and model of the device.
Once the device has been
identified, other standard commands, such as read and write, can be
used to access the information on the device in a standard manner
that is independent of the manufacturer of that particular device.
In prior art, separate device drivers were required for individual
vendor devices. The concept described
herein provides a means
whereby a generic driver can be used.
The term generic is applied to
the device driver because it no longer needs to be concerned with the
device vendor. All SCSI devices of a
particular SCSI classification
look alike to the device driver.
Generally,
the problems encountered when using different
devices centers around Disk Operating System (DOS) driver protocols,
not with SCSI implementation.
Consequently, the device driver
protocol contains structures and procedures that make it difficult to
produce a generic SCSI device driver.
For example, block devices are
accessed by head, cylinder and sector and the device driver is
required to provide device geometry parameters in the form of a Basic
Input-Output System (BIOS) Parameter Block (BPB). Also, a default
BPB must be provided to the operating system even before the device
can be accessed by the device driver, even though the media may not
be present in the device. These elements
are mainly associated with
formatting the device and with other device driver services
associated primarily with the formatting process. The device driver
services in question involve the initialize driver, form at track,
build BPB, get device parameters, and set device parameters.
The SCSI read devic...