File:  [CSRG BSD Unix] / 43BSDReno / share / man / man4 / man4.hp300 / rd.4
Revision 1.1: download - view: text, annotated - select for diffs
Tue Apr 24 16:12:57 2018 UTC (8 years, 1 month ago) by root
CVS tags: MAIN, HEAD
Initial revision

.\" Copyright (c) 1990 The Regents of the University of California.
.\" All rights reserved.
.\"
.\" This code is derived from software contributed to Berkeley by
.\" the Systems Programming Group of the University of Utah Computer
.\" Science Department.
.\"
.\" Redistribution and use in source and binary forms are permitted provided
.\" that: (1) source distributions retain this entire copyright notice and
.\" comment, and (2) distributions including binaries display the following
.\" acknowledgement:  ``This product includes software developed by the
.\" University of California, Berkeley and its contributors'' in the
.\" documentation or other materials provided with the distribution and in
.\" all advertising materials mentioning features or use of this software.
.\" Neither the name of the University nor the names of its contributors may
.\" be used to endorse or promote products derived from this software without
.\" specific prior written permission.
.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
.\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
.\"
.\"	@(#)rd.4	5.1 (Berkeley) 6/29/90
.\"
.TH RD 4 "June 29, 1990"
.UC 7
.SH NAME
rd \- CS/80 disk interface
.SH SYNOPSIS
.B "master hpib? at scode?"
.br
.B "disk rd? at hpib? slave?"
.SH DESCRIPTION
This is a generic CS/80 disk driver.
Only a small number of possible CS/80 drives are supported,
but others can easily be added by adding tables to the driver.
.PP
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.
The standard device names begin with ``rd'' followed by
the drive number and then a letter a-h for partitions 0-7 respectively.
The character ? stands here for a drive number in the range 0-7.
.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.'
.PP
In raw I/O counts should be a multiple of 512 bytes (a disk sector).
Likewise
.I seek
calls should specify a multiple of 512 bytes.
.SH "DISK SUPPORT"
The driver interrogates the controller
to determine the type of drive attached.
The driver recognizes the following drives:
7912, 7914, 7933, 7936, 7937, 7945, 7957A/B, 7958A/B,
7959B, 7962, 7963, 9122, 9134, 7912, 7936, and 9122,
not all of which have been tested.
The origin and size of the pseudo-disks on each drive are
as follows:
.PP
.nf
.ta .5i +\w'000000    'u +\w'000000    'u +\w'000000    'u
7945/7946 partitions:
	disk	start	length	cyls
	rd?a	112	15904	1-142
	rd?b	16016	20160	143-322
	rd?c	0	108416	0-967
	rd?d	16016	40320	143-502
	rd?e	undefined
	rd?f	undefined
	rd?g	36176	72240	323-967
	rd?h	56336	52080	503-967
.PP
9134D partitions:
	disk	start	length	cyls
	rd?a	96	15936	1-166
	rd?b	16032	13056	167-302
	rd?c	0	29088	0-302
	rd?d	undefined
	rd?e	undefined
	rd?f	undefined
	rd?g	undefined
	rd?h	undefined
.PP
9122S partitions:
	disk	start	length	cyls
	rd?a	undefined
	rd?b	undefined
	rd?c	0	1232	0-76
	rd?d	undefined
	rd?e	undefined
	rd?f	undefined
	rd?g	undefined
	rd?h	undefined
.PP
7912P partitions:
	disk	start	length	cyls
	rd?a	0	15904	0-70
	rd?b	16128	22400	72-171
	rd?c	0	128128	0-571
	rd?d	16128	42560	72-261
	rd?e	undefined
	rd?f	undefined
	rd?g	38528	89600	172-571
	rd?h	58688	69440	262-571
.PP
7914CT/P partitions:
	disk	start	length	cyls
	rd?a	224	15904	1-71
	rd?b	16128	40320	72-251
	rd?c	0	258048	0-1151
	rd?d	16128	64960	72-361
	rd?e	81088	98560	362-801
	rd?f	179648	78400	802-1151
	rd?g	56448	201600	252-1151
	rd?h	81088	176960	362-1151
.PP
7958A partitions:
	disk	start	length	cyls
	rd?a	252	16128	1-64
	rd?b	16380	32256	65-192
	rd?c	0	255276	0-1012
	rd?d	16380	48384	65-256
	rd?e	64764	100800	257-656
	rd?f	165564	89712	657-1012
	rd?g	48636	206640	193-1012
	rd?h	64764	190512	257-1012
