Too much memory in Windows 95/98/98SE/ME!
This question was answered on July 6, 2001. Much of the information contained herein may have changed since posting.
If your computer is running Windows 95/98/98SE or ME and it contains more than 512 megabytes of RAM, you may experience one or more of the following symptoms:
You may be unable to open an MS-DOS session (or command prompt) while Windows is running Attempts to do so may generate the following error message:
There is not enough memory available to run this program.
Quit one or more programs, and then try again.
The computer may stop responding (hang) while Windows is starting, or halt and display the following error message:
Insufficient memory to initialize windows Quit one or more memory-resident programs or remove unnecessary utilities from your Config.sys and Autoexec.bat files, and restart your computer.
The cause of the problem has to do with the Windows 32-bit protected-mode cache driver (Vcache) Vcache determines the maximum cache size based on the amount of RAM that is present when Windows starts Vcache then reserves enough memory addresses to permit it to access a cache of the maximum size so that it can increase the cache to that size if needed These addresses are allocated in a range of virtual addresses from 0xC0000000 through 0xFFFFFFFF (3 to 4 gigabytes) known as the system arena.
On computers with large amounts of RAM, the maximum cache size can be large enough that Vcache consumes all of the addresses in the system arena, leaving no virtual memory addresses available for other functions such as opening an MS-DOS prompt (which is supposed to create a new virtual machine)
According to Microsoft, to work around the problem use one of the following methods:
- Add/modify the MaxFileCache setting in the System.ini file to reduce the maximum amount of memory that Vcache uses to 512 megabytes (524,288 KB) or less
- Use the System Configuration utility (msconfig) or Sysedit to modify the Vcache limit
- Reduce the amount of memory that is installed in your computer to 512 MB or less.
Vcache is limited internally to a maximum cache size of 800 MB.
This problem may occur more readily with Advanced Graphics Port (AGP) video adapters because the AGP aperture is also mapped to addresses in the system arena For example, if Vcache is using a maximum cache size of 800 MB and an AGP video adapter has a 128-MB aperture mapped, there is very little address space remaining for the other system code and data that must occupy this range of virtual addresses
About the author
Posted by Ken Colburn of Data Doctors on July 6, 2001