In order for a device to be used on the SCSI bus, it is necessary for it to have a
driver that interfaces it to the bus. (The exception is hard disks, which are normally
usable directly by the host adapter, since it is designed for that purpose). The problem
with this is making sure the drivers are available for all the devices you want to use and
that they work properly. A further problem is making sure that operating systems and
applications can work with all of the drivers that are written for various devices.
To help make the situation with drivers more standardized, Adaptec--the biggest name in
SCSI host adapters--developed the Advanced (originally Adaptec) SCSI
Programming Interface, or ASPI. This driver acts as an abstraction layer that
hides the details of the host adapter from the operating system or application and makes
device support more universal.
Most of the popular operating systems can make use of ASPI. DOS requires an ASPI driver
to be loaded, while the protected mode operating systems such as Windows 95 and Windows NT
have native support for ASPI. One problem with using SCSI under DOS or Windows 3.x is that
the lack of protected-mode drivers means yet another real-mode drive that uses up precious
conventional memory.
An alternative interface protocol is called Common Access Method or CAM.
This is a more sophisticated and complex software interface protocol, which is defined as one of the SCSI-3 standards. CAM and ASPI both do basically
the same thing; which is used depends on the particular system.
Next: Plug and Play SCSI (SCAM)