|
|
1.1 root 1: .\" Copyright (c) 1990 The Regents of the University of California.
2: .\" All rights reserved.
3: .\"
4: .\" This code is derived from software contributed to Berkeley by
5: .\" the Systems Programming Group of the University of Utah Computer
6: .\" Science Department.
7: .\"
8: .\" Redistribution and use in source and binary forms are permitted provided
9: .\" that: (1) source distributions retain this entire copyright notice and
10: .\" comment, and (2) distributions including binaries display the following
11: .\" acknowledgement: ``This product includes software developed by the
12: .\" University of California, Berkeley and its contributors'' in the
13: .\" documentation or other materials provided with the distribution and in
14: .\" all advertising materials mentioning features or use of this software.
15: .\" Neither the name of the University nor the names of its contributors may
16: .\" be used to endorse or promote products derived from this software without
17: .\" specific prior written permission.
18: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
19: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
20: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
21: .\"
22: .\" @(#)rd.4 5.1 (Berkeley) 6/29/90
23: .\"
24: .TH RD 4 "June 29, 1990"
25: .UC 7
26: .SH NAME
27: rd \- CS/80 disk interface
28: .SH SYNOPSIS
29: .B "master hpib? at scode?"
30: .br
31: .B "disk rd? at hpib? slave?"
32: .SH DESCRIPTION
33: This is a generic CS/80 disk driver.
34: Only a small number of possible CS/80 drives are supported,
35: but others can easily be added by adding tables to the driver.
36: .PP
37: Files with minor device numbers 0 through 7 refer to various portions
38: of drive 0;
39: minor devices 8 through 15 refer to drive 1, etc.
40: The standard device names begin with ``rd'' followed by
41: the drive number and then a letter a-h for partitions 0-7 respectively.
42: The character ? stands here for a drive number in the range 0-7.
43: .PP
44: The block files access the disk via the system's normal
45: buffering mechanism and may be read and written without regard to
46: physical disk records. There is also a `raw' interface
47: which provides for direct transmission between the disk
48: and the user's read or write buffer.
49: A single read or write call results in exactly one I/O operation
50: and therefore raw I/O is considerably more efficient when
51: many words are transmitted. The names of the raw files
52: conventionally begin with an extra `r.'
53: .PP
54: In raw I/O counts should be a multiple of 512 bytes (a disk sector).
55: Likewise
56: .I seek
57: calls should specify a multiple of 512 bytes.
58: .SH "DISK SUPPORT"
59: The driver interrogates the controller
60: to determine the type of drive attached.
61: The driver recognizes the following drives:
62: 7912, 7914, 7933, 7936, 7937, 7945, 7957A/B, 7958A/B,
63: 7959B, 7962, 7963, 9122, 9134, 7912, 7936, and 9122,
64: not all of which have been tested.
65: The origin and size of the pseudo-disks on each drive are
66: as follows:
67: .PP
68: .nf
69: .ta .5i +\w'000000 'u +\w'000000 'u +\w'000000 'u
70: 7945/7946 partitions:
71: disk start length cyls
72: rd?a 112 15904 1-142
73: rd?b 16016 20160 143-322
74: rd?c 0 108416 0-967
75: rd?d 16016 40320 143-502
76: rd?e undefined
77: rd?f undefined
78: rd?g 36176 72240 323-967
79: rd?h 56336 52080 503-967
80: .PP
81: 9134D partitions:
82: disk start length cyls
83: rd?a 96 15936 1-166
84: rd?b 16032 13056 167-302
85: rd?c 0 29088 0-302
86: rd?d undefined
87: rd?e undefined
88: rd?f undefined
89: rd?g undefined
90: rd?h undefined
91: .PP
92: 9122S partitions:
93: disk start length cyls
94: rd?a undefined
95: rd?b undefined
96: rd?c 0 1232 0-76
97: rd?d undefined
98: rd?e undefined
99: rd?f undefined
100: rd?g undefined
101: rd?h undefined
102: .PP
103: 7912P partitions:
104: disk start length cyls
105: rd?a 0 15904 0-70
106: rd?b 16128 22400 72-171
107: rd?c 0 128128 0-571
108: rd?d 16128 42560 72-261
109: rd?e undefined
110: rd?f undefined
111: rd?g 38528 89600 172-571
112: rd?h 58688 69440 262-571
113: .PP
114: 7914CT/P partitions:
115: disk start length cyls
116: rd?a 224 15904 1-71
117: rd?b 16128 40320 72-251
118: rd?c 0 258048 0-1151
119: rd?d 16128 64960 72-361
120: rd?e 81088 98560 362-801
121: rd?f 179648 78400 802-1151
122: rd?g 56448 201600 252-1151
123: rd?h 81088 176960 362-1151
124: .PP
125: 7958A partitions:
126: disk start length cyls
127: rd?a 252 16128 1-64
128: rd?b 16380 32256 65-192
129: rd?c 0 255276 0-1012
130: rd?d 16380 48384 65-256
131: rd?e 64764 100800 257-656
132: rd?f 165564 89712 657-1012
133: rd?g 48636 206640 193-1012
134: rd?h 64764 190512 257-1012
135: .PP
136: 7957A partitions:
137: disk start length cyls
138: rd?a 154 16016 1-104
139: rd?b 16170 24640 105-264
140: rd?c 0 159544 0-1035
141: rd?d 16170 42350 105-379
142: rd?e 58520 54824 380-735
143: rd?f 113344 46200 736-1035
144: rd?g 40810 118734 265-1035
145: rd?h 58520 101024 380-1035
146: .PP
147: 7933H partitions:
148: disk start length cyls
149: rd?a 598 16146 1-27
150: rd?b 16744 66976 28-139
151: rd?c 0 789958 0-1320
152: rd?d 83720 16146 140-166
153: rd?e 99866 165646 167-443
154: rd?f 265512 165646 444-720
155: rd?g 83720 706238 140-1320
156: rd?h 431158 358800 721-1320
157: .PP
158: 9134L partitions:
159: disk start length cyls
160: rd?a 80 15920 1-199
161: rd?b 16000 20000 200-449
162: rd?c 0 77840 0-972
163: rd?d 16000 32000 200-599
164: rd?e undefined
165: rd?f undefined
166: rd?g 36000 41840 450-972
167: rd?h 48000 29840 600-972
168: .PP
169: 7936H partitions:
170: disk start length cyls
171: rd?a 861 16359 1-19
172: rd?b 17220 67158 20-97
173: rd?c 0 600978 0-697
174: rd?d 84378 16359 98-116
175: rd?e 100737 120540 117-256
176: rd?f 220416 120540 256-395
177: rd?g 84378 516600 98-697
178: rd?h 341817 259161 397-697
179: .PP
180: 7937H partitions:
181: disk start length cyls
182: rd?a 1599 15990 1-10
183: rd?b 17589 67158 11-52
184: rd?c 0 1116102 0-697
185: rd?d 84747 15990 53-62
186: rd?e 100737 246246 63-216
187: rd?f 346983 246246 217-370
188: rd?g 84747 1031355 53-697
189: rd?h 593229 522873 371-697
190: .PP
191: 7957B/7961B partitions:
192: disk start length cyls
193: rd?a 126 16002 1-127
194: rd?b 16128 32760 128-387
195: rd?c 0 159894 0-1268
196: rd?d 16128 49140 128-517
197: rd?e 65268 50400 518-917
198: rd?f 115668 44226 918-1268
199: rd?g 48888 111006 388-1268
200: rd?h 65268 94626 518-1268
201: .PP
202: 7958B/7962B partitions:
203: disk start length cyls
204: rd?a 378 16254 1-43
205: rd?b 16632 32886 44-130
206: rd?c 0 297108 0-785
207: rd?d 16632 49140 44-173
208: rd?e 65772 121716 174-495
209: rd?f 187488 109620 496-785
210: rd?g 49518 247590 131-785
211: rd?h 65772 231336 174-785
212: .PP
213: 7959B/7963B partitions:
214: disk start length cyls
215: rd?a 378 16254 1-43
216: rd?b 16632 49140 44-173
217: rd?c 0 594216 0-1571
218: rd?d 16632 65772 44-217
219: rd?e 82404 303912 218-1021
220: rd?f 386316 207900 1022-1571
221: rd?g 65772 528444 174-1571
222: rd?h 82404 511812 218-1571
223: .PP
224: .DT
225: .fi
226: .PP
227: It is unwise for all of these files to be present in one installation,
228: since there is overlap in addresses and protection becomes
229: a sticky matter.
230: The eight partitions as given support four basic, non-overlapping layouts,
231: though not all partitions exist on all drive types.
232: .PP
233: In the first layout there are three partitions and a ``bootblock'' area.
234: The bootblock area is at the beginning of the disk and holds
235: the standalone disk boot program.
236: The rd?a partition is for the root file system,
237: rd?b is a paging/swapping area, and
238: rd?g is for everything else.
239: .PP
240: The second layout is the same idea,
241: but has a larger paging/swapping partition (rd?d) and
242: a smaller ``everything else'' partition (rd?h).
243: This layout is better for environments which run many large processes.
244: .PP
245: The third layout is a variation of the second,
246: but breaks the rd?h partition into two partitions, rd?e and rd?f.
247: .PP
248: The final layout is intended for a large, single file system second disk.
249: It is also used when writing out the boot program since it is the only
250: partition mapping the bootblock area.
251: .SH FILES
252: /dev/rd[0-7][a-h] block files
253: .br
254: /dev/rrd[0-7][a-h] raw files
255: .SH DIAGNOSTICS
256: \fBrd%d err: v%d u%d, R0x%x F0x%x A0x%x I0x%x, block %d\fR
257: .br
258: An unrecoverable data error occurred during transfer of the
259: specified block on the specified disk.
260: .SH BUGS
261: The current disk partitioning is totally bogus.
262: CS/80 drives have 256 byte sectors which are mapped to 512 byte
263: ``sectors'' by the driver.
264: Since some CS/80 drives have an odd number of sectors per cylinder,
265: the disk geometry used is not always accurate.
266: .PP
267: The partition tables for the file systems should be read off of each pack,
268: as they are never quite what any single installation would prefer,
269: and this would make packs more portable.
270: .PP
271: In raw I/O
272: .I read
273: and
274: .IR write (2)
275: truncate file offsets to 512-byte block boundaries,
276: and
277: .I write
278: scribbles on the tail of incomplete blocks.
279: Thus,
280: in programs that are likely to access raw devices,
281: .I read, write
282: and
283: .IR lseek (2)
284: should always deal in 512-byte multiples.
285: .PP
286: A program to analyze the logged error information (even in its
287: present reduced form) is needed.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.