Rycochet Software

StackAttack2

StackAttack2
 
 Home
 · Contact
 Meets
 · 29th August 2004
 · 30th May 2004
 · 9th November 2003
 · Bath Show 2003
 · 3rd August 2003
 RC-FTPd
 · RC-FTPd Main
 · RC-FTPd CPU
 · RC-FTPd Locale
 · RC-FTPd3 Design
 AmIRC
 · DccSend.AmIPlug
 · Login.AmIPlug
 · NetInfo.AmIPlug
 · RexxFake.AmIPlug
 · Tabs.AmIPlug
 · Tellme.AmIPlug
 · Text.AmIPlug
 · Trigger.AmIPlug
 · Typo.AmIPlug
 · Wallchop.AmIPlug
 DOpus Magellan
 · clipboard.module
 · parent.module
 · version.module
 Other
 · Bump
 · StackAttack2
 · YamNews
 
 Recent Changes 
 

Valid HTML 4.01!

 
 Version:   2.9   Download:   StackAttack2.lha (7,464)   StackAttack2.readme (3,336) 

Original StackAttack

If you are running many programs that patch system functions (such as commodities and hacks) it might happen that sometimes your machine crashes without real "motivation". This is often caused by a too low stack of many programs (because of the patched routines increasing the stack usage of the corresponding system function).

StackAttack tries to kill these GURUs by patching CreateProc(), CreateNewProc(), RunCommand() and SystemTagList(). It alters the stack passed to these routines depending on what parameters you supply to StackAttack.

StackAttack allows you to set a minimum stack size a new process (program) shall have and also by how much bytes you want to increase the stack further

StackAttack1 is ©Copyright 1997-2001 by Georg Steger. All rights reserved!

StackAttack2

Some time ago I decided to write a new version of StackAttack to address some of the issues I found in the old one - namely that if you wanted to change the amount of stack used, you had to apply *another* patch, using up memory, and making new program start slightly slower... Not to mention needing more stack on every program to deal with the fact it was another patch ;-)

This version is different. It puts the patch in memory, with a named port, so if you ever want to change the stack used it will change the value used by the patch already in there. As a side effect it is also a *little* bit smaller ;-)

The patch in memory is about 430 bytes long, it will check if there's enough free stack to call the patch function (which is only an extra 20 or so bytes anyway - but better safe than sorry ;-)

 Installation 
 1. Copy StackAttack or StackAttack_020 to C:
 2. In S:startup-sequence, directly after the SetPatch line, add "StackAttack" (minus quotes)
 3. In S:startup-sequence, directly before the LoadWb line, add "StackAttack AUTO" (minus quotes)
 4. Type "StackAttack AUTO" into a CLI
 5. That's it, no need to reboot or anything ;-)
 
 Arguments 
 StackAttack MINSTACK=MIN/N,ADDSTACK=ADD/N,AUTOSTACK=AUTO/S,NOTCLI/S,SHOW/S:

 MINSTACK=MIN/N - This is the workhorse, just set the minimum Stack you wish programs to use.
 ADDSTACK=ADD/N - This is only there for compatability with the old version, unless you really have less than a single meg ram, don't use it!
 AUTOSTACK=AUTO/S - This works out how much stack you should have - default is 8k, >16megs=16k, >32megs=32k, >64megs=64k, >128megs=128k
 NOTCLI/S - Normally StackAttack will also change the CLI stack (like the C:Stack command) - this stops that happening.
 SHOW/S - Shows the current stack set in the patch.
 
©2003-2004 Rycochet Software, All Rights Reserved