.TH HP 4 .UC 4 .SH NAME hp \- RP06, RM03, RM-05 moving-head disk .SH 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, etc. .PP The origin and size of the pseudo-disks on each drive are as follows: .PP .nf .ta .5i +\w'000000 'u +\w'000000 'u RP03 partitions disk start length 0 0 15884 1 15884 33440 2 40964 8360 3 0 0 4 0 0 5 0 0 6 49324 291346 7 0 0 .PP .nf RM03 partitions disk start length 0 0 15884 1 16000 33440 2 0 0 3 0 0 4 0 0 5 0 0 6 49600 82080 7 0 0 .PP .nf RM05 partitions disk start length 0 0 15884 1 16416 33440 2 0 500992 3 341696 15884 4 358112 55936 5 414048 36944 6 341696 159296 7 49856 291346 .fi .DT .PP It is unwise for all of these files to be present in one installation, since there is overlap in addresses and protection becomes a sticky matter. Ordinarily devices 0 and 6 on rp06 and rm03 drives, and 0, 7, and either 6 or 5, 6, and 7 on rm05 drives. Note that the file system sizes are chosen to allow the partitions to be copied between the rp06's and rm05's. This is done so that systems with mixed drives will be able to rearrange file systems easily (see also .IR up (4)). Device 2 is the entire pack, and is used in pack-to-pack copying. .PP The block files access the disk via 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.' .SH FILES .ta 2i /dev/rp[0-3][a-h] block files .br /dev/rrp[0-3][a-h] raw files .SH SEE ALSO rp(4) .SH BUGS In raw I/O .I read and .IR write (2) truncate file offsets to 512-byte block boundaries, and .I write scribbles on the tail of incomplete blocks. Thus, in programs that are likely to access raw devices, .I read, write and .IR lseek (2) should always deal in 512-byte multiples.