+--------------------------------------+ / /| +--------------------------------------+ | | Prg.name : MemCheck V1.00 | | | Date : 09.09.1992 | +------------+ | |/ /| +--------------------------------------+------------+ | | ---- Copyright Tom Kroener | | | /(c)| Richard Wagner Str. 40 | | | / TKs| D-6602 Saarbruecken-Dudweiler | | | / 1992| GERMANY | |------------------+ | -------- +---------+ | | /| | | e-mail :| | | / | | +-----------+ +-----------+ | | / | | | kroener@cs.uni-sb.de (internet) | | | / + | | T_KROENER@SAARAG.ZER (Zerberus) | | + / / | +----------------------------------+ |/ / / +---------------------------------------------------+-------------+ / | MemCheck ist KEINE Public-Domain. | / | Man darf MemCheck kopieren und weiterverbreiten, aber die | / | Nutzung in kommerziellen Produkten ist untersagt. |/ +-----------------------------------------------------------------+ MemCheck ist ein Programm, das die ersten 1000 Byte des Amiga-Speichers in Abständen von 2 Sekunden auf Veränderungen überprüft. Außerdem werden noch die Betriebssystemvektoren coldCapture, coolCapture, warmCapture, kickMemPtr, kickTagPtr und kickCheckSum überprüpft, wodurch auch irgendwelche Aktionen von Viren frühzeitig bemerkt werden können. ACHTUNG: Es werden nur Veränderungen, die nach dem Start von MemCheck gemacht wurden, angezeigt. MemCheck kümmert sich nicht um den Inhalt dieser Vektoren, sondern zeigt nur Veränderungen zu den vorherigen Werten an! MemCheck wurden von mir deshalb geschrieben, weil viele Programmierfehler in diesen Bereich irgendwelche Werte hineinschreiben, was irgend wann zu einem späteren Zeitpunkt zu scheinbar unerklärlichen Abstürzen führen kann. (man teste die Funktion 'ClearPointer' aus der intuition.library mit einem 'NIL'-Zeiger als Argument!!) Bemerkt MemCheck einen solchen Schreibvorgang, wird in einem Alert die entsprechende Speicherstelle angezeigt und ein Restaurieren des ursprünglichen Wertes angeboten. (linke Maustaste: Weitermachen; rechte Maustaste: ursprünglichen Wert wieder herstellen). Ein ähnliches Programm (enforcer) gibt es zwar bereits, läuft aber nur auf Amiga mit MMU (also 68020 mit MMU, 68030 und 68040) und kann deshalb von 'kleineren' Amiga (ich habe einen A500) nicht benutzt werden. Mangels MMU kann MemCheck auch keine Lese-Zugriffe auf diesen Speicherbereich feststellen, welche zwar genauso 'illegal' sind wie Schreibzugriffe, aber für das System im Normalfall nicht weiter schädlich sind, da keine Speicherinhalte verändert werden. Da MemCheck die ersten 1000 Byte des Speichers liest, wird dies (vermute ich zumindest) von enforcer angezeigt, was jedoch in diesem Falle ignoriert werden kann. (Ich glaube sowieso kaum, daß es Sinn macht, *beide* Programme gleichzeitig zu benutzen). Wenn man MemCheck aus dem CLI oder einer Shell aufruft, kann man zusätzlich noch die Startadresse der zu überprüfenden 1000 Byte angeben, also z.B. 'MemCheck 1000' prüft dann alle Speicherinhalte von 1000 bis 2000, was unter Umständen wünschenswert sein kann. MemCheck wurde getestet auf einem A500 unter Kickstart 1.3 und 2.04 und auf einem A3000 unter Kickstart 2.04. Es sollte daher auch auf anderen Rechnern problemlos laufen. Sollten trotzdem irgenwelche Fehler auftreten: Adresse siehe oben. Dieses Programm ist keine Shareware, aber wer es oft benutzt, könnte einem armen (seufz) Informatik-Studenten mit einer kleinen Spende (US $7 oder 10DM) eine kleine Freude machen. (größere Spenden werden nicht abgelehnt, die würden mir dann *größere* Freude machen :-) Viel Spaß, ---Tom