dksd − sable disk emulation device
{
"dksd",_sdinit,_sdopen,
_sdstrategy,_nulldev,_sdioctl,
DTTYPE_BLOCK,
DTFS_AUTO,"sable disk"
}
is the interface to the sable disk emulation. Sable responds to
block requests on the
device by transferring blocks from the file
in the directory where sable was run.
supports a single controller and unit. Partitions on the
device are defined by the disk volume header in the file RootDev.
Raw transfers to the
device must be in multiples of 512 bytes.
Sable supports a single disk emulation "controller" with control registers
at 0x1f001000 in physical space.
supports the following ioctls:
Gets the disk volume header for the
device open
on
and copies it to the
pointed to by
Sets the volume header information used by the dksd driver to that
pointed to by
only changes the information used by the disk driver software, it does
NOT change the information on the disk itself.
Gets the controller information for the device associated with descriptor
and copies it to the
pointed to by
The following diagnostics are printed by the
driver:
sd bad unit
A unit number other than 0 was specified
sd bad controller number
A controller number other than 0 was specified
no sable controller at 0x%x
Sable did not respond to references to the control registers at
the address shown
can’t read volume header
A volume header was not present on RootDev or was incorrectly formatted
or a volume header checksum error was detected
sd bad partition
A partition number outside the range of 0 to 15 was specified
sd null partition
A partition was selected that was not
read beyond end of partition
A read or write was attempted to a disk block beyond the end of
the partition
sable disk error
Sable was unable to read the requested block from RootDev
dvh(5spp)