index.txt
HP(4) Kernel Interfaces Manual HP(4) NAME hp - RH-11/RP04, RP05, RP06 moving-head disk DESCRIPTION The octal representation of the minor device number is encoded idp, where i is an interleave flag, d is a physical drive number, and p is a pseudodrive (subsection) within a physical unit. If i is 0, the ori‐ gins and sizes of the pseudodisks on each drive, counted in cylinders of 418 512-byte blocks, are: disk start length 0 0 23 1 23 21 2 0 0 3 0 0 4 44 386 5 430 385 6 44 367 7 44 771 If i is 1, the minor device consists of the specified pseudodisk on drives numbered 0 through the designated drive number. Successively numbered blocks are distributed across the drives in rotation. Systems distributed for these devices use disk 0 for the root, disk 1 for swapping, and disk 4 (RP04/5) or disk 7 (RP06) for a mounted user file system. The block files access the disk via the system's normal buffering mech‐ anism and may be read and written without regard to physical disk records. A `raw' interface 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.' In raw I/O the buffer must be‐ gin on a word boundary, and raw I/O to an interleaved device is likely to have disappointing results. FILES /dev/rp?, /dev/rrp? SEE ALSO rp(4) BUGS In raw I/O read and write(2) truncate file offsets to 512-byte block boundaries, and write scribbles on the tail of incomplete blocks. Thus, in programs that are likely to access raw devices, read, write and lseek(2) should always deal in 512-byte multiples. Raw device drivers don't work on interleaved devices. HP(4)