|
Problems With Memory
Problems with memory
include:
Memory errors in
Windows, most often called GPFs
(General Protection Fault errors), which are caused by an application
program attempting to use memory addresses that have not been allotted to
it. Insufficient memory to run an application program. Memory leaks, which
occur when a program fails to release its memory back to the heap as it
terminates.
Memory Errors
With the early PCs of
the 1980s, DOS operated totally in real mode. Real mode is a processing
mode whereby a program can have access to any area of memory. Real mode
memory addressing is not controlled by the operating system. In the past,
it was assumed that one PC would be running only one program controlled by
one user. Operating system designers gave little thought to allowing for a
multitasking environment.
The 80286 CPU
introduced a new processing mode called protected mode. In protected mode,
the operating system controls the memory addresses that a program can
access. When a program attempts to access a memory address that has not
been assigned to it, an error occurs. When this error occurs in Windows,
Windows displays the message “Program name caused a General Protection
Fault in module...” This message is more commonly known as a GPF.
Sometimes, Windows can recover from a GPF by simply closing down the
program that caused the error. For more serious errors, the entire Windows
environment might hang, and the only recourse is to reboot.
GPF error messages were
originally intended to indicate only errors with applications misusing
memory. However, over time, the scope of GPF errors has increased to
generally mean that an error has occurred with the software that might or
might not pertain to memory. If you get a GPF while running software, note
what was happening just before the GPF occurred. what other software was
loaded at the time. what, if any, unusual conditions existed at the time.
This information will be helpful in identifying the source of the problem.
If you notice that a GPF consistently happens during the same event when
you are using an application program, suspect a program bug.
Call technical support
for the software and ask for a possible fix. Gather as much information as
possible about the problem before you call. Printed screens can be very
useful in these situations. If you can reproduce the problem at will,
especially while technical support is on the phone, you are more likely to
find a solution.
If Microsoft makes the
software in question, log onto the www.microsoft.com Web site and search
for the software and the errors. For example, if a GPF consistently occurs
while you are using Microsoft Word, enter the query “GPF and Microsoft
Word” in the search box.
Insufficient Memory
Problems with
insufficient memory are caused by the limited size of the five memory
heaps more than by the total amount of RAM installed on the systemboard.
You should suspect insufficient memory problems when you try to run two
programs at the same time, and they don’t run, they run slowly, or you get
memory errors. Windows 3.x uses memory heaps that are a fixed size and do
not increase even when much more RAM is installed. The same basic problem
also exists with Windows 9x. Both of these operating environments have
limitations on the amount of RAM they can utilize successfully. For
Windows 3.x and Windows 9x, there are still some things you can do to
better manage memory used by application programs in these environments.
Nuts & Bolts offers two
tools to monitor system resources, including memory. WinGauge Pro monitors
system resources, virtual memory, swap file requests, and drive space, and
Discover Pro monitors memory use down to the individual application level.
WindSock runs as a TSR
and can be helpful in determining which applications are using large
amounts of the memory heaps. WindSock is freeware by Chris Hewitt,
available from the shareware Web site, www.shareware.com.
Memory Leaks
Memory leaks are caused
when an application program fails to release the memory addresses assigned
to it when it unloads. Memory leaks cause the memory heaps to have less
and less memory available for new application programs being loaded.
If you notice that you
have memory problems after you have loaded and unloaded several programs
or the same program several times, suspect a memory leak. Once you have
identified the software causing the leak, go to the software manufacturer
and request a fix or patch. An upgrade of the software might be available
that has solved the memory leak
problem. WindSock can
be helpful in determining which application program does not release
memory when it is unloaded.
<Previous>
<Home>
<Next>
|