Microsoft KB Archive/43215

Internal Stack Error General Stack Resource Information PSS ID Number: Q43215 Article last modified on 06-04-1993 PSS database name: W_Win3

2.x 3.00

WINDOWS

Summary:

This article provides general information about stack resources and errors involving stack resource problems.

More Information:

When available stack resources are exceeded by a rapid succession of hardware interrupts, the following error message is displayed:

FATAL: Internal Stack Failure

The problem is that MS-DOS does not always have enough stack space available for interrupt routines. Network cards, in particular, can generate many interrupts rapidly.

You can increase your stack size and number at system initialization time by using the MS-DOS “STACKS=n,s” entry (the entry is named STACK in Versions 3.20 and 3.21, and STACKS in Versions 3.30 and later) in the CONFIG.SYS file. The number of stack frames is “n”. The default number of stack frames is 9. The range of values for “n” is from 8 to 64.

The size (in bytes) of each stack frame is “s”. The default size of each stack frame is 128 bytes. The range of values for “s” is from 32 to 512 bytes.

Please note that increasing stack resources reduces available memory. You should increase the number of stacks first when trying to alleviate the stack error condition.

Each time a hardware interrupt occurs, MS-DOS allocates one frame from the stack pool. After the interrupt has been processed, MS-DOS returns the frame to the stack pool.

When you run Windows, you may receive a message that your system has run out of stacks. This problem can be corrected by adding a stacks= line to your CONFIG.SYS file. If you have DOS Version 3.30 on your computer, add the following line to your CONFIG.SYS file:

stacks=0,0

If you have DOS Version 3.20 on your computer, add the following line to your CONFIG.SYS file:

stacks=9,192

This problem does not occur with versions of DOS earlier than 3.20.

Additional reference words: 3.00 win30

Copyright Microsoft Corporation 1993.