%!PS-Adobe-1.0 %%Creator: devps (Pipeline Associates, Inc.) %%CreationDate: Fri Sep 13 13:08:05 1996 %%Pages: (atend) %%DocumentFonts: (atend) /devps 180 dict def devps begin /res 10.000000 def /y_offset 843 def /X{exch}bind def /mm {transform round X round X itransform} bind def /r{rmoveto}bind def /m{moveto}bind def /l{lineto}bind def /rl{rlineto}bind def /st{stroke}bind def /gs{gsave}bind def /gr{grestore}bind def /cp{currentpoint}bind def /np{newpath}bind def /ct{curveto}bind def systemdict /setpacking known { /savepacking currentpacking def true setpacking } if /m0{0 0 moveto}bind def /xc{//res div}bind def /yc{//res neg div //y_offset add}bind def /lc{yc X xc X l st}bind def /mc{yc X xc X m}bind def /el{gs /a X def a div 1 X scale cp np a xc 2 div 0 360 arc st gr}bind def /ar{cp 7 2 roll np xc 5 1 roll atan 3 1 roll atan X arc st}bind def /sp{yc X xc X 6 2 roll yc X xc X 6 2 roll yc X xc X 6 2 roll ct}bind def /V{//res neg div //y_offset add currentpoint pop X m}bind def /H{//res div 0 transform X round X itransform pop currentpoint X pop moveto}bind def /h{//res div 0 r}bind def /v{//res neg div 0 X r}bind def /S{X H show}bind def /A{H //res div 1 index stringwidth pop sub 1 index length div 0 3 2 roll ashow}bind def /psize 10 def /height 0 def /cheight { height 0 ne { height } { psize } ifelse } bind def /slant 0 def /FF{findfont X dup 30 div 0 mm pop setlinewidth /psize X def [psize 0 cheight slant sin slant cos div mul cheight 0 0] makefont setfont}bind def /shade{gs /dy X def /dx X def np m 0 /dy rl /dx 0 rl 0 /dy neg rl /dx neg 0 rl closepath .9 setgray fill gr}bind def 1 setlinecap /resolution res 72 mul def /startFig { /SavedState save def userdict maxlength dict begin currentpoint transform DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix itransform moveto /ury exch def /urx exch def /lly exch def /llx exch def /y exch 72 mul resolution div def /x exch 72 mul resolution div def currentpoint /cy exch def /cx exch def /sx x urx llx sub div def /sy y ury lly sub div def sx sy scale cx sx div llx sub cy sy div ury sub translate /DefFigCTM matrix currentmatrix def /initmatrix { DefFigCTM setmatrix } def /defaultmatrix { DefFigCTM exch copy } def /initgraphics { DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix DefFigCTM setmatrix } def /showpage { initgraphics } def }bind def /clipFig { currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll exch lineto exch lineto exch lineto closepath clip newpath moveto }bind def /doclip { llx lly urx ury clipFig } def /endFig { end SavedState restore }bind def /globalstart { fontnum psize slant height resolution currentpoint pagesave restore gsave }bind def /globalend { grestore moveto /resolution exch def /height exch def /slant exch def /psize exch def /fontnum exch def F /pagesave save def }bind def /fontnum 1 def systemdict /setpacking known { savepacking setpacking} if end /BP{ save mark devps begin m0 /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap currentlinejoin currentdash currentgray currentmiterlimit ] cvx def }bind def /EP{ end cleartomark restore showpage}def /Encoding-1 256 array def 0 1 255 {Encoding-1 exch /.notdef put} for Encoding-1 8#301 StandardEncoding 8#101 26 getinterval putinterval %A-B Encoding-1 8#341 StandardEncoding 8#141 26 getinterval putinterval %a-b Encoding-1 8#241 StandardEncoding 8#301 16 getinterval putinterval %accents Encoding-1 8#373 StandardEncoding 8#365 1 getinterval putinterval %dotlessi Encoding-1 dup 8#41 /copyright put dup 8#42 /registered put dup 8#43 /trademark put dup 8#44 /logicalnot put dup 8#45 /Eth put dup 8#46 /eth put dup 8#47 /Thorn put dup 8#50 /thorn put dup 8#51 /brokenbar put dup 8#52 /degree put dup 8#53 /divide put dup 8#54 /multiply put dup 8#55 /minus put dup 8#56 /onehalf put dup 8#57 /onequarter put dup 8#60 /threequarters put dup 8#101 /Aacute put dup 8#102 /Acircumflex put dup 8#103 /Adieresis put dup 8#104 /Agrave put dup 8#105 /Aring put dup 8#106 /Atilde put dup 8#107 /Ccedilla put dup 8#110 /Eacute put dup 8#111 /Ecircumflex put dup 8#112 /Edieresis put dup 8#113 /Egrave put dup 8#114 /Iacute put dup 8#115 /Icircumflex put dup 8#116 /Idieresis put dup 8#117 /Igrave put dup 8#120 /Ntilde put dup 8#121 /Oacute put dup 8#122 /Ocircumflex put dup 8#123 /Odieresis put dup 8#124 /Ograve put dup 8#125 /Otilde put dup 8#126 /Scaron put dup 8#127 /Uacute put dup 8#130 /Ucircumflex put dup 8#131 /Udieresis put dup 8#132 /Ugrave put dup 8#133 /Ydieresis put dup 8#134 /Zcaron put dup 8#135 /aacute put dup 8#136 /acircumflex put dup 8#137 /adieresis put dup 8#140 /agrave put dup 8#141 /aring put dup 8#142 /atilde put dup 8#143 /ccedilla put dup 8#144 /eacute put dup 8#145 /ecircumflex put dup 8#146 /edieresis put dup 8#147 /egrave put dup 8#150 /iacute put dup 8#151 /icircumflex put dup 8#152 /idieresis put dup 8#153 /igrave put dup 8#154 /ntilde put dup 8#155 /oacute put dup 8#156 /ocircumflex put dup 8#157 /odieresis put dup 8#160 /ograve put dup 8#161 /otilde put dup 8#162 /scaron put dup 8#163 /uacute put dup 8#164 /ucircumflex put dup 8#165 /udieresis put dup 8#166 /ugrave put dup 8#167 /ydieresis put dup 8#170 /zcaron put pop /Enc-dict 30 dict def Enc-dict /tmpstr1 50 string put Enc-dict /tmpstr2 50 string put Enc-dict /tmpstr3 50 string dup (Encoding-) exch cvs pop put /AEnc-def { % arguments: the original font's name, encoding nr Enc-dict begin tmpstr2 cvs /Enc-no exch def % Remember the number in a string dup /OrigName exch def % remember the name findfont dup maxlength dict /newdict exch def % get dictionary for new font { exch dup /FID ne { exch newdict 3 1 roll put } { pop pop } % Ignore FID ifelse } forall newdict begin /Encoding tmpstr3 9 Enc-no putinterval tmpstr3 0 9 Enc-no length add getinterval cvn load def % Replace encoding currentdict /UniqueID known { /UniqueID UniqueID Enc-no cvi 49999 mul add def } if % Derive New UniqueID end % newdict /FNlength OrigName tmpstr1 cvs length def % convert name, remember length FNlength 1 add Enc-no length add string dup 0 OrigName tmpstr1 cvs putinterval dup FNlength (-) putinterval dup FNlength 1 add Enc-no putinterval dup 0 tmpstr1 0 FNlength getinterval putinterval % Add old name cvn dup newdict /FontName 3 2 roll put newdict definefont end % Enc-dict } def /Times-Roman 1 AEnc-def pop /R-1{/Times-Roman-1 FF}def /Times-Bold 1 AEnc-def pop /B-1{/Times-Bold-1 FF}def /R{/Times-Roman FF}def /B{/Times-Bold FF}def %%EndProlog %%Page: 1 1 BP /slant 0 def /height 0 def 480 V 10 R 720(SD)S 857(\()S 899(4)S 957(\))S 2696(Eighth)S (Edition)296 2989 A 4990(SD)S 5127(\()S 5169(4)S 5227(\))S 960 V 9 R 720(N)S 722(NA)S 790(AM)S 858(ME)S 940(E)S 1080 V 10 R 1080(sd,)S 1219(st,)S 1336(sg)S 10 R-1 1450(-)S 10 R 1532(SCSI)S 1770(hard)S 1974(disk)S 2166(/)S 2219(tape)S 2412(/)S 2465(generic)S 1248 V 9 R 720(D)S 722(DE)S 790(ES)S 848(SC)S 900(CR)S 962(RI)S 1024(IP)S 1057(PT)S 1109(TI)S 1167(IO)S 1200(ON)S 1268(N)S 1368 V 10 R 1080(The)S 10 B 1263(sd*)S 10 R 1408(,)S 10 B 1459(st*)S 10 R 1582(,)S 10 B 1633(sg*)S 10 R 1798(family)S 2087(of)S 2197(devices)S 2525(refer)S 2743(to)S 2847(the)S 2996(SCSI)S 3235(hard)S 3440(disk,)S 3658(tape)S 3852(and)S 4023(generic)S 4347(driver)S 4615(using)S 4859(the)S 5009(Adap-)S 1488 V 1080(tec)S (154x)200 1229 A 1460(series)S 1721(of)S 1836(controllers.)S 2348(This)S 2557(manual)S 2883(page)S 3103(only)S 3311(describes)S 3716(the)S 3869(differences)S 4348(between)S 4714(the)S 4867(sd)S 4986(and)S 5161(hd)S 1608 V 1080(devices,)S 1432(read)S 10 B 1631(hd)S 10 R 1743(\(4\))S 1886(\256rst.)S 1776 V 1080(The)S 1269(devices)S 1603(numbers)S 1981(of)S 2098(the)S 2254(SCSI)S 2500(devices)S 2835(are)S 2992(statically)S 3389(mapped)S 3740(onto)S 3951(the)S 4107(SCSI)S 4353(targets)S 4655(0)S 4738(to)S 4849(7.)S 4982(This)S 5194(is)S 1896 V (done)195 1080 A 1310(like)S 1496(the)S 1654(hd)S 1789(devices)S 2125(with)S 10 B 2338(sd[0)S 10 B-1 2517(-)S 10 B 2574(4])S 10 R 2692(referring)S 3080(to)S 3192(target)S 3456(0,)S 10 B 3565(sd[5)S 10 B-1 3744(-)S 10 B 3801(9])S 10 R 3919(to)S 4031(target)S 4295(1,)S 4404(etc.)S 4606(The)S 4797(logical)S 5105(unit)S 2016 V 1080(number)S 1412(is)S 1504(always)S 1809(0,)S (because)319 1909 A 2253(devices)S 2580(with)S 2784(more)S 3016(than)S 3214(one)S 3384(logical)S 3683(unit)S 3864(are)S 4013(virtually)S 4379(extinct.)S 4728(The)S 4910(mapping)S 2136 V 1080(may)S 1278(be)S 1398(changed)S 1758(from)S 1979(the)S (boot)178 2127 A 2330(environment)S 2863(however)S 3235(\(see)S 10 B 3423(boot)S 10 R 3613(\(8\)\).)S 2304 V 1080(Tapes)S 1355(start)S 1563(at)S 1670(minor)S 1944(device)S 2241(64,)S 2400(with)S 10 B 2613(nrst0)S 10 R 2872(at)S 2980(minor)S 3255(64,)S 10 B 3415(rst0)S 10 R 3618(at)S 3726(65,)S 10 B 3886(nrst1)S 10 R 4145(at)S 4253(66,)S 4413(etc.)S 4616(The)S 4808(mapping)S 5194(is)S 2424 V 1080(again)S 1332(static)S 1579(to)S 1691(target)S 1955(\(minor)S 10 R-1 2263(-)S 10 R 2354(64\))S 2522(/)S 2584(2.)S 2718(The)S 10 B 2909(rst)S 10 R 3060(devices)S 3395(rewind)S 3708(the)S 3864(tape)S 4065(on)S 4198(close,)S 4463(the)S 10 B 4619(nrst)S 10 R 4826(devices)S 5161(do)S 2544 V 1080(not.)S 1283(See)S 10 B 1454(mt)S 10 R 1572(\(1\),)S 1740(and)S 10 B 1910(mtio)S 10 R 2106(\(4\))S 2249(for)S 2392(a)S 2462(description)S 2934(of)S 3043(the)S 3191(commands)S 3652(that)S 3829(may)S 4028(be)S 4149(sent)S 4337(to)S 4441(the)S 4590(tape,)S 4809(either)S 5065(from)S 2664 V 1080(the)S 1228(command)S 1649(prompt)S 1964(or)S 2073(from)S 2294(a)S 2364(program.)S 2832 V (Through)346 1080 A 1452(the)S 1601(eight)S 1828(raw)S 2006(generic)S 2329(devices)S 10 B 2657(rsg[0)S 10 B-1 2875(-)S 10 B 2932(7])S 10 R 3042(starting)S 3370(at)S 3469(minor)S (120,)175 3735 A 3936(one)S 4107(can)S 4273(send)S 4483(SCSI)S 4722(commands)S 5183(to)S 2952 V 1080(any)S 1250(SCSI)S 1488(device)S 1776(from)S 1997(user)S 2190(mode.)S 2488(\(Minix-vmd)S 3004(only.\))S 3120 V 1080(The)S 1281(driver)S 1566(returns)S 1890(a)S 1979(drive)S 2230(geometry)S 2654(of)S 2782(64)S 2927(heads)S 3201(by)S 3346(32)S 3491(sectors)S 3816(per)S 3990(track)S 4237(for)S 4400(small)S 4663(disks)S 4914(with)S 5138(the)S 3240 V 1080(DIOCGETP)S 1617(ioctl.)S 1883(For)S 2060(large)S 2299(disks)S (255x63)300 2542 A 2879(is)S 2983(returned.)S 3406(The)S 3600(size)S 3794(in)S 3909(sectors)S 4226(is)S 4330(usually)S 4657(larger)S 4929(than)S 5138(the)S 3360 V 1080(largest)S 1379(cylinder)S 1740(number)S 2078(indicates,)S (because)319 2492 A 2842(the)S 2996(disk)S 3194(is)S 3292(not)S 3451(likely)S 3711(to)S 3820(exactly)S 4142(match)S 4419(that)S 4601(faked)S 4856(geometry.)S 3480 V 1080(Note)S 1301(that)S 1477(DOS)S 1704(may)S 1902(not)S 2055(be)S 2175(able)S 2368(to)S (access)258 2471 A 2754(those)S 2991(last)S 3156(few)S 3333(sectors.)S 3648 V 870(D)S 872(Di)S 947(is)S 977(sk)S 1018(k)S 1111(l)S 1113(li)S 1143(ik)S 1173(ke)S 1225(e)S 1313(d)S 1315(de)S 1367(ev)S 1414(vi)S 1466(ic)S 1496(ce)S 1543(es)S 1590(s.)S 1631(.)S 3768 V 1080(Removable)S 1571(disks)S (\(\257oppies\),)411 1810 A 2254(CD-ROM's)S 2763(and)S 2941(WORM)S 3298(disks)S 3537(may)S 3743(also)S 3938(be)S (accessed)353 4066 A (through)312 4452 A 4797(the)S 10 B 4953(sd)S 10 R 5082(dev-)S 3888 V 1080(ices.)S 1315(One)S 1511(is)S 1606(not)S 1762(allowed)S 2109(to)S 2215(write)S 2451(a)S 2524(WORM)S 2876(disk)S 3070(however,)S (because)319 3469 A 3815(it)S 3898(is)S 3992(likely)S 4248(to)S 4353(be)S 4475(taken)S 4720(from)S 4943(an)S 5065(alien)S 4008 V 1080(operating)S 1486(system,)S 1816(so)S 1931(it)S 2013(seems)S 2285(safer)S 2508(to)S 2613(not)S 2768(allow)S 3019(Minix)S 3291(to)S 3396(stomp)S 3668(over)S 3874(it.)S 4007(One)S 4202(usually)S 4519(needs)S 4775(special)S 5082(O.S.)S 4128 V (support)301 1080 A 1406(to)S 1509(keep)S 1724(one)S 1894(from)S (writing)291 2115 A 2431(to)S 2534(the)S 2682(same)S 2914(block)S 3162(twice.)S 4296 V 1080(The)S 10 B 1268(DIOCEJECT)S 10 R 1886(ioctl)S 2096(ejects)S 2358(CD-ROMs,)S (\257oppies,)343 2857 A 3232(etc.)S 3432(\(See)S 10 B 3644(eject)S 10 R 3847(\(1\).\))S 4081(A)S 4186(\256xed)S 4419(disk)S 4618(spins)S 4856(down)S 5111(if)S 5205(it)S 4416 V (supports)340 1080 A 1445(the)S 1593(stop)S 1785(command.)S 4584 V 870(S)S 872(SC)S 930(CS)S 999(SI)S 1057(I)S 1134(T)S 1136(Ta)S 1200(ap)S 1247(pe)S 1299(es)S 1346(s)S 4704 V 1080(There)S 1354(are)S 1517(two)S 1707(types)S 1958(of)S 2081(SCSI)S 2333(tapes)S 2579(drives)S (supported)396 2864 A 3299(by)S 3438(the)S 3600(driver:)S 3908(\256xed)S 4148(or)S 4271(variable)S 4635(block)S 4897(size)S 5093(tape)S 4824 V 1080(drives.)S 1409(Examples)S 1839(of)S 1956(the)S 2112(\256rst)S 2302(kind)S 2513(are)S 2670(cartridge)S 3062(tapes,)S 3327(with)S 3539(a)S 3617(\256xed)S (512)150 3851 A 4034(bytes)S 4279(block)S 4535(size.)S 4775(An)S 4931(Exabyte)S 4944 V 1080(tape)S 1280(drive)S 1519(has)S 1685(a)S 1762(variable)S 2119(block)S 2374(size,)S 2588(with)S 2800(a)S 2878(minimum)S 3301(of)S 3418(1)S 3501(byte)S 3707(and)S 3885(a)S 3963(maximum)S 4403(of)S (245760)300 4520 A 4853(bytes)S 5098(\(see)S 5064 V 1080(the)S 1248(documentation)S 1890(of)S 2019(such)S 2247(devices.\))S 2677(The)S 2878(maximum)S 3329(is)S 3440(truncated)S 3859(to)S (32767)250 3981 A 4275(bytes)S 4531(for)S 4693(Minix-86)S 5116(and)S 5184 V (61440)250 1080 A 1355(bytes)S 1592(for)S 1735(Minix-vmd,)S (because)319 2242 A 2586(the)S 2734(driver)S 3000(can't)S 3227(move)S 3475(more)S 3707(bytes)S 3944(in)S 4047(a)S 4117(single)S 4382(request.)S 5352 V 1080(A)S 1182(read)S 1385(or)S 1498(write)S 1736(to)S 1844(a)S 1919(\256xed)S 2150(block)S 2403(size)S 2590(tape)S 2788(must)S 3013(be)S 3138(a)S 3213(precise)S (multiple)335 3529 A 3894(of)S 4008(the)S 4161(block)S 4414(size,)S 4626(any)S 4801(other)S (count)223 5038 A 5472 V 1080(gives)S 1325(results)S 1621(in)S 1732(an)S 1860(I/O)S 2028(error.)S 2308(A)S 2414(read)S 2621(from)S 2850(a)S 2927(variable)S 3284(block)S 3539(sized)S 3778(tape)S 3978(must)S 4205(be)S 4332(large)S (enough)295 4566 A 4893(to)S (accept)258 5003 A 5592 V 1080(the)S 1244(block)S 1508(that)S 1700(is)S 1808(read,)S 2048(otherwise)S 2481(an)S 2617(I/O)S 2793(error)S (will)157 3031 A 3229(be)S 3365(returned.)S 3792(A)S 3906(write)S 4155(can)S 4336(be)S 4472(any)S 4658(size)S (above)240 4856 A 5138(the)S 5712 V 1080(minimum,)S 1526(creating)S 1882(a)S 1958(block)S 2212(of)S 2327(that)S 2509(size.)S 2747(If)S 2846(the)S 3000(write)S (count)223 3239 A 3492(is)S 3589(larger)S 3855(than)S 4058(the)S 4211(maximum)S 4648(block)S 4901(size)S 5088(then)S 5832 V 1080(more)S 1314(blocks)S 1603(are)S (written)286 1754 A (until)184 2067 A 2278(the)S (count)223 2428 A 2678(becomes)S 3057(zero.)S 3308(The)S 3492(last)S 3659(block)S 3909(must)S 4132(be)S 4255(larger)S 4519(than)S 4720(the)S 4871(minimum)S 5952 V 1080(of)S 1189(course.)S 1527(\(This)S 1765(minimum)S 2180(is)S 2272(often)S 2504(as)S 2613(small)S 2856(as)S 2965(1)S 3040(byte,)S 3263(as)S 3372(for)S 3515(the)S 3663(Exabyte.\))S 6120 V 1080(The)S 10 B 1263(mt)S 1408(blksize)S 10 R 1732(command)S 2155(may)S 2355(be)S 2477(used)S 2688(to)S 2793(select)S 3050(a)S 3122(\256xed)S 3350(block)S 3600(size)S 3784(for)S 3929(a)S 4001(variable)S 4353(block)S 4603(sized)S 4837(tape.)S 5082(This)S 6240 V (will)157 1080 A 1266(speed)S 1524(up)S 1653(I/O)S 1817(considerably)S 2360(for)S 2507(small)S 2753(block)S 3004(sizes.)S 3278(\(Some)S 3569(systems)S 3915(can)S 4083(only)S 4289(use)S 4451(\256xed)S 4680(mode)S 4931(and)S (will)157 5104 A 6360 V 1080(write)S 1313(an)S 1433(Exabyte)S 1788(tape)S 1981(with)S (1024)200 2185 A 2410(byte)S 2608(blocks,)S 2920(which)S 3191(read)S 3390(very)S 3594(slow)S 3809(in)S 3912(variable)S 4262(mode.\))S 6528 V 1080(A)S 1185(tape)S 1385(is)S 1484(a)S 1561(sequence)S 1962(of)S 2078(blocks)S 2372(and)S 2549(\256lemarks.)S 3006(A)S 3111(tape)S 3311(may)S 3516(be)S 3643(opened)S 3965(and)S 4142(blocks)S 4436(may)S 4641(be)S 4769(read)S 4976(from)S 5205(it)S 6648 V 1080(upto)S 1286(a)S 1359(\256lemark,)S 1748(after)S 1962(that)S 2141(all)S 2270(further)S 2573(reads)S 2814(return)S 3083(0.)S 3211(After)S 3453(the)S 3604(tape)S 3800(is)S 3895(closed)S 4180(and)S 4352(reopened)S 4748(one)S 4920(can)S 5087(read)S 6768 V 1080(the)S 1241(blocks)S 1541(following)S 1970(the)S 2131(\256lemark)S 2505(if)S 2605(using)S 2860(a)S (non-rewinding)592 2943 A 3574(device.)S 3926(This)S 4144(makes)S 4440(the)S 4602(tape)S (look)178 4809 A 5026(like)S 5216(a)S 6888 V 1080(sequence)S 1474(of)S 1583(\256les.)S 7056 V 1080(If)S 1186(a)S 1269(tape)S 1475(has)S 1647(been)S (written)286 1875 A 2199(to)S 2315(or)S 2437(opened)S 2765(in)S 2881(write-only)S 3339(mode,)S 3625(then)S 3836(a)S 3919(\256lemark)S 4293(is)S (written)286 4399 A 4724(if)S 4825(the)S 4987(tape)S 5194(is)S 7176 V 1080(closed)S 1368(or)S 1483(if)S 1576(a)S (space)224 1652 A 1907(command)S 2334(is)S 2432(issued.)S 2764(No)S 2918(extra)S 3151(\256lemark)S 3518(is)S (written)286 3616 A 3933(if)S 4026(the)S 4180(drive)S 4418(is)S 4516(instructed)S 4944(to)S 5053(write)S 7296 V 1080(\256lemarks.)S 7903 V 720(Page)S 941(1)S 4455(September)S 4911(13,)S (1996)200 5061 A 8143 V EP %%Page: 2 2 BP /slant 0 def /height 0 def 480 V 10 R 720(SD)S 857(\()S 899(4)S 957(\))S 2696(Eighth)S (Edition)296 2989 A 4990(SD)S 5127(\()S 5169(4)S 5227(\))S 960 V 870(R)S 872(Ra)S 941(aw)S 988(w)S 1104(G)S 1106(Ge)S 1181(en)S 1228(ne)S 1280(er)S 1327(ri)S 1363(ic)S 1393(c)S 1481(D)S 1483(De)S 1558(ev)S 1605(vi)S 1657(ic)S 1687(ce)S 1734(es)S 1781(s)S 1080 V 1080(Under)S 1363(Minix-vmd)S 1851(one)S 2027(can)S 2198(use)S 2363(the)S 2517(generic)S 2846(SCSI)S 3091(devices)S 3425(to)S 3535(program)S 3908(a)S 3985(SCSI)S 4230(device)S 4525(entirely)S 4865(from)S 5093(user)S 1200 V 1080(mode.)S 1389(The)S 1582(disk)S 1785(and)S 1966(tape)S 2170(devices)S 2508(probe)S 2773(for)S 2927(devices)S 3265(when)S 3519(opened,)S 3870(start)S 4079(disks)S 4320(and)S 4500(load)S 4708(tapes,)S 4975(but)S 5138(the)S 1320 V 1080(generic)S 1403(devices)S 1731(do)S 1857(nothing)S 2189(of)S 2299(this.)S 2520(Given)S 2792(an)S 2914(open)S 3136(\256le)S 3292(descriptor)S 3722(to)S 3827(any)S 3999(SCSI)S 4239(character)S 4637(device)S 4927(\(not)S 5116(just)S 1440 V 1080(the)S 1228(generic)S 1550(devices\))S 1911(one)S 2081(can)S 2246(use)S 2405(the)S 2553(following)S (ioctl:)207 2969 A 1608 V 1440(ioctl\(fd,)S 1787(SCIOCCMD,)S 2363(&scsicmd\))S 1776 V 1080(The)S 1262(structure)S 1640(whose)S 1922(address)S 2249(is)S 2341(passed)S 2634(as)S 2743(the)S 2891(third)S 3106(argument)S 3511(is)S 3603(de\256ned)S 3924(in)S 4027()S 4548(as)S 4657(follows:)S 1944 V 1440(struct)S 1689(scsicmd)S 2038({)S 2064 V 1800(void)S 2160(*cmd;)S 2184 V 1800(size_t)S 2160(cmdlen;)S 2304 V 1800(void)S (*buf;)212 2160 A 2424 V 1800(size_t)S 2160(bu\257en;)S 2544 V 1800(void)S 2160(*sense;)S 2664 V 1800(size_t)S 2160(senselen;)S 2784 V 1800(int)S 2160(dir;)S 2904 V 1440(};)S 3072 V 10 B 1080(Cmd)S 10 R 1325(and)S 10 B 1502(cmdlen)S 10 R 1848(hold)S 2058(the)S 2213(address)S 2547(and)S 2724(length)S 3007(of)S 3123(an)S 3250(object)S 3528(holding)S 3867(a)S (Group)257 3945 A 4235(0)S 4318(or)S (Group)257 4435 A 4725(1)S 4808(SCSI)S 5054(com-)S 3192 V 1080(mand.)S 1379(The)S 1562(next)S 1761(two)S 1938(\256elds)S 2182(describe)S 2544(a)S 2615(buffer)S 2888(of)S 2998(at)S 3097(most)S 3318(8)S (kilobytes)368 3394 A 3788(used)S 3998(in)S 4102(the)S 4251(data)S 4445(in)S 4549(or)S 4658(out)S 4811(phase.)S 10 B 5115(Dir)S 3312 V 10 R 1080(is)S 1172(0)S 1247(if)S 1335(data)S 1529(is)S 1622(to)S 1726(be)S 1847(read)S 2047(from)S 2269(the)S 2418(device,)S 2732(1)S 2808(if)S 2896(data)S 3090(is)S (written)286 3183 A 3495(to)S 3599(the)S 3748(device.)S 4087(If)S 4181(the)S 4330(ioctl)S (succeeds)358 4535 A 4919(then)S 5118(0)S 5194(is)S 3432 V 1080(returned,)S 1467(otherwise)S 1885(-1)S 1995(with)S 10 B (errno)241 2200 A 10 R 2467(set)S 2605(to)S 10 B 2709(EIO)S 10 R 2919(and)S 3090(the)S 3239(request)S 3556(sense)S 3800(info)S 3988(returned)S 4350(in)S 4454(the)S 4603(buffer)S 4875(described)S 3552 V 1080(by)S 1213(the)S 1369(sense)S 1620(and)S 1798(senselen)S 2172(\256elds.)S 2473(If)S 2574(the)S 2730(sense)S 2981(key)S 3160(is)S 3261(zero)S 3469(on)S 3603(error)S 3834(then)S 4041(a)S 4120(host)S 4321(adapter)S 4652(error)S 4883(occurred,)S 3672 V 1080(this)S 1250(means)S 1532(that)S 1708(the)S 1856(device)S 2144(is)S 2236(most)S 2456(likely)S 2710(turned)S 2992(off)S 3135(or)S 3244(not)S 3397(present.)S 3840 V 9 R 720(F)S 722(FI)S 774(IL)S 807(LE)S 865(ES)S 923(S)S 3960 V 10 R 1080(/dev/sd[0)S 10 R-1 1454(-)S 10 R 1511(9],)S 1645(/dev/sd[1)S 10 R-1 2019(-)S 10 R 2076(46)S 10 R-1 2176(-)S 10 R 2233(9][a)S 10 R-1 2396(-)S 10 R 2453(d])S 3080(Usual)S 3340(disk)S 3532(devices.)S 4128 V 1080(/dev/rst4,)S 1482(/dev/nrst4)S 3080(Usual)S 3340(tape)S 3533(device.)S 4296 V 1080(/dev/rsg[0)S 10 R-1 1488(-)S 10 R 1545(7])S 3080(Raw)S 3290(generic)S 3612(devices.)S 4464 V 9 R 720(S)S 722(SE)S 774(EE)S 832(E)S 913(A)S 915(AL)S 983(LS)S 1041(SO)S 1093(O)S 4584 V 10 B 1080(hd)S 10 R 1192(\(4\),)S 10 B 1360(mt)S 10 R 1478(\(1\),)S 10 B 1646(eject)S 10 R 1849(\(1\),)S 10 B 2017(mtio)S 10 R 2213(\(4\),)S 10 B 2381(dd)S 10 R 2493(\(1\).)S 4752 V 9 R 720(A)S 722(AU)S 790(UT)S 858(TH)S 916(HO)S 984(OR)S 1052(R)S 4872 V 10 R 1080(Kees)S 1307(J.)S 1396(Bot)S 1566(\(kjb@cs.vu.nl\))S 7903 V 720(September)S 1176(13,)S (1996)200 1326 A 4990(Page)S 5211(2)S 8143 V EP %%Trailer %%DocumentFonts: Times-Roman Times-Bold %%Pages: 2