From: SMTP%"texsun!montagar.com!fileserv@cs.utexas.edu" 25-JUN-1993 18:21:17.17 To: EVERHART CC: Subj: RWASTED.SHR_1 Message-Id: <9306251911.AA19234@texsun.Central.Sun.COM> Date: Fri, 25 Jun 1993 13:59:21 CDT Sender: texsun!montagar.com!fileserv-Mgr@cs.utexas.edu Errors-To: texsun!montagar.com!fileserv-Mgr@cs.utexas.edu Warnings-To: <> From: texsun!montagar.com!fileserv-Mgr@cs.utexas.edu Reply-To: texsun!montagar.com!fileserv@cs.utexas.edu Subject: RWASTED.SHR_1 To: EVERHART@arisia.gce.com $! ------------------ CUT HERE ----------------------- $ v='f$verify(f$trnlnm("SHARE_VERIFY"))' $! $! This archive created by VMS_SHARE Version 7.2-007 22-FEB-1990 $! On 24-JUN-1993 08:55:04.89 By user DAVIDC $! $! This VMS_SHARE Written by: $! Andy Harper, Kings College London UK $! $! Acknowledgements to: $! James Gray - Original VMS_SHARE $! Michael Bednarek - Original Concept and implementation $! $! TO UNPACK THIS SHARE FILE, CONCATENATE ALL PARTS IN ORDER $! AND EXECUTE AS A COMMAND PROCEDURE ( @name ) $! $! THE FOLLOWING FILE(S) WILL BE CREATED AFTER UNPACKING: $! 1. RWASTED.PS;1 $! $set="set" $set symbol/scope=(nolocal,noglobal) $f=f$parse("SHARE_TEMP","SYS$SCRATCH:.TMP_"+f$getjpi("","PID")) $e="write sys$error ""%UNPACK"", " $w="write sys$output ""%UNPACK"", " $ if f$trnlnm("SHARE_LOG") then $ w = "!" $ ve=f$getsyi("version") $ if ve-f$extract(0,1,ve) .ges. "4.4" then $ goto START $ e "-E-OLDVER, Must run at least VMS 4.4" $ v=f$verify(v) $ exit 44 $UNPACK: SUBROUTINE ! P1=filename, P2=checksum $ if f$search(P1) .eqs. "" then $ goto file_absent $ e "-W-EXISTS, File ''P1' exists. Skipped." $ delete 'f'* $ exit $file_absent: $ if f$parse(P1) .nes. "" then $ goto dirok $ dn=f$parse(P1,,,"DIRECTORY") $ w "-I-CREDIR, Creating directory ''dn'." $ create/dir 'dn' $ if $status then $ goto dirok $ e "-E-CREDIRFAIL, Unable to create ''dn'. File skipped." $ delete 'f'* $ exit $dirok: $ w "-I-PROCESS, Processing file ''P1'." $ if .not. f$verify() then $ define/user sys$output nl: $ EDIT/TPU/NOSEC/NODIS/COM=SYS$INPUT 'f'/OUT='P1' PROCEDURE Unpacker ON_ERROR ENDON_ERROR;SET(FACILITY_NAME,"UNPACK");SET( SUCCESS,OFF);SET(INFORMATIONAL,OFF);f:=GET_INFO(COMMAND_LINE,"file_name");b:= CREATE_BUFFER(f,f);p:=SPAN(" ")@r&LINE_END;POSITION(BEGINNING_OF(b)); LOOP EXITIF SEARCH(p,FORWARD)=0;POSITION(r);ERASE(r);ENDLOOP;POSITION( BEGINNING_OF(b));g:=0;LOOP EXITIF MARK(NONE)=END_OF(b);x:=ERASE_CHARACTER(1); IF g=0 THEN IF x="X" THEN MOVE_VERTICAL(1);ENDIF;IF x="V" THEN APPEND_LINE; MOVE_HORIZONTAL(-CURRENT_OFFSET);MOVE_VERTICAL(1);ENDIF;IF x="+" THEN g:=1; ERASE_LINE;ENDIF;ELSE IF x="-" THEN IF INDEX(CURRENT_LINE,"+-+-+-+-+-+-+-+")= 1 THEN g:=0;ENDIF;ENDIF;ERASE_LINE;ENDIF;ENDLOOP;t:="0123456789ABCDEF"; POSITION(BEGINNING_OF(b));LOOP r:=SEARCH("`",FORWARD);EXITIF r=0;POSITION(r); ERASE(r);x1:=INDEX(t,ERASE_CHARACTER(1))-1;x2:=INDEX(t,ERASE_CHARACTER(1))-1; COPY_TEXT(ASCII(16*x1+x2));ENDLOOP;WRITE_FILE(b,GET_INFO(COMMAND_LINE, "output_file"));ENDPROCEDURE;Unpacker;QUIT; $ delete/nolog 'f'* $ CHECKSUM 'P1' $ IF CHECKSUM$CHECKSUM .eqs. P2 THEN $ EXIT $ e "-E-CHKSMFAIL, Checksum of ''P1' failed." $ ENDSUBROUTINE $START: $ create 'f' X%!PS-Adobe-2.1 X%%Creator: DECwrite V2.0 X%%+Copyright (c) 1990 DIGITAL EQUIPMENT CORPORATION. `20 X%%+All Rights Reserved. X%%DocumentFonts: (atend) X%%EndComments X%%BeginProcSet DEC_WRITE 1.07 X/DEC_WRITE_dict 150 dict def DEC_WRITE_dict begin/$D save def/$I 0 def/$S 0 Xdef/$C matrix def/$R matrix def/$L matrix def/$E matrix def/pat1`7B/px exch Xdef/pa 8 array def 0 1 7`7B/py exch def/pw 4 string def 0 1 3`7Bpw exch px p Vy 1 Xgetinterval putinterval`7Dfor pa py pw put`7Dfor`7Ddef/pat2`7B/pi exch def/c Vflag Xexch def save cflag 1 eq`7Beoclip`7D`7Bclip`7Difelse newpath`7Bclippath Xpathbbox`7Dstopped not`7B/ph exch def/pw exch def/py exch def/px exch def/px V px X3072 div floor 3072 mul def/py py 3072 div floor 3072 mul def px py Xtranslate/pw pw px sub 3072 div floor 1 add cvi def/ph ph py sub 3072 div Xfloor 1 add cvi def pw 3072 mul ph 3072 mul scale/pw pw 32 mul def/ph ph 32 Xmul def/px 0 def/py 0 def pw ph pi`5Bpw 0 0 ph 0 0`5D`7Bpa py get/px px 32 a Vdd Xdef px pw ge`7B/px 0 def/py py 1 add 8 mod def`7Dif`7Dpi type/booleantype Xeq`7Bimagemask`7D`7Bimage`7Difelse`7Dif restore`7Ddef/PS`7B/_op exch def/_np V 8 string def X0 1 7`7B/_ii exch def/num _op _ii get def _np 7 _ii sub num -4 bitshift PX Xnum 15 and 4 bitshift -4 bitshift PX 4 bitshift or put`7Dfor _np`7Ddef/PX`7B V`5B15 7 X11 3 13 5 9 1 14 6 10 2 12 4 8 0`5Dexch get`7Ddef/FR`7B0.7200 0 $E defaultma Vtrix Xdtransform/yres exch def/xres exch def xres dup mul yres dup mul add Xsqrt`7Ddef/SU`7B/_sf exch def/_sa exch def/_cs exch def/_mm $C currentmatrix Xdef/rm _sa $R rotate def/sm _cs dup $L scale def sm rm _mm _mm concatmatrix X_mm concatmatrix pop 1 0 _mm dtransform/y1 exch def/x1 exch def/_vl x1 dup Xmul y1 dup mul add sqrt def/_fq FR _vl div def/_na y1 x1 atan def _mm 2 get X_mm 1 get mul _mm 0 get _mm 3 get mul sub 0 gt`7B`7Bneg`7D/_sf load Xconcatprocs/_sf exch def`7Dif _fq _na/_sf load setscreen`7Ddef/BO`7B/_yb exc Vh Xdef/_xb exch def/_bv _bs _yb _bw mul _xb 8 idiv add get def/_mk 1 7 _xb 8 Xmod sub bitshift def _bv _mk and 0 ne $I 1 eq xor`7Ddef/BF`7BDEC_WRITE_dict Xbegin/_yy exch def/_xx exch def/_xi _xx 1 add 2 div _bp mul cvi def/_yi _yy X1 add 2 div _bp mul cvi def _xi _yi BO`7B/_nb _nb 1 add def 1`7D`7B/_fb _fb V 1 add Xdef 0`7Difelse end`7Ddef/setpattern`7B/_cz exch def/_bw exch def/_bp exch de Vf/_bs Xexch PS def/_nb 0 def/_fb 0 def _cz 0/BF load SU`7B`7Dsettransfer _fb _fb _n Vb Xadd div setgray/$S 1 def`7Ddef/invertpattern`7B$S 0 eq`7B`7B1 exch Xsub`7Dcurrenttransfer concatprocs settransfer`7Dif`7Ddef/invertscreen`7B/$I V 1 Xdef/$S 0 def`7Ddef/revertscreen`7B/$I 0 def`7Ddef/setrect`7B/$h exch def/$w V exch Xdef/$y exch def/$x exch def newpath $x $y moveto $w $x add $y lineto $w $x Xadd $h $y add lineto $x $h $y add lineto closepath`7Ddef/concatprocs`7B/_p2 Xexch cvlit def/_p1 exch cvlit def/_pn _p1 length _p2 length add array def X_pn 0 _p1 putinterval _pn _p1 length _p2 putinterval _pn Xcvx`7Ddef/OF/findfont load def/findfont`7Bdup DEC_WRITE_dict exch Xknown`7BDEC_WRITE_dict exch get`7Dif DEC_WRITE_dict/OF get exec`7Ddef Xmark/ISOLatin1Encoding`20 X8#000 1 8#001`7BStandardEncoding exch get`7Dfor /emdash/endash X8#004 1 8#025`7BStandardEncoding exch get`7Dfor /quotedblleft/quotedblright X8#030 1 8#054`7BStandardEncoding exch get`7Dfor /minus 8#056 1 8#217 X`7BStandardEncoding exch get`7Dfor/dotlessi 8#301 1 8#317`7BStandardEncoding V`20 Xexch get`7Dfor/space/exclamdown/cent/sterling/currency/yen/brokenbar/section X/dieresis/copyright/ordfeminine/guillemotleft/logicalnot/hyphen/registered X/macron/degree/plusminus/twosuperior/threesuperior/acute/mu/paragraph X/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright/onequarter X/onehalf/threequarters/questiondown/Agrave/Aacute/Acircumflex/Atilde X/Adieresis/Aring/AE/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave X/Iacute/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde X/Odieresis/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn X/germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla X/egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis X/eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave X/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis X256 array astore def cleartomark`20 X/encodefont`7Bfindfont dup maxlength dict begin`7B1 index/FID ne`7Bdef`7D`7B Vpop Xpop`7Difelse`7Dforall/Encoding exch def dup/FontName exch def currentdict Xdefinefont end`7Ddef/loads`7B/$/ISOLatin1Encoding load def/&/encodefont load Xdef/*/invertpattern load def/+/revertscreen load def/-/invertscreen load Xdef/:/concatprocs load def/`5E/setpattern load def/`7E/pat1 load def/_/pat2 Xload def/@/setrect load def/A/arcn load def/B/ashow load def/C/curveto load Xdef/D/def load def/E/eofill load def/F/findfont load def/G/setgray load Xdef/H/closepath load def/I/clip load def/J/fill load def/K/kshow load Xdef/L/lineto load def/M/moveto load def/N/newpath load def/O/rotate load Xdef/P/pop load def/R/grestore load def/S/gsave load def/T/translate load Xdef/U/sub load def/V/div load def/W/widthshow load def/X/exch load Xdef/Y/awidthshow load def/a/save load def/c/setlinecap load def/d/setdash Xload def/e/restore load def/f/setfont load def/g/initclip load def/h/show Xload def/i/setmiterlimit load def/j/setlinejoin load def/k/stroke load Xdef/l/rlineto load def/m/rmoveto load def/n/currentfont load Xdef/o/scalefont load def/p/currentpoint load def/q/setrgbcolor load Xdef/r/currenttransfer load def/s/scale load def/t/setmatrix load Xdef/u/settransfer load def/w/setlinewidth load def/x/matrix load Xdef/y/currentmatrix load def`7Ddef Xend X%%EndProcSet X%%EndProlog X X%%BeginSetup XDEC_WRITE_dict begin Xloads Xversion cvi 23.0 gt `7B Xcurrentdict `7Bdup type /arraytype eq X`7Bbind def`7D `7Bpop pop`7D ifelse`7D forall`7D if X0.0100 0.0100 s X X%%EndSetup X%%Page: 1 1 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(1) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X6944 -1638 M X/Helvetica-Bold-ISOLatin1 $ X/Helvetica-Bold & P X/Helvetica-Bold-ISOLatin1 F 1800 o f X(Resource Waits in the OpenVMS Operating System ) h X27900 -5638 M X(or V `20 V ) h X9048 -9638 M X(What to do when you R\255WASTed by OpenVMS) h X15149 -17838 M X/Times-Roman-ISOLatin1 F 1800 o f X(DECUS Spring '93 Atlanta Symposia) h X26300 -20488 M X(VS060) h X22826 -24938 M X(David L. Cathey) h X18252 -26988 M X(Montagar Software Concepts) h X22324 -29038 M X(P. O. Box 260772) h X20300 -31088 M X(Plano, TX 75026\2550772) h X23176 -34338 M X(\(214\) 618\2552117) h X20397 -36388 M X(davidc@montagar.com) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 2 2 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(2) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X20898 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Session Outline) h X288 -8638 M X/Symbol F 1800 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(What are "Resource Waits") h X288 -14288 M X/Symbol F 1800 o f X(\267) h X3168 -14288 M X/Times-Roman-ISOLatin1 F 1800 o f X(Resource Waits and MUTEXes) h X288 -19938 M X/Symbol F 1800 o f X(\267) h X3168 -19938 M X/Times-Roman-ISOLatin1 F 1800 o f X(RWAST causes and descriptions) h X288 -25588 M X/Symbol F 1800 o f X(\267) h X3168 -25588 M X/Times-Roman-ISOLatin1 F 1800 o f X(Using SDA \(System Dump Analyzer\) to determine causes of RWAST) h X288 -31238 M X/Symbol F 1800 o f X(\267) h X3168 -31238 M X/Times-Roman-ISOLatin1 F 1800 o f X(Breaking processes out of RWAST) h X288 -36888 M X/Symbol F 1800 o f X(\267) h X3168 -36888 M X/Times-Roman-ISOLatin1 F 1800 o f X(Getting tough: Brute force approaches) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 3 3 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(3) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X14736 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(What is a "Resource Wait") h X288 -8638 M X/Symbol F 1800 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(A Resource Wait is a type of MUTEX \(MUTual EXclusion semaphore\)) h X3168 -11288 M X(within the OpenVMS Operating System.) h X288 -16338 M X/Symbol F 1800 o f X(\267) h X3168 -16338 M X/Times-Roman-ISOLatin1 F 1800 o f X(Resource Waits are a set of events that suspends a process until some) h X3168 -18988 M X(process or operating system resource becomes available.) h X288 -24038 M X/Symbol F 1800 o f X(\267) h X3168 -24038 M X/Times-Roman-ISOLatin1 F 1800 o f X(Typically, the resource, or enough of a resource, becomes available and) h X3168 -26688 M X(the process is resumed.) h X288 -31738 M X/Symbol F 1800 o f X(\267) h X3168 -31738 M X/Times-Roman-ISOLatin1 F 1800 o f X(MUTEXes and Resource Waits are not always "evil". They are used to) h X3168 -34388 M X(provide a form of flow control, or allow a process to maximize throughput) V h X3168 -37038 M X(by utilizing all available quota.) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 4 4 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(4) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X12768 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Resource Waits and MUTEXes) h X288 -6238 M X/Symbol F 1800 o f X(\267) h X3168 -6238 M X/Times-Roman-ISOLatin1 F 1800 o f X(A MUTEX is a synchronization mechanism \(similar to a Lock, i.e.) h X3168 -8288 M X($ENQ/$DEQ\) that allows protecting an operating system resource without) h X3168 -10338 M X(blocking all other activity by using elevated IPL.) h X288 -14788 M X/Symbol F 1800 o f X(\267) h X3168 -14788 M X/Times-Roman-ISOLatin1 F 1800 o f X(A MUTEX is implemented via a longword data cell in the OpenVMS) h X3168 -16838 M X(executive. See "VMS Internals and Data Structures V5.2", Chapter 8.5,) h X3168 -18888 M X(page 196, or "Alpha Internals and Data Structures", Chapter 9.7, page) h X3168 -20938 M X(9\25550.) h X288 -25388 M X/Symbol F 1800 o f X(\267) h X3168 -25388 M X/Times-Roman-ISOLatin1 F 1800 o f X(Examples of MUTEXes used in OpenVMS V5.5 are:) h X3168 -27138 M Xn 0.778 o f X(\002) h X6048 -27138 M X(LNM$AL_MUTEX) h X17568 -27138 M X23328 -27138 M X29088 -27138 M X(Logical Name Table MUTEX) h X3168 -28788 M X(\002) h X6048 -28788 M X(IOC$GL_MUTEX) h X17568 -28788 M X23328 -28788 M X29088 -28788 M X(I/O Database) h X3168 -30438 M X(\002) h X6048 -30438 M X(EXE$GL_CEBMTX) h X23328 -30438 M X29088 -30438 M X(Common Event Block Queue) h X3168 -32088 M X(\002) h X6048 -32088 M X(SMP$GL_CPU_MUTEX) h X23328 -32088 M X29088 -32088 M X(CPU Database Queue) h X3168 -33738 M X(\002) h X6048 -33738 M X(EXE$GL_PGDYNMTX) h X23328 -33738 M X29088 -33738 M X(Paged Dynamic Memory) h X3168 -35388 M X(\002) h X6048 -35388 M X(EXE$GL_GSDMTX) h X23328 -35388 M X29088 -35388 M X(Global Section Descriptor Queue) h X3168 -37038 M X(\002) h X6048 -37038 M X(CIA$GL_MUTEX) h X17568 -37038 M X23328 -37038 M X29088 -37038 M X(Cumulative Intrusion Analysis Queue) h X3168 -38688 M X(\002) h X6048 -38688 M X(EXE$GL_BASIMGMTX) h X23328 -38688 M X29088 -38688 M X(Base OpenVMS Image \(Loaded Images\)) h X28800 -41988 M X-10800 10833 T X Xshowpage X$P e X X%%Page: 5 5 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(5) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X12768 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Resource Waits and MUTEXes) h X288 -8638 M X/Symbol F 1400 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(The MUTEX longword is manipulated via the internal routines) h X3168 -10688 M X(SCH$LOCKR, SCH$LOCKW, and SCH$UNLOCK.) h X288 -15138 M X/Symbol F 1400 o f X(\267) h X3168 -15138 M X/Times-Roman-ISOLatin1 F 1800 o f X(The MUTEX longword is divided up into two fields: Status and Owner) h X3168 -17188 M X(Count.) h X3168 -19238 M X3168 -21288 M X3168 -23338 M X3168 -25388 M X3168 -27438 M X288 -31888 M X/Symbol F 1400 o f X(\267) h X3168 -31888 M X/Times-Roman-ISOLatin1 F 1800 o f X(Other related structures:) h X3168 -35138 M Xn 0.778 o f X(\002) h X6048 -35138 M Xn 1.286 o f X(PCB$W_MXTCNT) h X23328 -35138 M X(Count of MUTEXes owned by this process) h X3168 -37788 M Xn 0.778 o f X(\002) h X6048 -37788 M Xn 1.286 o f X(PCB$L_EFWM) h X23328 -37788 M X(Address \(0x8nnnnnnn\) of pending MUTEX) h X28800 -41788 M X-10800 10833 T X X25272 -36216 29232 3384 @ XS X100 w X0 c X0 j X2 i X0.00 G k XR XN X X40824 -35064 M X0 G X(Owner Count) h X XN X39600 -32904 M X39600 -36288 L XS X100 w X0 c X0 j X2 i X0.00 G k XR XN X X40104 -32256 M X0 G X(15) h X X53136 -32112 M X0 G X(0) h X X37872 -32184 M X0 G X(16) h X X25344 -32256 M X0 G X(31) h X XN X37368 -32832 M X37368 -36144 L XS X100 w X0 c X0 j X2 i X0.00 G k XR XN X X37872 -35064 M X0 G X(1) h X X37728 -37872 M X0 G X(Write\255in\255progress or) h X X37728 -39960 M X0 G X(Write\255pending status bit) h X X29232 -34920 M X0 G X(MBZ) h X XS XN X/ctm_cached x y D X10619 -5868 T X1116 1116 s X0 0 1 -178 -362 A Xctm_cached t XS X100 w X0 c X0 j X2 i X0.00 G k XR XR X XS XN X/ctm_cached x y D X12420 -5941 T X469 469 s X0 0 1 184 -4 A Xctm_cached t XS X100 w X0 c X0 j X2 i X0.00 G k XR XR X XS XN X/ctm_cached x y D X9011 -5759 T X378 378 s X0 0 1 -169 -383 A Xctm_cached t XS X100 w X0 c X0 j X2 i X0.00 G k XR XR X XS XN X/ctm_cached x y D X10260 -5472 T X180 180 s X0 0 1 90 -270 A Xctm_cached t XS X0.00 G J XR XH XS X100 w X0 c X0 j X2 i X0.00 G k XR XR X XS XN X/ctm_cached x y D X10980 -5472 T X180 180 s X0 0 1 90 -270 A Xctm_cached t XS X0.00 G J XR XH XS X100 w X0 c X0 j X2 i X0.00 G k XR XR X XS XN X/ctm_cached x y D X10584 -5904 T X228 228 s X0 0 1 90 -270 A Xctm_cached t XH XS X100 w X0 c X0 j X2 i X0.00 G k XR XR X Xshowpage X$P e X X%%Page: 6 6 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(6) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X12001 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Example of Accessing a MUTEX) h X288 -5938 M X6048 -5938 M X/Courier-ISOLatin1 $ X/Courier & P X/Courier-ISOLatin1 F 1400 o f X(; Note that this code must be in Kernel mode,) h X288 -7588 M X6048 -7588 M X(; in order to access the MUTEX data cell for R/W access.) h X288 -9238 M X6048 -9238 M X(; ) h X288 -10888 M X6048 -10888 M X(; Grab the Intrusion Queue mutex, so we can) h X288 -12538 M X6048 -12538 M X(; scan it safely...) h X288 -14188 M X288 -15838 M X6048 -15838 M X11808 -15838 M X(moval) h X17568 -15838 M X(g`5ECIA$GL_MUTEX,r0) h X288 -17488 M X6048 -17488 M X11808 -17488 M X(jsb) h X17568 -17488 M X23328 -17488 M X(g`5ESCH$LOCKW) h X34848 -17488 M X(; Lock MUTEX) h X288 -19138 M X288 -20788 M X6048 -20788 M X11808 -20788 M X(movl) h X17568 -20788 M X(g`5ECIA$GQ_INTRUDER,r3 ; Get first intrusion blk) h X288 -22438 M X6048 -22438 M X11808 -22438 M X(moval) h X17568 -22438 M X(g`5ECIA$GQ_INTRUDER,r4 ; Get listhead address) h X288 -24088 M X6048 -24088 M X(1$:) h X11808 -24088 M X(cmpl) h X17568 -24088 M X(r3,r4) h X23328 -24088 M X29088 -24088 M X34848 -24088 M X(; If r3 is listhead, bail) h X288 -25738 M X6048 -25738 M X11808 -25738 M X(beql) h X17568 -25738 M X(5$) h X288 -27388 M X6048 -27388 M X11808 -27388 M X(...) h X17568 -27388 M X23328 -27388 M X29088 -27388 M X34848 -27388 M X(; Do lots of neat stuff) h X288 -29038 M X6048 -29038 M X11808 -29038 M X(movl) h X17568 -29038 M X(CIA$L_FLINK\(r3\),r3 ; Get next intrusion blk) h X288 -30688 M X6048 -30688 M X11808 -30688 M X(brw) h X17568 -30688 M X(1$) h X288 -32338 M X6048 -32338 M X(5$:) h X288 -33988 M X6048 -33988 M X11808 -33988 M X(moval) h X17568 -33988 M X(g`5ECIA$GL_MUTEX,r0) h X34848 -33988 M X(; Unlock MUTEX) h X288 -35638 M X6048 -35638 M X11808 -35638 M X(jsb) h X17568 -35638 M X23328 -35638 M X(g`5ESCH$UNLOCK) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 7 7 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(7) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X12768 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Resource Waits and MUTEXes) h X288 -8638 M X/Symbol F 1400 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(Resource Waits are seen when a process requests an operating system) h X3168 -10688 M X(resource or a process resource \(quota\), and there is not enough. The) h X3168 -12738 M X(process will be put into an MWAIT state, and the cause for the wait is) h X3168 -14788 M X(placed in the Event Flag Wait Mask \(IDSM, Chapter 12, page 283\).) h X288 -19238 M X/Symbol F 1400 o f X(\267) h X3168 -19238 M X/Times-Roman-ISOLatin1 F 1800 o f X(A process can be set to disallow placement into a Resource Wait by setting) V h X3168 -21288 M X(the Resource Wait Mode using the $SETRWM system service.) h X3168 -23338 M X3168 -25388 M X(Note: This will not completely disable all Resource Waits. It will prevent V) h X3168 -27438 M X(most cases. More on this later!) h X288 -31888 M X/Symbol F 1400 o f X(\267) h X3168 -31888 M X/Times-Roman-ISOLatin1 F 1800 o f X(Processes in a resource wait are identified by "SHOW SYSTEM" with a) h X3168 -33938 M X(state starting with "RWxxx".) h X28800 -39738 M X-10800 10833 T X Xshowpage X$P e X X%%Page: 8 8 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(8) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X12768 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Resource Waits and MUTEXes) h X288 -6238 M X/Symbol F 1400 o f X(\267) h X3168 -6238 M X/Times-Roman-ISOLatin1 F 1800 o f X(OpenVMS V5.x defines these and other Resource Waits \(defined in) h X3168 -8288 M X($RSNDEF in the macro library SYS$LIBRARY:LIB.MLB\):) h X3168 -10338 M X3168 -12388 M X( State Reason Code Value) h X34848 -12388 M X(Meaning) h X3168 -16538 M Xn 0.778 o f X(\002) h X6048 -16538 M X(RWAST) h X11808 -16538 M X(RSN$_ASTWAIT) h X23328 -16538 M X29088 -16538 M X(1) h X34848 -16538 M X(Wait for AST event) h X3168 -18188 M X(\002) h X6048 -18188 M X(RWMBX) h X11808 -18188 M X(RSN$_MAILBOX) h X23328 -18188 M X29088 -18188 M X(2) h X34848 -18188 M X(Mailbox I/O) h X3168 -19838 M X(\002) h X6048 -19838 M X(RWNPG) h X11808 -19838 M X(RSN$_NPDYNMEM) h X29088 -19838 M X(3) h X34848 -19838 M X(Nonpaged Dynamic Memory) h X3168 -21488 M X(\002) h X6048 -21488 M X(RWPAG) h X11808 -21488 M X(RSN$_PGDYNMEM) h X29088 -21488 M X(5) h X34848 -21488 M X(Paged Dynamic Memory) h X3168 -23138 M X(\002) h X6048 -23138 M X(RWMPE) h X11808 -23138 M X(RSN$_MPLEMPTY) h X29088 -23138 M X(11) h X34848 -23138 M X(Waiting for Modified List to empty) h X3168 -24788 M X(\002) h X6048 -24788 M X(RWMPB) h X11808 -24788 M X(RSN$_MPWBUSY) h X23328 -24788 M X29088 -24788 M X(12) h X34848 -24788 M X(Modified Page Writer Busy ) h X6048 -26438 M X( `20 V \(ReallyWantedMyProcessBack \255 Pat O.\)) h X3168 -30488 M X(\002) h X6048 -30488 M X(RWSCS) h X11808 -30488 M X(RSN$_SCS) h X23328 -30488 M X29088 -30488 M X(13) h X34848 -30488 M X(System Communications Services) h X3168 -32738 M X(\002) h X6048 -32738 M X(RWCAP) h X11808 -32738 M X(RSN$_CPUCAP) h X23328 -32738 M X29088 -32738 M X(15) h X34848 -32738 M X(CPU Capability \(Vectors, etc\)) h X3168 -34388 M X(\002) h X6048 -34388 M X(RWCSV) h X11808 -34388 M X(RSN$_CLUSRV) h X23328 -34388 M X29088 -34388 M X(16) h X34848 -34388 M X(Cluster Server Process Busy) h X28800 -37688 M X-10800 10833 T X Xshowpage X$P e X X%%Page: 9 9 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X59507 -1113 M X(Slide No. ) h X(9) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X12768 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Resource Waits and MUTEXes) h X288 -8638 M X/Symbol F 1400 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(A Resource Wait is entered by the OpenVMS Executive when an) h X3168 -10688 M X(exhaustion of a resource is detected. The routine SCH$RWAIT is called) h X3168 -12738 M X(with the RSN$_nnnnnnn symbol as input. The RSN$ code is placed in the) h X3168 -14788 M X(PCB$L_EFWM and the process state is set to MWAIT.) h X288 -19238 M X/Symbol F 1400 o f X(\267) h X3168 -19238 M X/Times-Roman-ISOLatin1 F 1800 o f X(The bit corresponding to the RSN$ code is set in the system longword) h X3168 -21288 M X(SCH$GL_RESMASK, i.e. RSN$_MPWBUSY = 12.) h X3168 -23338 M X3168 -25388 M X3168 -27438 M X288 -31888 M X/Symbol F 1400 o f X(\267) h X3168 -31888 M X/Times-Roman-ISOLatin1 F 1800 o f X(When the OpenVMS Executive determines that a resource has been freed,) h X3168 -33938 M X(\(via the RSE routine\) it check the SCH$GL_RESMASK to determine if) h X3168 -35988 M X(any processes are waiting on the resource. If so, the MWAIT process) h X3168 -38038 M X(queue is scanned to determine which processes should be rescheduled.) h X-10800 10833 T X X25992 -39744 25776 3096 @ XS X100 w X0 c X0 j X2 i X0.00 G k XR XN X X50400 -35784 M X0 G X(0) h X X26208 -36000 M X0 G X(31) h X X39384 -36000 M X0 G X(12) h X X40248 -38736 M X0 G X(1) h X Xshowpage X$P e X X%%Page: 10 10 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(10) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X3735 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Example of Putting a Process in a Resource Wait) h X288 -10738 M X6048 -10738 M X/Courier-ISOLatin1 $ X/Courier & P X/Courier-ISOLatin1 F 1400 o f X(;) h X288 -12388 M X6048 -12388 M X(;) h X11808 -12388 M X(Put self in RWAST if there unable to allocate) h X288 -14038 M X6048 -14038 M X(;) h X11808 -14038 M X(the required non\255paged pool...) h X288 -15688 M X6048 -15688 M X(;) h X288 -17338 M X6048 -17338 M X(;) h X11808 -17338 M X(Assume R4 hold value of current PCB) h X288 -18988 M X6048 -18988 M X(1$:) h X288 -20638 M X6048 -20638 M X11808 -20638 M X(movl) h X17568 -20638 M X(#GOOF$C_LENGTH,r1) h X288 -22288 M X6048 -22288 M X11808 -22288 M X(jsb) h X17568 -22288 M X(g`5EEXE$DEBIT_BYTCNT_ALO ; Allocate 1000 bytes) h X288 -23938 M X6048 -23938 M X11808 -23938 M X(blbs) h X17568 -23938 M X(r0,5$) h X288 -25588 M X288 -27238 M X6048 -27238 M X11808 -27238 M X(movl) h X17568 -27238 M X(#RSN$_NPDYNMEM,r0 ; Can't do it, wait until) h X288 -28888 M X6048 -28888 M X11808 -28888 M X(jsb) h X17568 -28888 M X23328 -28888 M X(SCH$RWAIT ; the system frees some and) h X288 -30538 M X6048 -30538 M X11808 -30538 M X(brb) h X17568 -30538 M X(1$) h X23328 -30538 M X29088 -30538 M X( ; then try it again...) h X288 -32188 M X6048 -32188 M X(5$:) h X288 -33838 M X6048 -33838 M X11808 -33838 M X(movl) h X17568 -33838 M X(r1,GOOF$W_SIZE\(r2\) ; Play with our new buffer) h X288 -35488 M X6048 -35488 M X11808 -35488 M X(...) h X288 -37888 M X6048 -37888 M X28800 -41438 M X-10800 10833 T X Xshowpage X$P e X X%%Page: 11 11 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(11) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X11565 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(RWAST Causes and Descriptions) h X288 -8638 M X/Symbol F 1400 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(RWAST == Resource Wait for AST\255related event) h X288 -13088 M X/Symbol F 1400 o f X(\267) h X3168 -13088 M X/Times-Roman-ISOLatin1 F 1800 o f X(RWAST generally occurs for the following reasons:) h X3168 -17538 M Xn 0.778 o f X(\002) h X6048 -17538 M Xn 1.286 o f X(Process is waiting for the deletion of a sub process.) h X3168 -19588 M Xn 0.778 o f X(\002) h X6048 -19588 M Xn 1.286 o f X(AST Limit has been exhausted \(ASTLM\)) h X3168 -21638 M Xn 0.778 o f X(\002) h X6048 -21638 M Xn 1.286 o f X(Direct I/O Limit has been exhausted \(DIOLM\)) h X3168 -23688 M Xn 0.778 o f X(\002) h X6048 -23688 M Xn 1.286 o f X(Buffered I/O Limit has been exhausted \(BIOLM\)) h X3168 -25738 M Xn 0.778 o f X(\002) h X6048 -25738 M Xn 1.286 o f X(Process is waiting for outstanding I/O to complete.) h X288 -30188 M X/Symbol F 1400 o f X(\267) h X3168 -30188 M X/Times-Roman-ISOLatin1 F 1800 o f X(Quota exhaustion typically is transient, as the process is allowed to) h X3168 -32238 M X(continue executing once an I/O or other event has completed.) h X288 -36688 M X/Symbol F 1400 o f X(\267) h X3168 -36688 M X/Times-Roman-ISOLatin1 F 1800 o f X(Waiting for a process deletion is also transient, unless that process is no Vt) h X3168 -38738 M X(computable \(i.e.) h X/Times-Bold-ISOLatin1 F 1800 o f X( it's ) h X/Times-Roman-ISOLatin1 F 1800 o f X(stuck in RWAST, too!\).) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 12 12 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(12) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X8035 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Using SDA to Determine RWAST Cause) h X288 -8638 M X/Symbol F 1400 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(Process state will be MWAIT or RW???) h X3168 -12788 M Xn 0.778 o f X(\002) h X6048 -12788 M X(If the state is "MWAIT", the process is in a MUTEX state. Use "EVAL/ADDRES VS on the) h X6048 -14438 M X(address specified in the Event Flag Wait Mask to determine which MUTEX is l Vocked.) h X3168 -18488 M X(\002) h X6048 -18488 M X(If the state is "RW???", then the process is in a resource wait. The Event V Flag Wait Mask) h X6048 -20138 M X(will be set to the reason code, which should match the state shown by SDA.) V h X288 -24488 M X/Symbol F 1400 o f X(\267) h X3168 -24488 M X/Times-Roman-ISOLatin1 F 1800 o f X(Use "SHOW PROCESS" and "SHOW PROCESS/CHANNEL" to see) h X3168 -26538 M X(what it is waiting on.) h X3168 -30688 M Xn 0.778 o f X(\002) h X6048 -30688 M X(A "0" \(BYTLM/BYTCNT may be a small value\) a quota mean exhausted quota.) V h X3168 -32938 M X(\002) h X6048 -32938 M X(A "busy" channel means outstanding I/O) h X3168 -36388 M X(\002) h X6048 -36388 M X(Otherwise, check subprocess count for active subprocesses. Analyze them fo Vr Resource) h X6048 -38038 M X(Wait problems.) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 13 13 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(13) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X3797 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Sample SDA Output: SHOW PROCESS/INDEX) h X288 -8038 M X/Courier-ISOLatin1 $ X/Courier & P X/Courier-ISOLatin1 F 1000 o f X(SDA> SHOW PROCESS/INDEX=0CF) h X288 -9888 M X(Process index: 000F Name: DAVIDC_1 Extended PID: 000000CF) h X288 -11738 M X(Process status: 02040001 RES,PHDRES) h X288 -13588 M X(PCB address) h X11688 -13588 M X( 805659E0 JIB address) h X28788 -13588 M X( 806D2F80) h X288 -14838 M X(PHD address) h X11688 -14838 M X( 808F9000 Swapfile disk address 00000000) h X288 -16088 M X(Master internal PID 00020019 Subprocess count) h X34488 -16088 M X( 1) h X288 -17338 M X(Internal PID) h X11688 -17338 M X( 0003000F Creator internal PID 00020019) h X288 -18588 M X(Extended PID) h X11688 -18588 M X( 000000CF Creator extended PID 00000099) h X288 -19838 M X(State) h X5988 -19838 M X( RWAST Termination mailbox) h X34488 -19838 M X( 002F) h X288 -21088 M X(Current priority) h X11688 -21088 M X( 6 AST's enabled) h X34488 -21088 M X( KESU) h X288 -22338 M X(Base priority) h X11688 -22338 M X( 4 AST's active) h X28788 -22338 M X( NONE) h X288 -23588 M X(UIC) h X5988 -23588 M X( `5B00002,000001`5D AST's remaining) h X34488 -23588 M X( 148) h X288 -24838 M X(Mutex count) h X11688 -24838 M X( 0 Buffered I/O count/limit) h X40188 -24838 M X( 0/40) h X288 -26088 M X(Waiting EF cluster) h X11688 -26088 M X( 0 Direct I/O count/limit) h X40188 -26088 M X(40/40) h X288 -27338 M X(Starting wait time 1B001B1B BUFIO byte count/limit 30800/30800 V ) h X288 -28588 M X(Event flag wait mask 00000001 # open files allowed left 147 ) h X288 -29838 M X(Local EF cluster 0 E0000000 Timer entries allowed left 20 ) h X288 -31088 M X(Local EF cluster 1 00000000 Active page table count) h X40188 -31088 M X(0) h X288 -32338 M X(Global cluster 2 pointer 00000000 Process WS page count) h X34488 -32338 M X( 161) h X288 -33588 M X(Global cluster 3 pointer 00000000 Global WS page count) h X34488 -33588 M X( 40) h X288 -34838 M X288 -40438 M X-10800 10833 T X XN X56808 -27792 M X52508 -34174 L XS X100 w X0 c X0 j X2 i X0.00 G k XR XN XN X52531 -33666 M X52344 -34416 L X52970 -33962 L XH XS X0.00 G J XR XN X X57168 -27288 M X0 G X(Zero remaining quota) h X XN X38232 -48096 M X31080 -39893 L XS X100 w X0 c X0 j X2 i X0.00 G k XR XN XN X31565 -40046 M X30888 -39672 L X31166 -40394 L XH XS X0.00 G J XR XN X X38664 -48816 M X0 G X(Event Flag Mask == 1 == RSN$_ASTWAIT) h X X38664 -49896 M X0 G X(if 8nnnnnnn, then it would indicate which MUTEX) h X Xshowpage X$P e X X%%Page: 14 14 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(14) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X288 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Sample SDA Output: SHOW PROCESS/CHANNEL) h X288 -3388 M X288 -7238 M X288 -10888 M X/Courier-ISOLatin1 $ X/Courier & P X/Courier-ISOLatin1 F 1000 o f X( SDA> SHOW PROCESS/INDEX=0CF/CHANNEL) h X288 -14538 M X(Process index: 000F Name: DAVIDC_1 Extended PID: 000000CF) h X288 -18188 M X5988 -18188 M X(Process active channels) h X288 -18838 M X288 -19488 M X5988 -19488 M X(\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\25 V5\255\255\255\255) h X288 -20138 M X288 -23188 M X(Channel) h X5988 -23188 M X( Window) h X11688 -23188 M X17388 -23188 M X( Status) h X23088 -23188 M X(Device/file accessed) h X288 -23838 M X288 -24488 M X(\255\255\255\255\255\255\255) h X5988 -24488 M X( \255\255\255\255\255\255) h X11688 -24488 M X17388 -24488 M X( \255\255\255\255\255\255) h X23088 -24488 M X(\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\25 V5) h X288 -27538 M X( 0010) h X5988 -27538 M X(00000000) h X11688 -27538 M X17388 -27538 M X23088 -27538 M X(DUA0:) h X288 -28188 M X288 -28838 M X( 0020) h X5988 -28838 M X(8071C470) h X11688 -28838 M X17388 -28838 M X23088 -28838 M X(DUA0:`5BDAVIDC.RWAST`5DRWAST_BIO.EXE;4) h X288 -29488 M X288 -30138 M X( 0030) h X5988 -30138 M X(00000000) h X11688 -30138 M X( Busy ) h X23088 -30138 M X(MBA50:) h X288 -30788 M X288 -31438 M X( 0040) h X5988 -31438 M X(00000000) h X11688 -31438 M X17388 -31438 M X23088 -31438 M X(TWA3:) h X288 -32088 M X288 -32738 M X( 0050) h X5988 -32738 M X(00000000) h X11688 -32738 M X17388 -32738 M X23088 -32738 M X(TWA3:) h X288 -34438 M X-10800 10833 T X XN X45072 -46008 M X38044 -41346 L XS X100 w X0 c X0 j X2 i X0.00 G k XR XN XN X38552 -41365 M X37800 -41184 L X38259 -41807 L XH XS X0.00 G J XR XN X X45432 -46800 M X0 G X/Times-Roman-ISOLatin1 F 1200 o f X(Mailbox I/O incomplete, probably needs flushing) h X Xshowpage X$P e X X%%Page: 15 15 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(15) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X10601 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Breaking Processes Out of RWAST) h X288 -8638 M X/Symbol F 1000 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(Incomplete I/O make up most of the "undeletable" processes.) h X288 -12488 M X/Symbol F 1000 o f X(\267) h X3168 -12488 M X/Times-Roman-ISOLatin1 F 1800 o f X(Different device types require different ways to break the I/O.) h X288 -16338 M X/Symbol F 1000 o f X(\267) h X3168 -16338 M X/Times-Roman-ISOLatin1 F 1800 o f X(Typical types of incomplete I/O cases that are seen:) h X3168 -20188 M X/Courier-ISOLatin1 $ X/Courier & P X/Courier-ISOLatin1 F 1000 o f X(\002) h X6048 -20188 M X/Times-Roman-ISOLatin1 F 1800 o f X(Network devices \(NETnn: and RTAn:\)) h X3168 -24038 M X/Courier-ISOLatin1 F 1000 o f X(\002) h X6048 -24038 M X/Times-Roman-ISOLatin1 F 1800 o f X(Mailboxes \(MBAnnn:\)) h X3168 -27888 M X/Courier-ISOLatin1 F 1000 o f X(\002) h X6048 -27888 M X/Times-Roman-ISOLatin1 F 1800 o f X(Disks) h X3168 -31738 M X/Courier-ISOLatin1 F 1000 o f X(\002) h X6048 -31738 M X/Times-Roman-ISOLatin1 F 1800 o f X(Tapes) h X3168 -35588 M X/Courier-ISOLatin1 F 1000 o f X(\002) h X6048 -35588 M X/Times-Roman-ISOLatin1 F 1800 o f X(Printers \(believe it or not...\)) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 16 16 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(16) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X20169 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Network Devices) h X288 -8638 M X/Symbol F 1000 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(Network devices can generally be freed by telling NCP to disconnect the) h X3168 -10088 M X(link between the processes:) h X288 -14388 M X5988 -14388 M Xn 0.778 o f X($ MCR NCP SHOW KNOW LINKS) h X288 -16288 M X5988 -16288 M X($! kill the link that seems to be connected to the RWAST'd process) h X288 -17938 M X5988 -17938 M X($ MCR NCP DISCONNECT LINK) h X288 -18388 M X288 -21538 M X/Symbol F 1800 o f X(\267) h X3168 -21538 M X/Times-Roman-ISOLatin1 F 1800 o f X(Example:) h X3168 -22388 M X288 -25338 M X288 -24588 M X5988 -24588 M Xn 0.778 o f X($ mcr ncp show know link) h X288 -26238 M X288 -27888 M X5988 -27888 M X(Known Link Volatile Summary as of 6\255APR\2551993 20:17:47) h X288 -29538 M X288 -31188 M X5988 -31188 M X( Link Node) h X17388 -31188 M X( PID Process Remote link Remote user) h X288 -32838 M X5988 -32838 M X( 8193 1.42 \(AVATAR\) 21600033 REMACP) h X34488 -32838 M X( 8445 DAVIDC) h X288 -34488 M X288 -36138 M X5988 -36138 M X($ mcr ncp disconnect link 8193) h X28800 -39438 M X-10800 10833 T X Xshowpage X$P e X X%%Page: 17 17 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(17) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X20367 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Mailbox Devices) h X288 -8638 M X/Symbol F 1800 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(Once the proper mailbox is discovered, use a utility such as COPY to ) h X3168 -10688 M X(dump data into, or out of, the mailbox:) h X288 -15138 M X/Symbol F 1800 o f X(\267) h X3168 -15138 M X/Times-Roman-ISOLatin1 F 1800 o f X(For example, if the mailbox name was MBA1284, one of the two) h X3168 -17188 M X(following commands should clear the condition:) h X288 -21638 M X5988 -21638 M X($ COPY MBA1284: NLA0:) h X288 -26088 M X5988 -26088 M X11688 -26088 M X(or) h X288 -30538 M X5988 -30538 M X($ COPY LOGIN.COM MBA1284:) h X288 -34988 M X5988 -34988 M X(It's probably a better practice to copy ) h X/Times-Bold-ISOLatin1 F 1800 o f X(from ) h X/Times-Roman-ISOLatin1 F 1800 o f X(before copying to...) h X28800 -40788 M X-10800 10833 T X Xshowpage X$P e X X%%Page: 18 18 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(18) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X22034 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Tape Devices) h X288 -7438 M X/Symbol F 1800 o f X(\267) h X3168 -7438 M X/Times-Roman-ISOLatin1 F 1800 o f X(Tape devices occasionally fall off\255line, and are not handled correctly. V If) h X3168 -9488 M X(this happens, it can usually be fixed by:) h X3168 -13938 M X(\002) h X6048 -13938 M X(Reload the tape and place back on\255line) h X3168 -17788 M X(\002) h X6048 -17788 M X(DISMOUNT/ABORT `5Btape_drive`5D) h X3168 -21638 M X(\002) h X6048 -21638 M X(Force a "pack acknowledge":) h X288 -24288 M X5988 -24288 M X11688 -24288 M Xn 0.667 o f X(devnam:) h X17388 -24288 M X(.ascid) h X23088 -24288 M X(/MUA0:/) h X288 -25888 M X5988 -25888 M X11688 -25888 M X(chan:) h X17388 -25888 M X(.word) h X23088 -25888 M X(0) h X288 -27338 M X288 -28788 M X5988 -28788 M X11688 -28788 M X17388 -28788 M X(.entry) h X23088 -28788 M X(packack,0) h X288 -30238 M X5988 -30238 M X11688 -30238 M X17388 -30238 M X($ASSIGN_S) h X28788 -30238 M X(chan=chan,\255) h X288 -31688 M X5988 -31688 M X11688 -31688 M X17388 -31688 M X23088 -31688 M X28788 -31688 M X(devnam=devnam) h X288 -33138 M X5988 -33138 M X11688 -33138 M X17388 -33138 M X($QIOW_S) h X23088 -33138 M X28788 -33138 M X(chan=chan,\255) h X288 -34588 M X5988 -34588 M X11688 -34588 M X17388 -34588 M X23088 -34588 M X28788 -34588 M X(func=#IO$_PACKACK) h X288 -36038 M X5988 -36038 M X11688 -36038 M X17388 -36038 M X(ret) h X288 -37488 M X288 -38938 M X5988 -38938 M X11688 -38938 M X17388 -38938 M X(.end) h X23088 -38938 M X(packack) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 19 19 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(19) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X22301 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Disk Devices) h X288 -8638 M X/Symbol F 1200 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(Disk devices fall off\255line as well. Follow the same guidelines used for V) h X3168 -11288 M X(tape devices:) h X3168 -16338 M Xn 0.667 o f X(\002) h X6048 -16338 M Xn 1.500 o f X(DISMOUNT/ABORT/OVER=CHECK `5Bdisk_name`5D) h X3168 -21388 M X(\002) h X6048 -21388 M X(Toggle drive off/on\255line) h X3168 -26438 M X(\002) h X6048 -26438 M X(Also, the "pack acknowledge" routine can sometimes be used to) h X6048 -29088 M X(recover the disk drive.) h X28800 -35488 M X-10800 10833 T X Xshowpage X$P e X X%%Page: 20 20 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(20) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X8804 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Line Printer Devices \(believe it or not!\)) h X288 -8638 M X/Symbol F 1800 o f X(\267) h X3168 -8638 M X/Times-Roman-ISOLatin1 F 1800 o f X(In really perverse cases, a line printer device \(typically LP11's\) may ge Vt a) h X3168 -11288 M X(partial buffer out, but for some reason be unable to complete the current) V h X3168 -13938 M X(I/O. Of course, just simply:) h X3168 -18988 M X(\002) h X6048 -18988 M Xn 0.778 o f X(Close printer doors) h X3168 -21038 M Xn 1.286 o f X(\002) h X6048 -21038 M Xn 0.778 o f X(Clear jams) h X3168 -23088 M Xn 1.286 o f X(\002) h X6048 -23088 M Xn 0.778 o f X(Add paper) h X3168 -25138 M Xn 1.286 o f X(\002) h X6048 -25138 M Xn 0.778 o f X(Other printer stuff...) h X288 -28388 M X/Symbol F 1800 o f X(\267) h X3168 -28388 M X/Times-Roman-ISOLatin1 F 1800 o f X(Case history:) h X288 -31038 M X5988 -31038 M Xn 0.778 o f X(A printer got stuck at the same time the SYMBIONT had a lock on a RIGHTSLIS VT entry...) h X288 -32788 M X(and was stopped. The SYMBIONT was RWASTed, had a blocking lock on the RIGH VTSLIST, that) h X288 -34438 M X(ended up locking up everyone on the system \(600+ angry users\) in LOGINOUT V, DIR/OWNER, etc.) h X288 -38488 M X5988 -38488 M X(The solution? Close the door to the 15\255year\255old\255washing\255machin Ve\255sized LP27 printer :\255\() h X-10800 10833 T X Xshowpage X$P e X X%%Page: 21 21 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(21) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X2769 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(Brute Force Approaches to Getting out of RWAST) h X288 -9838 M X/Symbol F 1800 o f X(\267) h X3168 -9838 M X/Times-Roman-ISOLatin1 F 1800 o f X(REBOOT THE SYSTEM!!!) h X288 -18488 M X/Symbol F 1800 o f X(\267) h X3168 -18488 M X/Times-Roman-ISOLatin1 F 1800 o f X(But really folks, "simply" disable the resource wait for the process and le Vt) h X3168 -20538 M X(it die off:) h X3168 -24988 M X(\002) h X6048 -24988 M X(Get the Process Control Block \(PCB\) address of the target process.) h X3168 -29438 M X(\002) h X6048 -29438 M X(Set the PCB$M_SSRWAIT bit in PCB$L_STS.) h X3168 -33888 M X(\002) h X6048 -33888 M X(Clear the PCB$M_DELPEN bit in PCB$L_STS.) h X3168 -38338 M X(\002) h X6048 -38338 M X(Issue another $DELPRC to the process...) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 22 22 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(22) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X8903 -2088 M X/Times-Bold-ISOLatin1 $ X/Times-Bold & P X/Times-Bold-ISOLatin1 F 2400 o f X(For those that need the code example...) h X288 -5638 M X5988 -5638 M X/Courier-ISOLatin1 $ X/Courier & P X/Courier-ISOLatin1 F 1000 o f X(.title) h X11688 -5638 M X(DISABLE_RW) h X288 -6888 M X(;++ ;) h X5988 -6888 M X(DISABLE_RW) h X17388 -6888 M X(\255\255 Disable Resource Wait of another process) h X288 -8138 M X(; ; Author:) h X11688 -8138 M X(David L. Cathey) h X288 -9388 M X(;) h X5988 -9388 M X11688 -9388 M X(Montagar Software Concepts) h X288 -10638 M X(;) h X5988 -10638 M X11688 -10638 M X(P. O. Box 260772) h X288 -11888 M X(;) h X5988 -11888 M X11688 -11888 M X(Plano, TX 75026\2550772) h X288 -13138 M X(;) h X5988 -13138 M X11688 -13138 M X(davidc@montagar.com) h X288 -14388 M X(;) h X288 -15638 M X5988 -15638 M X(.link) h X11688 -15638 M X17388 -15638 M X("SYS$SYSTEM:SYS.STB"/SE) h X288 -16888 M X5988 -16888 M X(.library) h X11688 -16888 M X(/SYS$LIBRARY:LIB/) h X288 -18138 M X5988 -18138 M X($PCBDEF) h X11688 -18138 M X17388 -18138 M X(; Process Control Block definitions) h X288 -21788 M X(asc_pid:) h X5988 -21788 M X(.ascid) h X11688 -21788 M X("xxxxxxxx") h X23088 -21788 M X28788 -21788 M X(; Save space for PID) h X288 -23038 M X(bin_pid:) h X5988 -23038 M X(.long) h X11688 -23038 M X(0) h X288 -24288 M X(prompt:) h X5988 -24288 M X11688 -24288 M X(.ascid) h X17388 -24288 M X("Process ID: ") h X28788 -24288 M X(; Prompt string) h X288 -25538 M X288 -26788 M X5988 -26788 M X(.entry) h X11688 -26788 M X(Main,0) h X288 -30438 M X5988 -30438 M X(pushaw) h X11688 -30438 M X(asc_pid) h X288 -31688 M X5988 -31688 M X(pushaq) h X11688 -31688 M X(prompt) h X288 -32938 M X5988 -32938 M X(pushaq) h X11688 -32938 M X(asc_pid) h X288 -34188 M X5988 -34188 M X(calls) h X11688 -34188 M X(#3,g`5ELIB$GET_FOREIGN) h X28788 -34188 M X(; Get PID from user) h X288 -35438 M X5988 -35438 M X(blbc) h X11688 -35438 M X(r0,999$) h X288 -36688 M X5988 -36688 M X11688 -36688 M X288 -37938 M X5988 -37938 M X(pushal) h X11688 -37938 M X(bin_pid) h X-10800 10833 T X Xshowpage X$P e X X%%Page: 23 23 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(23) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X288 -1038 M X5988 -1038 M X/Courier-ISOLatin1 $ X/Courier & P X/Courier-ISOLatin1 F 1000 o f X(pushaq) h X11688 -1038 M X(asc_pid) h X17388 -1038 M X23088 -1038 M X28788 -1038 M X(; Convert ascii hex to binary) h X288 -2288 M X5988 -2288 M X(calls) h X11688 -2288 M X(#2,g`5EOTS$CVT_TZ_L) h X288 -3538 M X5988 -3538 M X(blbc) h X11688 -3538 M X(r0,999$) h X288 -7188 M X5988 -7188 M X($CMKRNL_S) h X11688 -7188 M X(routin=do_it) h X23088 -7188 M X28788 -7188 M X(; Play with the process...) h X288 -8438 M X(999$: ) h X5988 -8438 M X(ret) h X288 -12088 M X5988 -12088 M X(.entry) h X11688 -12088 M X(Do_It,`5EM<>) h X288 -15738 M X5988 -15738 M X(movl) h X11688 -15738 M X(bin_pid,r0) h X288 -16988 M X5988 -16988 M X(jsb) h X11688 -16988 M X(g`5EEXE$EPID_TO_PCB) h X23088 -16988 M X28788 -16988 M X(; Get PCB from EPID) h X288 -18238 M X5988 -18238 M X(tstl) h X11688 -18238 M X(r0) h X17388 -18238 M X23088 -18238 M X28788 -18238 M X(; Did we???) h X288 -19488 M X5988 -19488 M X(beql) h X11688 -19488 M X(99$) h X17388 -19488 M X23088 -19488 M X28788 -19488 M X(; Nope, bail out) h X288 -20738 M X5988 -20738 M X(bisl2) h X11688 -20738 M X(#PCB$M_SSRWAIT,PCB$L_STS\(r0\)) h X28788 -20738 M X(; Set SSRWAIT disable) h X288 -21988 M X5988 -21988 M X(bicl2) h X11688 -21988 M X(#PCB$M_DELPEN,PCB$L_STS\(r0\)) h X28788 -21988 M X(; Clear delete pending) h X288 -23238 M X5988 -23238 M X($DELPRC_S) h X11688 -23238 M X(pidadr=bin_pid) h X23088 -23238 M X28788 -23238 M X(; And delete again.) h X288 -24488 M X5988 -24488 M X(ret) h X11688 -24488 M X17388 -24488 M X23088 -24488 M X28788 -24488 M X(; Bye...) h X288 -25738 M X(99$: ) h X5988 -25738 M X(movl) h X11688 -25738 M X(#SS$_NONEXPR,r0) h X23088 -25738 M X28788 -25738 M X(; Non\255existent process!) h X288 -26988 M X5988 -26988 M X(ret) h X288 -30638 M X5988 -30638 M X(.end) h X11688 -30638 M X(Main) h X288 -31888 M X28800 -37488 M X-10800 10833 T X Xshowpage X$P e X X%%Page: 24 24 X/$P a D Xg N X90 O XN X/ctm_cached x y D X71160 -8328 T X1800 1800 s X0 0 1 90 0 A Xctm_cached t X/ctm_cached x y D X71160 -52968 T X1800 1800 s X0 0 1 0 -90 A Xctm_cached t X/ctm_cached x y D X8328 -52968 T X1800 1800 s X0 0 1 -90 -180 A Xctm_cached t X/ctm_cached x y D X8328 -8328 T X1800 1800 s X0 0 1 -180 -270 A Xctm_cached t XH XS X1200 w X0 c X0 j X0.625 G k XR XN X X7200 -57415 T XN X0 G X288 -1113 M X/Times-Roman-ISOLatin1 $ X/Times-Roman & P X/Times-Roman-ISOLatin1 F 1100 o f X(David L. Cathey, Montagar Software Concepts, P.O.Box 260772, Plano, TX 7502 V6\2550772 Spring'93 DECUS Symposia) h X58957 -1113 M X(Slide No. ) h X(24) h X288 -2412 M X-7200 57415 T X X10800 -10833 T XN X0 G X28800 -2988 M X11802 -21988 M Xn 3.273 o f X(Questions and Answers) h X288 -24364 M X-10800 10833 T X Xshowpage X$P e X X%%Trailer X$D restore Xend % DEC_WRITE_dict X%%Pages: 24 X%%DocumentFonts: Times-Roman X%%+ Helvetica-Bold X%%+ Times-Bold X%%+ Symbol X%%+ Courier $ CALL UNPACK RWASTED.PS;1 1482065178 $ v=f$verify(v) $ EXIT