Systemprogrammierer oder Programmtester haben unter anderem mindestens ein speicherresidentes Programm installiert, das ihnen einen Notausstieg aus abgestürzten, »verirrten« oder in Endlosschleifen »durchdrehenden« Programmen bietet. Wir haben drei speicherresidente Routinen, die alle den selben Zweck, jedoch unterschiedlich komfortabel erfüllen.
SOS1.DEB ist die einfachste und kürzeste Version. Das Programm funktioniert die Hardcopy-Taste »Druck« zur Notausstiegstaste um und ermöglicht in den meisten kritischen Situationen eine Rückkehr auf die DOS-Ebene. Da nach dem Ausstieg häufig Interruptvektoren noch auf das abgebrochene Programm zeigen, sollten Sie den PC bei nächster Gelegenheit neu booten, da sonst mit stark erhöhter Absturzgefahr zu rechnen ist.
SOS2.DEB hingegen hilft dem ab. Das Programm sichert zusätzlich die Interruptvektoren 0 bis 7Fh, um sie im »Notfall« wiederherzustellen. Das System befindet sich nach dem Notausstieg in einem relativ stabilen Zustand, weshalb Sie im Unterschied zu SOS1.DEB nicht unbedingt mit erhöhter Absturzgefahr rechnen müssen. Dadurch können Sie sich problemlos verlorene Daten aus dem Speicher angeln oder in den meisten Fällen sogar ohne Schwierigkeiten weiterarbeiten.
SOS3.DEB ist die komfortabelste Version. Das Programm sichert nicht nur die Interrupt-Vektoren, sondern erlaubt Ihnen zusätzlich die Auswahl von drei verschiedenen Tastenkombinationen, die als Notbremse wirken sollen. Geben Sie bei der Installation von SOS3 keinen Parameter an, oder verwenden Sie »I« oder »Insert«, reagiert das Programm auf die Tastenkombination [Strg] + [Alt] + [Einfg]. Vorsicht! Verwechseln Sie die Tastenfolge nicht mit [Strg] + [Alt] + [Entf]. Der Parameter »P« wie »PrtScr« legt die Notbremse auf die [Druck]-Taste. Verwenden Sie »S« oder »SysReq«, reagiert SOS3 auf die auf Multifunktionstastaturen übliche [S-Abf]- bzw. [Sys Req]-Taste.
Installieren Sie das gewünschte Programm – vorzugsweise SOS3 – am besten in der AUTOEXEC.BAT, und aktivieren Sie es bei Bedarf mit der entsprechenden Tastenkombination.
Name: | SOS1.DEB |
Funktion: | Funktioniert die Hardcopy-Taste zur Notausstiegstaste um. |
Übersetzung: | DEBUG <SOS1.DEB |
Prüfsumme: | 4BE1 |
Anwendung: | SOS1(in kritischen Situationen mit der [Druck]-Taste Rückkehr auf die DOS-Ebene erzwingen) |
Einschränkungen: | Da keine Interrrupt-Vektoren gesichert werden, ist mit erhöhter Absturzgefahr zu rechnen. |
A MOV DX,10D ;100 MOV AX,2505 ;103 INT 21 ;106 MOV DX,112 ;108 INT 27 ;10B MOV AX,4CFF ;10D INT 21 ;110 RCX 12 NSOS1.COM W Q
Name: | SOS2.DEB |
Funktion: | Funktioniert die Hardcopy-Taste zur Notbremse um und rettet zusätzlich die Interrupt-Vektoren 0 – 7Fh. |
Übersetzung: | DEBUG <SOS2.DEB |
Prüfsumme: | 4454 |
Anwendung: | SOS2(in kritischen Situationen mit der [Druck]-Taste Rückkehr auf die DOS-Ebene erzwingen) |
Einschränkungen: | ./. |
A MOV DX,11E ;100 MOV AX,2505 ;103 INT 21 ;106 CALL 112 ;108 REPZ MOVSW ;10B MOV DX,32E ;10D INT 27 ;110 XOR SI,SI ;112 MOV DS,SI ;114 MOV DI,12E ;116 MOV CX,100 ;119 CLD ;11C RET ;11D CALL 112 ;11E CS:MOV AX,[DI] ;121 MOV [SI],AX ;124 CMPSW ;126 LOOP 121 ;127 MOV AX,4CFF ;129 INT 21 ;12C RCX 2E NSOS2.COM W Q
Name: | SOS3.DEB |
Funktion: | Funktioniert eine von drei möglichen Tastenfolgen zur Notbremse um und sichert zusätzlich die Interrupt-Vektoren 0 – 7Fh. |
Übersetzung: | DEBUG <SOS3.DEB |
Prüfsumme: | 5ECB |
Anwendung: | SOS3 [Taste]Taste = I: Tastenkombination [Strg] + [Alt] + [Einfg] Taste = P: [Druck]-Taste Taste = S: [S-Abf]-Tasteohne Parameter: wie I |
Einschränkungen: | ./. |
A MOV DX,168 ;100 MOV AX,3505 ;103 CMP By[5D],50 ;106 JZ 128 ;10B MOV DX,141 ;10D MOV AL,15 ;110 CMP By[5D],53 ;112 JZ 11E ;117 MOV DX,14B ;119 MOV AL,9 ;11C INT 21 ;11E MOV [15D],BX ;120 MOV [15F],ES ;124 MOV AH,25 ;128 INT 21 ;12A LES DI,[17E] ;12C ES:MOV AX,[DI] ;130 MOV [DI+182],AX ;133 SUB DI,2 ;137 JNB 130 ;13A MOV DX,382 ;13C INT 27 ;13F CMP AX,8500 ;141 JZ 168 ;144 CS:JMP FAR [15D] ;146 PUSH AX ;14B PUSH DS ;14C XOR AX,AX ;14D MOV DS,AX ;14F MOV AH,[417] ;151 POP DS ;155 AND AH,F ;156 IN AL,60 ;159 PUSHF ;15B CALL 0:0 ;15C CMP AX,C52 ;161 JZ 168 ;164 POP AX ;166 IRET ;167 CS:LDS DI,[17E] ;168 CS:MOV AX,[DI+182] ;16D MOV [DI],AX ;172 SUB DI,2 ;174 JNB 16D ;177 MOV AX,4CFF ;179 INT 21 ;17C DW 1FE,0 RCX 82 NSOS3.COM W Q
Quelle: 200 Utilities für PC-/MS-DOS von Gerhard Schild und Thomas Jannot