Chapter 9. Upper level drivers

Table of Contents

Disk driver (sd)
sd boot parameters
sd module parameters
CDROM driver (sr or scd)
sr boot parameters
sr module parameters
sr proc interface
ATAPI cdroms
Tape driver (st)
st boot parameters
st module parameters
st proc interface
osst driver for OnStream devices
Generic driver (sg)
sg boot parameters
sg module parameters
sg proc interface

The upper level drivers maintain the kernel side of the OS interface for the logical class of devices they represent (e.g. disks). They are also responsible for managing certain kernel and SCSI subsystem resources such as kernel memory and SCSI command structures. Applications in the user space access these drivers by opening a special file (block or char) typically found in the /dev directory tree.

Disk driver (sd)

Two types of SCSI devices are accessible via the sd driver:

  • "direct access" devices which are usually magnetic disks. [SCSI peripheral device code is 0]

  • "Optical memory devices" which are often called MOD disks. [SCSI peripheral device code is 7]

The sd driver is a block device which means that it is closely associated with the block subsystem. It also supports the concept of partitions. [man sd dates from 1992.]

The sd driver is capable of recognizing 128 disks when it is loaded at kernel boot time or later as a module. However, once it is loaded, it will only recognize a fixed number of additional disks. The number of additional disks that can be accommodated is set by the kernel configuration parameter CONFIG_SD_EXTRA_DEVS whose default value is 40.

sd boot parameters


sd module parameters

The sd driver takes no parameters when loaded as a module. Note that its module name is sd_mod.o.