ra - MSCP disk interface
For XMI/KDM (only for the DEC 7000):
bus xmi0 at iop0 vector xmierror controller uq0 at xmi?
port kdm vector uqintr device disk ra4 at uq0 drive 4
For XMI/CI/HSC (only for the DEC 7000):
bus xmi0 at iop0 vector xmierror bus ci0 at xmi? port np
vector cimna_isr controller hsc6 at ci0 cinode 6 device
disk ra1 at hsc6 drive 1
For ra devices dual ported between two controllers:
device disk ra3 at * drive 3
This is a driver for all MSCP disk controllers. All controllers
communicate with the host through a packet-oriented
protocol termed the Mass Storage Control Protocol
(MSCP).
The following rules are used to determine the major and
minor numbers that are associated with an ra disk type:
There are two major numbers for an ra type disk, major
number 23 and major number 28. Major number 23 specifies
an ra block device, and major number 28 specifies the ra
character device file. Each major number represents up to
255 disks. The minor number is used to represent both the
logical unit number and the disk partition. A disk partition
refers to a designated portion of the physical disk.
To refer to both the logical unit number and the disk partition,
the 20-bit minor number is broken up into two
parts. The low three bits (bits 0-2) allow for the naming
of eight partitions. The partitions are named a, b, c, d,
e, f, g, and h. The upper fourteen bits of the minor number
specify the logical unit number. The maximum logical
unit number supported is 255, with the rest of the logical
unit number field reserved for future use.
The device special file names associated with ra disks are
based on the following conventions, which are closely
associated with the minor number assigned to the disk: The
standard device names begin with ra for the block special
file, and rra for the raw (character) special file. Following
the ra is the logical unit number and then a letter,
a through h, which specifies the partition. In this
reference page, the question mark (?) character represents
the logical unit number in the name of the device special
file. For example ra?b could represent devices ra0b,
ra1b, and so on.
The following examples show how the logical unit number is
calculated from the major and minor number of an ra disk.
For the device special file rra6a, the major number is 28
and the minor number is 384. The partition is represented
by the lower 3 bits of the number 384. The lower 3 bits
will be 0 (zero), which specifies the a partition. The
upper 14 bits of 384 specifies the number 6. The major
number is 28. Putting all these pieces together reveals
that the major/minor pair 28/384 refers to the a partition
of logical unit 6.
Similarly, the following example determines the logical
unit number corresponding to the major/minor pair 28/386.
The low 3 bits of the minor number specifies the number 2,
which is the c partition. The upper 14 bits of the minor
number specifies the number 6. The major number is 28.
Therefore, the major/minor pair 28/386 refers to the c
partition of logical unit number 6 or rra6c.
The disk can be accessed through either the block special
file or the character special file. The block special
file accesses the disk using the file system's normal
buffering mechanism. Reads and writes to the block special
file can specify any size. This avoids the need to
limit data transfers to the size of physical disk records
and to calculate offsets within disk records. The file
system may break up large read and write requests into
smaller fixed size transfers to the disk.
The character special file provides a raw interface that
enables direct transmission between the disk and the
user's read or write buffer. In contrast to the block special
file, reads and writes to the raw interface must be
done on full sectors only. Because of this, in raw I/O,
counts should be multiples of 512 bytes (a disk sector).
In addition, seek calls should specify a multiple of 512
bytes. A single read or write to the raw interface results
in exactly one I/O operation; consequently, raw I/O may be
considerably more efficient for large transfers.
Disk Support [Toc] [Back]
This driver handles all disk drives that can be connected
to an MSCP-based controller. Consult the Software Product
Description to determine which controllers are supported
for specific CPU types and hardware configurations.
The starting location and length (in 512-byte sectors) of
the disk partitions of each drive are shown in the following
table. Partition sizes can be changed by the disklabel
command.
RA60 partitions [Toc] [Back]
-----------------------
disk start length
-----------------------
ra?a 0 40960
ra?b 40960 41968
ra?c 0 400176
ra?d 242928 52416
ra?e 295344 52416
ra?f 347760 52416
ra?g 82928 160000
ra?h 242928 157248
-----------------------
RA70 partitions [Toc] [Back]
-----------------------
disk start length
-----------------------
ra?a 0 40960
ra?b 40960 122880
ra?c 0 547041
ra?d 0 163840
ra?e 0 471040
ra?f 471040 76001
ra?g 163840 383201
-----------------------
RA71 partitions [Toc] [Back]
-------------------------
disk start length
-------------------------
ra?a 0 131072
ra?b 131072 262144
ra?c 0 1367310
ra?d 393216 324698
ra?e 717914 324698
ra?f 1042612 324698
ra?g 393216 819200
ra?h 1212416 154894
-------------------------
RA72 partitions [Toc] [Back]
-------------------------
disk start length
-------------------------
ra?a 0 131072
ra?b 131072 262144
ra?c 0 1953300
ra?d 393216 520028
ra?e 913244 520028
ra?f 1433272 520028
ra?g 393216 819200
ra?h 1212416 740884
-------------------------
RA73 partitions [Toc] [Back]
-------------------------
disk start length
-------------------------
ra?a 0 131072
ra?b 131072 262144
ra?c 0 3920490
ra?d 393216 1175552
ra?e 1568768 1175552
ra?f 2744320 1176170
ra?g 393216 819200
ra?h 1212416 2708074
-------------------------
RA80 partitions [Toc] [Back]
-----------------------
disk start length
-----------------------
ra?a 0 40960
ra?b 40960 41968
ra?c 0 237212
ra?d 82928 51428
ra?e 134356 51428
ra?f 185784 51428
ra?g 82928 154284
ra?h 0 0
-----------------------
RA81 partitions [Toc] [Back]
-----------------------
disk start length
-----------------------
ra?a 0 81920
ra?b 81920 262144
ra?c 0 891072
ra?d 344064 182336
ra?e 526400 182336
ra?f 708736 182336
ra?g 344064 547008
ra?h 0 0
-----------------------
RA82 partitions [Toc] [Back]
------------------------
disk start length
------------------------
ra?a 0 131072
ra?b 131072 262144
ra?c 0 1216665
ra?d 393216 274483
ra?e 667699 274483
ra?f 942182 274483
ra?g 393216 823449
ra?h 0 0
------------------------
RA90 partitions [Toc] [Back]
-------------------------
disk start length
-------------------------
ra?a 0 131072
ra?b 131072 262144
ra?c 0 2376153
ra?d 393216 660979
ra?e 1054195 660979
ra?f 1715174 660979
ra?g 393216 819200
ra?h 1212416 1163737
-------------------------
RA92 partitions [Toc] [Back]
----------------------------
disk start length
----------------------------
ra?a 0 131072
ra?b 131072 262144
ra?c 0 2940951
ra?d 393216 660979
ra?e 1054195 660979
ra?f 1715174 1225777
ra?g 393216 819200
ra?h 1212416 1728535
----------------------------
ESE20 partitions [Toc] [Back]
-----------------------
disk start length
-----------------------
ra?a 0 40960
ra?b 40960 42160
ra?c 0 245757
ra?d 82928 81416
ra?e 164344 81413
ra?f 0 0
ra?g 82928 162829
ra?h 0 0
-----------------------
Usually the ra?a partition is used for the root file system,
and the ra?b partition is used as a paging area. The
ra?c partition is used for pack to pack copying because it
maps the entire disk.
/dev/ra???
/dev/rra???
dkio(4), disklabel(8), MAKEDEV(8), uerf(8)
ra(7)
[ Back ] |