glenda.party
term% ls -F
term% pwd
$home/manuals/unix_v7/4/hp
term% cat 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)