manual page distributed with 4.1BSD
[unix-history] / usr / src / share / man / man4 / man4.vax / uda.4
CommitLineData
6d5259d5
KM
1.\" Copyright (c) 1980 Regents of the University of California.
2.\" All rights reserved. The Berkeley software License Agreement
3.\" specifies the terms and conditions for redistribution.
4.\"
5.\" @(#)uda.4 4.1 (Berkeley) %G%
6.\"
7.TH RA 4 10/8/81
8.UC 4
9.SH NAME
10ra \- UDA50/RA80 Unibus disk controller and drives
11.SH SYNOPSIS
12controller uda0 at uba? csr 0177550 vector udaintr
13.br
14disk ra0 at uda0 drive 0
15.SH DESCRIPTION
16The UDA50 is an intelligent disk controller for the UNIBUS.
17It supports the RA80 124MB disk drive.
18.PP
19Files with minor device numbers 0 through 7 refer to various portions
20of drive 0;
21minor devices 8 through 15 refer to drive 1, etc.
22The standard device names begin with ``ra'' followed by
23the drive number and then a letter a-h for partitions 0-7 respectively.
24The character ? stands here for a drive number in the range 0-7.
25.PP
26The origin and size of the pseudo-disks on each drive are
27as follows:
28.PP
29.nf
30.ta .5i +\w'000000 'u +\w'000000 'u
31RA80 124M drive partitions:
32 disk start length
33 ra?a 0 15884
34 ra?b 15884 33440
35 ra?c 0 237298
36 ra?d 0 0
37 ra?e 0 0
38 ra?f 0 0
39 ra?g 49324 82080
40 ra?h 131404 105994
41.DT
42.fi
43.PP
44It is unwise for all of these files to be present in one installation,
45since there is overlap in addresses and protection becomes
46a sticky matter.
47The ra?a partition is normally used for the root file system,
48the ra?b partition as a paging area,
49and the ra?c partition for pack-pack copying (it maps the entire disk).
50Both ra?g and ra?h are used to map the
51remaining cylinders.
52.PP
53The block files access the disk via the system's normal
54buffering mechanism and may be read and written without regard to
55physical disk records. There is also a `raw' interface
56which provides for direct transmission between the disk
57and the user's read or write buffer.
58A single read or write call results in exactly one I/O operation
59and therefore raw I/O is considerably more efficient when
60many words are transmitted. The names of the raw files
61conventionally begin with an extra `r.'
62.PP
63In raw I/O counts should be a multiple of 512 bytes (a disk sector).
64Likewise
65.I seek
66calls should specify a multiple of 512 bytes.
67.SH FILES
68/dev/ra[0-7][a-h] block files
69.br
70/dev/rra[0-7][a-h] raw files
71.SH SEE ALSO
72hk(4), hp(4), up(4)
73.SH DIAGNOSTICS
74\fBra%d%c: hard error sn%d udasa %o, state %d\fR.
75.br
76\fBra%d%c: hard error sn%d status %o\fR.
77An unrecoverable
78error occured during transfer of the specified sector of the specified
79disk partition. The contents of the udasa register are printed
80in octal and symbolically with bits decoded. The internal state is also
81printed. In the second form, the MSCP status is printed.
82The error was either unrecoverable, or a large number of retry attempts
83(including offset positioning and drive recalibration) could not
84recover the error.
85.PP
86\fBra%d%c: hard error sn%d OFFLINE\fR. The drive was spun down or off
87line when it was accessed. The i/o operation is not recoverable.
88.PP
89\fBuda%d: random interrupt ignored\fR. The UDA received an interrupt
90before it was initialized.
91.PP
92\fBuda%d: fatal error (%o)\fR. A fatal error was noticed in the UDA
93interrupt routine. The contents of udasa are printed. The controller
94will be reinitialized.
95.PP
96\fBuda%d: [soft|hard] error, controller error, event 0%o\fR.
97.br
98\fBuda%d: [soft|hard] error, host memory access error, event 0%o, addr 0%o\fR.
99.br
100\fBuda%d: [soft|hard] error, disk transfer error, unit %d, grp %d, cyl %d,
101sec %d, trk %d, lbn %d, retry %d, level %d\fR.
102.br
103\fBuda%d: [soft|hard] error, SDI error, unit %d, event 0%o, cyl %d\fR.
104.br
105\fBuda%d: [soft|hard] error, small disk error, unit %d, event 0%o, cyl %d\fR.
106.br
107\fBuda%d: [soft|hard] error, unknown error, unit %d, format 0%o, event 0%o\fR.
108.br
109See the driver and the UDA and MSCP manuals.
110.SH BUGS
111In raw I/O
112.I read
113and
114.IR write (2)
115truncate file offsets to 512-byte block boundaries,
116and
117.I write
118scribbles on the tail of incomplete blocks.
119Thus,
120in programs that are likely to access raw devices,
121.I read, write
122and
123.IR lseek (2)
124should always deal in 512-byte multiples.
125.PP
126A program to analyze the logged error information (even in its
127present reduced form) is needed. Error messages should be more
128consistent.
129.PP
130The partition tables for the file systems should be read off of each
131pack, as they are never quite what any single installation would prefer,
132and this would make packs more portable.
133.PP
134Dumps to the swap area on system crashes are not implemented.
135.PP
136Booting via block zero is not (and will not be) supported. The ``boot''
137program must be loaded from the console storage device.
138.PP
139Although the device supports unit numbers up to 255, the driver only
140supports unit numbers up to 7.