.PP
7957A partitions:
	disk	start	length	cyls
	rd?a	154	16016	1-104
	rd?b	16170	24640	105-264
	rd?c	0	159544	0-1035
	rd?d	16170	42350	105-379
	rd?e	58520	54824	380-735
	rd?f	113344	46200	736-1035
	rd?g	40810	118734	265-1035
	rd?h	58520	101024	380-1035
.PP
7933H partitions:
	disk	start	length	cyls
	rd?a	598	16146	1-27
	rd?b	16744	66976	28-139
	rd?c	0	789958	0-1320
	rd?d	83720	16146	140-166
	rd?e	99866	165646	167-443
	rd?f	265512	165646	444-720
	rd?g	83720	706238	140-1320
	rd?h	431158	358800	721-1320
.PP
9134L partitions:
	disk	start	length	cyls
	rd?a	80	15920	1-199
	rd?b	16000	20000	200-449
	rd?c	0	77840	0-972
	rd?d	16000	32000	200-599
	rd?e	undefined
	rd?f	undefined
	rd?g	36000	41840	450-972
	rd?h	48000	29840	600-972
.PP
7936H partitions:
	disk	start	length	cyls
	rd?a	861	16359	1-19
	rd?b	17220	67158	20-97
	rd?c	0	600978	0-697
	rd?d	84378	16359	98-116
	rd?e	100737	120540	117-256
	rd?f	220416	120540	256-395
	rd?g	84378	516600	98-697
	rd?h	341817	259161	397-697
.PP
7937H partitions:
	disk	start	length	cyls
	rd?a	1599	15990	1-10
	rd?b	17589	67158	11-52
	rd?c	0	1116102	0-697
	rd?d	84747	15990	53-62
	rd?e	100737	246246	63-216
	rd?f	346983	246246	217-370
	rd?g	84747	1031355	53-697
	rd?h	593229	522873	371-697
.PP
7957B/7961B partitions:
	disk	start	length	cyls
	rd?a	126	16002	1-127
	rd?b	16128	32760	128-387
	rd?c	0	159894	0-1268
	rd?d	16128	49140	128-517
	rd?e	65268	50400	518-917
	rd?f	115668	44226	918-1268
	rd?g	48888	111006	388-1268
	rd?h	65268	94626	518-1268
.PP
7958B/7962B partitions:
	disk	start	length	cyls
	rd?a	378	16254	1-43
	rd?b	16632	32886	44-130
	rd?c	0	297108	0-785
	rd?d	16632	49140	44-173
	rd?e	65772	121716	174-495
	rd?f	187488	109620	496-785
	rd?g	49518	247590	131-785
	rd?h	65772	231336	174-785
.PP
7959B/7963B partitions:
	disk	start	length	cyls
	rd?a	378	16254	1-43
	rd?b	16632	49140	44-173
	rd?c	0	594216	0-1571
	rd?d	16632	65772	44-217
	rd?e	82404	303912	218-1021
	rd?f	386316	207900	1022-1571
	rd?g	65772	528444	174-1571
	rd?h	82404	511812	218-1571
.PP
.DT
.fi
.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.
The eight partitions as given support four basic, non-overlapping layouts,
though not all partitions exist on all drive types.
.PP
In the first layout there are three partitions and a ``bootblock'' area.
The bootblock area is at the beginning of the disk and holds
the standalone disk boot program.
The rd?a partition is for the root file system,
rd?b is a paging/swapping area, and
rd?g is for everything else.
.PP
The second layout is the same idea,
but has a larger paging/swapping partition (rd?d) and
a smaller ``everything else'' partition (rd?h).
This layout is better for environments which run many large processes.
.PP
The third layout is a variation of the second,
but breaks the rd?h partition into two partitions, rd?e and rd?f.
.PP
The final layout is intended for a large, single file system second disk.
It is also used when writing out the boot program since it is the only
partition mapping the bootblock area.
.SH FILES
/dev/rd[0-7][a-h]	block files
.br
/dev/rrd[0-7][a-h]	raw files
.SH DIAGNOSTICS
\fBrd%d err: v%d u%d, R0x%x F0x%x A0x%x I0x%x, block %d\fR
.br
An unrecoverable data error occurred during transfer of the
specified block on the specified disk.
.SH BUGS
The current disk partitioning is totally bogus.
CS/80 drives have 256 byte sectors which are mapped to 512 byte
``sectors'' by the driver.
Since some CS/80 drives have an odd number of sectors per cylinder,
the disk geometry used is not always accurate.
.PP
The partition tables for the file systems should be read off of each pack,
as they are never quite what any single installation would prefer,
and this would make packs more portable.
.PP
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.
.PP
A program to analyze the logged error information (even in its
present reduced form) is needed.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.