A stack overflow is an undesirable condition in which a particular computer program tries to use more memory space than the call stack has available. In programming, the call stack is a buffer that stores requests that need to be handled.
The size of a call stack depends on various factors. It is usually defined at the start of a program. Its size can depend on the architecture of the computer on which the program runs, the language in which the program is written, and the total amount of available memory in the system. When a stack overflow occurs as a result of a program's excessive demand for memory space, that program (and sometimes the entire computer) may crash.
In Windows, a stack overflow error can be caused by certain types of malware. The risk of malware exploits can be minimized by staying current with all OS (operating system) updates and program patches, making sure you have the latest patches for all of your Web browsers, and avoiding Web sites and embedded e-mail links that increase the risk of malware attack.