[comp.os.msdos.programmer] Use of MS-DOS STACKS= ?

trier@usenet.INS.CWRU.Edu (Stephen C. Trier) (05/24/91)

I have a TSR TCP/IP kernel with telnet, ftp, and other applications running
on top.  It uses packet drivers for its protocol support and uses the timer
interrupt for several background tasks that support the TCP/IP protocols.
After several months' updating for a New and Improved version, I'm finding
myself with bugs that look much like a stack overflow.  I used stack overflow
debugging technique #1 (triple the stack size and see what happens) and the
problems persisted.

However, I just saw the STACKS= statement in the DOS manual and tried fiddling
with the values.  Shrinking the values makes the problem worse; making them
bigger makes it go away.

This sure makes it look like I'm running on a DOS interrupt stack at some
point, and I'm overflowing _that_ stack.  When does DOS switch to these
interrupt stacks?  I'd like to know so that I can figure out how to make
this program work _right_.

-- 
Stephen Trier                        Work: trier@ins.cwru.edu
Case Western Reserve University      Home: sct@seldon.clv.oh.us
Information Network Services