rl(4) — VAX
Name
rl − RL211/RL02 disk interface
Syntax
controller hl0 at uba? csr 0174400 vector rlintr
disk rl0 at hl0 drive 0
Description
Files with minor device numbers 0 through 7 refer to various portions of drive 0; minor devices 8 through 15 refer to drive 1, and so forth. The standard device names begin with rl followed by the drive number and then a letter, a through h, for partitions 0-7. The question mark (?) character stands here for a drive number in the range 0-7.
The block files access the disk by the system’s normal buffering mechanism and can be read and written without regard to physical disk records. There is also a raw interface, which provides for direct transmission between the disk and the user’s read or write buffer. A single read or write call results in exactly one I/O operation. Therefore, raw I/O is considerably more efficient when many words are transmitted. The names of the raw files conventionally begin with an addition letter r, for example, rrx2c.
Although RL02 disks have 256-byte sectors, the driver emulates 512-byte sectors. Raw I/O counts should be multiples of 512 bytes (a normal disk sector). In the same way, seek calls should specify a multiple of 512 bytes.
The origin and size (in 512-byte sectors) of the pseudodisks on each drive are as follows:
RL02 partitions:
diskstartlengthcyl
rl?a0158840-397
rl?b158844520398-510
rl?c0204800-511
rl?d158844520398-510
rl?g0204800-511
Restrictions
In raw I/O, read and write functions truncate file offsets to 512-byte block boundaries, and write overwrites the tail of incomplete blocks. Thus, in programs that are likely to access raw devices, read(,), write(,), and lseek() should always deal in 512-byte multiples.
Diagnostics
The following messages are printed at the console:
rl%d%c: hard error sn%d
An unrecoverable error occurred during transfer of the specified sector of the specified disk partition. Either the error was unrecoverable, or a large number of retry attempts (including offset positioning and drive recalibration) could not recover the error. Additional register information may be gathered from the system error log file, /usr/adm/syserr/syserr.<hostname>.
rl%d: write protected
The write protect switch was set on the drive when a write was attempted. The write operation is not recoverable.
hl%d: lost interrupt
A timer watching the controller detected no interrupt for an extended period while an operation was outstanding. This indicates a hardware or software failure. The error causes a UNIBUS reset and retry of the pending operations. If the controller continues to lose interrupts, this error will recur a few seconds later.
Files
/dev/rl???
/dev/rrl???