1HK(4) Kernel Interfaces Manual HK(4)
2
3
4
6 hk - RK6-11/RK06 and RK07 moving head disk
7
9 /sys/conf/SYSTEM:
10 NHK hk_drives # RK611, RK06/07
11
12 /etc/dtab:
13 #Name Unit# Addr Vector Br Handler(s) # Comments
14 hk ? 177440 210 5 hkintr # rk611/711 rk06/07
15
16 major device number(s):
17 raw: 13
18 block: 4
19 minor device encoding:
20 bits 0007 specify partition of HK drive
21 bits 0070 specify HK drive
22
24 Files with minor device numbers 0 through 7 refer to various portions
25 of drive 0; minor devices 8 through 15 refer to drive 1, etc. The
26 standard device names begin with ``hk'' followed by the drive number
27 and then a letter a-h for partitions 0-7 respectively. The character ?
28 stands here for a drive number in the range 0-7.
29
30 The block files access the disk via the system's normal buffering mech‐
31 anism and may be read and written without regard to physical disk
32 records. There is also a `raw' interface which provides for direct
33 transmission between the disk and the user's read or write buffer. A
34 single read or write call results in exactly one I/O operation and
35 therefore raw I/O is considerably more efficient when many words are
36 transmitted. The names of the raw files conventionally begin with an
37 extra `r.'
38
39 In raw I/O the buffer must begin on a word (even) boundary, and counts
40 should be a multiple of 512 bytes (a disk sector). Likewise seek calls
41 should specify a multiple of 512 bytes.
42
44 Disks must be labeled using either the standalone disklabel program on
45 the boot tape or with the disklabel(8) program. There are no partition
46 tables coded into the hk drivers, these must be placed on the drive
47 with disklabel.
48
49 Traditionally the hk?a partition is used for the root filesystem, the b
50 partition as a swap area and the c partition for disk to disk copying
51 (it spans the entire disk).
52
53 The kernel uses the c partition to access the bad block information
54 stored at the end of some packs. Extreme care must be taken when cre‐
55 ating file systems on this partition to avoid overwriting any bad block
56 information present. User data should use the h partition which should
57 be at least one track (one cylinder might be best) shorter than the c
58 partition.
59
61 /dev/hk[0-7][a-h] block files
62 /dev/rhk[0-7][a-h] raw files
63 /dev/MAKEDEV script to create special files
64 /dev/MAKEDEV.local script to localize special files
65
67 ra(4) ram(4), rk(4), rl(4), rx(4), si(4), xp(4), dtab(5), autocon‐
68 fig(8), disklabel(8)
69
71 hk%d%c: hard error sn%d cs2=%b ds=%b er=%b. An unrecoverable error
72 occurred during transfer of the specified sector of the specified disk
73 partition. The contents of the cs2, ds and er registers are printed in
74 octal and symbolically with bits decoded. The error was either unre‐
75 coverable, or a large number of retry attempts (including offset posi‐
76 tioning and drive recalibration) could not recover the error.
77
78 hk%d: write locked. The write protect switch was set on the drive when
79 a write was attempted. The write operation is not recoverable.
80
81 hk%d: not ready. The drive was spun down or off line when it was
82 accessed. The i/o operation is not recoverable.
83
84 hk%d: not ready (came back!). The drive was not ready, but after
85 printing the message about being not ready (which takes a fraction of a
86 second) was ready. The operation is recovered if no further errors
87 occur.
88
89 hk%d%c: soft ecc sn%d. A recoverable ECC error occurred on the speci‐
90 fied sector of the specified disk partition. This happens normally a
91 few times a week. If it happens more frequently than this the sectors
92 where the errors are occuring should be checked to see if certain
93 cylinders on the pack, spots on the carriage of the drive or heads are
94 indicated.
95
97 In raw I/O read and write(2) truncate file offsets to 512-byte block
98 boundaries, and write scribbles on the tail of incomplete blocks.
99 Thus, in programs that are likely to access raw devices, read, write
100 and lseek(2) should always deal in 512-byte multiples.
101
102 DEC-standard error logging should be supported.
103
104 A program to analyze the logged error information (even in its present
105 reduced form) is needed.
106
107
108
1093rd Berkeley Distribution December 28, 1997 HK(4)