rl(4)
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-h for partitions 0-7 respectively. The 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 may 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 and therefore raw I/O is considerably more efficient when many words are transmitted. The names of the raw files conventionally begin with an extra r.
Although RL02 disks have 256-byte sectors, the driver emulates 512-byte sectors. Raw I/O counts should be a multiple of 512 bytes (a normal disk sector). Likewise, 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() 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???