1*47672Scael.\" Copyright (c) 1990, 1991 The Regents of the University of California. 244682Sbostic.\" All rights reserved. 344682Sbostic.\" 444682Sbostic.\" This code is derived from software contributed to Berkeley by 544682Sbostic.\" the Systems Programming Group of the University of Utah Computer 644682Sbostic.\" Science Department. 744682Sbostic.\" %sccs.include.redist.man% 844682Sbostic.\" 9*47672Scael.\" @(#)rd.4 5.2 (Berkeley) 03/27/91 1044682Sbostic.\" 11*47672Scael.Dd 12*47672Scael.Dt RD 4 hp300 13*47672Scael.Os 14*47672Scael.Sh NAME 15*47672Scael.Nm rd 16*47672Scael.Nd 17*47672Scael.Tn CS/80 18*47672Scaeldisk interface 19*47672Scael.Sh SYNOPSIS 20*47672Scael.Cd "master hpib? at scode?" 21*47672Scael.Cd "disk rd? at hpib? slave?" 22*47672Scael.Sh DESCRIPTION 23*47672ScaelThis is a generic 24*47672Scael.Tn CS/80 25*47672Scaeldisk driver. 26*47672ScaelOnly a small number of possible 27*47672Scael.Tn CS/80 28*47672Scaeldrives are supported, 2944682Sbosticbut others can easily be added by adding tables to the driver. 30*47672ScaelIt is a typical block-device driver; see 31*47672Scael.Xr physio 4 . 32*47672Scael.Pp 33*47672ScaelThe script 34*47672Scael.Xr MAKEDEV 8 35*47672Scaelshould be used to create the 36*47672Scael.Nm rd 37*47672Scaelspecial files; consult 38*47672Scael.Xr mknod 8 39*47672Scaelif a special file needs to be made manually. 40*47672Scael.Sh DISK SUPPORT 4144682SbosticThe driver interrogates the controller 4244682Sbosticto determine the type of drive attached. 4344682SbosticThe driver recognizes the following drives: 44*47672Scael7912, 7914, 7933, 7936, 7937, 7945, 45*47672Scael.Tn 757A/B , 46*47672Scael.Tn 7958A/B , 47*47672Scael.Tn 7959B, 48*47672Scael7962, 7963, 9122, 9134, 7912, 7936, 49*47672Scaeland 9122, 5044682Sbosticnot all of which have been tested. 51*47672ScaelSpecial file names begin with 52*47672Scael.Sq Li rd 53*47672Scaeland 54*47672Scael.Sq Li rrd 55*47672Scaelfor the block and character files respectively. The second 56*47672Scaelcomponent of the name, a drive unit number in the range of zero to 57*47672Scaelseven, is represented by a 58*47672Scael.Sq Li ? 59*47672Scaelin the disk layouts below. The last component of the name is the 60*47672Scaelfile system partition 61*47672Scaeland is designated 62*47672Scaelby a letter from 63*47672Scael.Sq Li a 64*47672Scaelto 65*47672Scael.Sq Li h 66*47672Scaelwhich also corresponds to a minor device number sets: zero to seven, 67*47672Scaeleight to 15, 16 to 23 and so forth for drive zero, drive two and drive 68*47672Scaelthree respectively 69*47672Scael(see physio 4 ) . 70*47672ScaelThe location and size (in sectors) of the 71*47672Scaelpartitions for these drives: 72*47672Scael.Bl -column header diskx undefined length 73*47672Scael.Tn 7945/7946 No partitions: 74*47672Scael.Sy disk start length cyls 7544682Sbostic rd?a 112 15904 1-142 7644682Sbostic rd?b 16016 20160 143-322 7744682Sbostic rd?c 0 108416 0-967 7844682Sbostic rd?d 16016 40320 143-502 7944682Sbostic rd?e undefined 8044682Sbostic rd?f undefined 8144682Sbostic rd?g 36176 72240 323-967 8244682Sbostic rd?h 56336 52080 503-967 83*47672Scael 84*47672Scael.Tn 9134D No partitions: 85*47672Scael.Sy disk start length cyls 8644682Sbostic rd?a 96 15936 1-166 8744682Sbostic rd?b 16032 13056 167-302 8844682Sbostic rd?c 0 29088 0-302 8944682Sbostic rd?d undefined 9044682Sbostic rd?e undefined 9144682Sbostic rd?f undefined 9244682Sbostic rd?g undefined 9344682Sbostic rd?h undefined 94*47672Scael 95*47672Scael.Tn 9122S No partitions: 96*47672Scael.Sy disk start length cyls 9744682Sbostic rd?a undefined 9844682Sbostic rd?b undefined 9944682Sbostic rd?c 0 1232 0-76 10044682Sbostic rd?d undefined 10144682Sbostic rd?e undefined 10244682Sbostic rd?f undefined 10344682Sbostic rd?g undefined 10444682Sbostic rd?h undefined 105*47672Scael 106*47672Scael.Tn 7912P No partitions: 107*47672Scael.Sy disk start length cyls 10844682Sbostic rd?a 0 15904 0-70 10944682Sbostic rd?b 16128 22400 72-171 11044682Sbostic rd?c 0 128128 0-571 11144682Sbostic rd?d 16128 42560 72-261 11244682Sbostic rd?e undefined 11344682Sbostic rd?f undefined 11444682Sbostic rd?g 38528 89600 172-571 11544682Sbostic rd?h 58688 69440 262-571 116*47672Scael 117*47672Scael.Tn 7914CT/P No partitions: 118*47672Scael.Sy disk start length cyls 11944682Sbostic rd?a 224 15904 1-71 12044682Sbostic rd?b 16128 40320 72-251 12144682Sbostic rd?c 0 258048 0-1151 12244682Sbostic rd?d 16128 64960 72-361 12344682Sbostic rd?e 81088 98560 362-801 12444682Sbostic rd?f 179648 78400 802-1151 12544682Sbostic rd?g 56448 201600 252-1151 12644682Sbostic rd?h 81088 176960 362-1151 127*47672Scael 128*47672Scael.Tn 7958A No partitions: 129*47672Scael.Sy disk start length cyls 13044682Sbostic rd?a 252 16128 1-64 13144682Sbostic rd?b 16380 32256 65-192 13244682Sbostic rd?c 0 255276 0-1012 13344682Sbostic rd?d 16380 48384 65-256 13444682Sbostic rd?e 64764 100800 257-656 13544682Sbostic rd?f 165564 89712 657-1012 13644682Sbostic rd?g 48636 206640 193-1012 13744682Sbostic rd?h 64764 190512 257-1012 138*47672Scael 139*47672Scael.Tn 7957A No partitions: 140*47672Scael.Sy disk start length cyls 14144682Sbostic rd?a 154 16016 1-104 14244682Sbostic rd?b 16170 24640 105-264 14344682Sbostic rd?c 0 159544 0-1035 14444682Sbostic rd?d 16170 42350 105-379 14544682Sbostic rd?e 58520 54824 380-735 14644682Sbostic rd?f 113344 46200 736-1035 14744682Sbostic rd?g 40810 118734 265-1035 14844682Sbostic rd?h 58520 101024 380-1035 149*47672Scael 150*47672Scael.Tn 7933H No partitions: 151*47672Scael.Sy disk start length cyls 15244682Sbostic rd?a 598 16146 1-27 15344682Sbostic rd?b 16744 66976 28-139 15444682Sbostic rd?c 0 789958 0-1320 15544682Sbostic rd?d 83720 16146 140-166 15644682Sbostic rd?e 99866 165646 167-443 15744682Sbostic rd?f 265512 165646 444-720 15844682Sbostic rd?g 83720 706238 140-1320 15944682Sbostic rd?h 431158 358800 721-1320 160*47672Scael 161*47672Scael.Tn 9134L No partitions: 162*47672Scael.Sy disk start length cyls 16344682Sbostic rd?a 80 15920 1-199 16444682Sbostic rd?b 16000 20000 200-449 16544682Sbostic rd?c 0 77840 0-972 16644682Sbostic rd?d 16000 32000 200-599 16744682Sbostic rd?e undefined 16844682Sbostic rd?f undefined 16944682Sbostic rd?g 36000 41840 450-972 17044682Sbostic rd?h 48000 29840 600-972 171*47672Scael 172*47672Scael.Tn 7936H No partitions: 173*47672Scael.Sy disk start length cyls 17444682Sbostic rd?a 861 16359 1-19 17544682Sbostic rd?b 17220 67158 20-97 17644682Sbostic rd?c 0 600978 0-697 17744682Sbostic rd?d 84378 16359 98-116 17844682Sbostic rd?e 100737 120540 117-256 17944682Sbostic rd?f 220416 120540 256-395 18044682Sbostic rd?g 84378 516600 98-697 18144682Sbostic rd?h 341817 259161 397-697 182*47672Scael 183*47672Scael.Tn 7937H No partitions: 184*47672Scael.Sy disk start length cyls 18544682Sbostic rd?a 1599 15990 1-10 18644682Sbostic rd?b 17589 67158 11-52 18744682Sbostic rd?c 0 1116102 0-697 18844682Sbostic rd?d 84747 15990 53-62 18944682Sbostic rd?e 100737 246246 63-216 19044682Sbostic rd?f 346983 246246 217-370 19144682Sbostic rd?g 84747 1031355 53-697 19244682Sbostic rd?h 593229 522873 371-697 193*47672Scael 194*47672Scael.Tn 7957B/7961B No partitions: 195*47672Scael.Sy disk start length cyls 19644682Sbostic rd?a 126 16002 1-127 19744682Sbostic rd?b 16128 32760 128-387 19844682Sbostic rd?c 0 159894 0-1268 19944682Sbostic rd?d 16128 49140 128-517 20044682Sbostic rd?e 65268 50400 518-917 20144682Sbostic rd?f 115668 44226 918-1268 20244682Sbostic rd?g 48888 111006 388-1268 20344682Sbostic rd?h 65268 94626 518-1268 204*47672Scael 205*47672Scael.Tn 7958B/7962B No partitions: 206*47672Scael.Sy disk start length cyls 20744682Sbostic rd?a 378 16254 1-43 20844682Sbostic rd?b 16632 32886 44-130 20944682Sbostic rd?c 0 297108 0-785 21044682Sbostic rd?d 16632 49140 44-173 21144682Sbostic rd?e 65772 121716 174-495 21244682Sbostic rd?f 187488 109620 496-785 21344682Sbostic rd?g 49518 247590 131-785 21444682Sbostic rd?h 65772 231336 174-785 215*47672Scael 216*47672Scael.Tn 7959B/7963B No partitions: 217*47672Scael.Sy disk start length cyls 21844682Sbostic rd?a 378 16254 1-43 21944682Sbostic rd?b 16632 49140 44-173 22044682Sbostic rd?c 0 594216 0-1571 22144682Sbostic rd?d 16632 65772 44-217 22244682Sbostic rd?e 82404 303912 218-1021 22344682Sbostic rd?f 386316 207900 1022-1571 22444682Sbostic rd?g 65772 528444 174-1571 22544682Sbostic rd?h 82404 511812 218-1571 226*47672Scael.El 227*47672Scael.Pp 22844682SbosticThe eight partitions as given support four basic, non-overlapping layouts, 22944682Sbosticthough not all partitions exist on all drive types. 230*47672Scael.Pp 23144682SbosticIn the first layout there are three partitions and a ``bootblock'' area. 23244682SbosticThe bootblock area is at the beginning of the disk and holds 23344682Sbosticthe standalone disk boot program. 234*47672ScaelThe 235*47672Scael.Pa rd?a 236*47672Scaelpartition is for the root file system, 237*47672Scael.Pa rd?b 238*47672Scaelis a paging/swapping area, and 239*47672Scael.Pa rd?g 240*47672Scaelis for everything else. 241*47672Scael.Pp 24244682SbosticThe second layout is the same idea, 243*47672Scaelbut has a larger paging/swapping partition 244*47672Scael.Pq Pa rd?d 245*47672Scaeland 246*47672Scaela smaller ``everything else'' partition 247*47672Scael.Pq Pa rd?h . 24844682SbosticThis layout is better for environments which run many large processes. 249*47672Scael.Pp 25044682SbosticThe third layout is a variation of the second, 251*47672Scaelbut breaks the 252*47672Scael.Pa rd?h 253*47672Scaelpartition into two partitions, 254*47672Scael.Pa rd?e 255*47672Scaeland 256*47672Scael.Pa rd?f . 257*47672Scael.Pp 25844682SbosticThe final layout is intended for a large, single file system second disk. 25944682SbosticIt is also used when writing out the boot program since it is the only 26044682Sbosticpartition mapping the bootblock area. 261*47672Scael.Sh FILES 262*47672Scael.Bl -tag -width /dev/rrd[0-7][a-h] -compact 263*47672Scael.It Pa /dev/rd[0-7][a-h] 264*47672Scaelblock files 265*47672Scael.It Pa /dev/rrd[0-7][a-h] 266*47672Scaelraw files 267*47672Scael.El 268*47672Scael.Sh DIAGNOSTICS 269*47672Scael.Bl -diag 270*47672Scael.It "rd%d err: v%d u%d, R0x%x F0x%x A0x%x I0x%x, block %d" 27144682SbosticAn unrecoverable data error occurred during transfer of the 27244682Sbosticspecified block on the specified disk. 273*47672Scael.El 274*47672Scael.Sh HISTORY 275*47672ScaelThe 276*47672Scael.Nm 277*47672Scaeldriver 278*47672Scael.Ud 279*47672Scael.Sh BUGS 28044682SbosticThe current disk partitioning is totally bogus. 281*47672Scael.Tn CS/80 282*47672Scaeldrives have 256 byte sectors which are mapped to 512 byte 28344682Sbostic``sectors'' by the driver. 284*47672ScaelSince some 285*47672Scael.Tn CS/80 286*47672Scaeldrives have an odd number of sectors per cylinder, 28744682Sbosticthe disk geometry used is not always accurate. 288*47672Scael.Pp 28944682SbosticThe partition tables for the file systems should be read off of each pack, 29044682Sbosticas they are never quite what any single installation would prefer, 29144682Sbosticand this would make packs more portable. 292*47672Scael.Pp 29344682SbosticA program to analyze the logged error information (even in its 29444682Sbosticpresent reduced form) is needed. 295