How to Increase Conventional Memory for MS-DOS-Based Programs (134399)



The information in this article applies to:

  • Microsoft Windows 95
  • Microsoft Windows 95 OEM Service Release 2.1
  • Microsoft Windows 95 OEM Service Release 2.5
  • Microsoft Windows 98
  • Microsoft Windows 98 Second Edition

This article was previously published under Q134399

SUMMARY

This article describes how to increase the amount of conventional memory available for MS-DOS-based programs in Windows. The following topics are discussed:
  • Determining current memory conditions.
  • Making more conventional memory available.

MORE INFORMATION

MS-DOS-based programs require a certain amount of conventional memory to run, even when you run them in Windows. If you attempt to run an MS-DOS-based program that requires more conventional memory than is currently available on your computer, the program may not run correctly or at all, and an error message indicating that there is insufficient memory to run the program may be displayed. When this occurs, you must reconfigure your computer so that more conventional memory is available.

Determining Current Memory Conditions

To determine how much conventional memory is currently available for MS-DOS-based programs, type the following command at a command prompt, press ENTER, and then view the value on the Largest Executable Program Size line:

mem /c

If the value on the Largest Executable Program Size line is smaller than the amount of conventional memory required by the MS-DOS-based program you are trying to run, the program may not run correctly or at all until you reconfigure your computer. To determine how much conventional memory a particular MS-DOS-based program requires, consult the documentation included with the program, or contact the program's manufacturer.

Making More Conventional Memory Available

Device drivers and memory-resident programs that load from the Config.sys and Autoexec.bat files can reduce the amount of conventional memory available for MS-DOS-based programs. Increasing the amount of conventional memory that is available for MS-DOS-based programs typically involves removing unnecessary drivers and programs from the Config.sys or Autoexec.bat files, replacing real-mode drivers in the Config.sys file with protected-mode versions, or loading drivers and programs into upper memory instead of conventional memory.

Removing Unnecessary Drivers and Programs:

To determine if a particular driver or memory-resident program in the Config.sys or Autoexec.bat file is required for your computer to function properly, consult the documentation included with the program or device that installed the driver or memory-resident program, or contact the program or device's manufacturer.

If you are not sure which program or device installed a particular driver or memory-resident program, you can attempt to determine if the driver or program is necessary by temporarily disabling the corresponding line in the Config.sys or Autoexec.bat file. If your computer, the devices installed on your computer, and the programs you run on your computer all seem to function properly after you disable a line, the driver or memory-resident program may not be necessary.

NOTE: Before you modify the Config.sys or Autoexec.bat files, you should make backup copies of the files. Do not remove any hard disk drivers, disk partitioning drivers, or disk compression drivers while you are attempting to determine if the drivers and programs in your Config.sys or Autoexec.bat files are necessary. For information about specific drivers that should not be removed, please see chapter 35 of the Microsoft Windows 95 Resource Kit.

Replacing Real-Mode Drivers with Protected-Mode Versions:

Windows includes protected-mode drivers for many devices. In addition, many hardware manufacturers provide protected-mode drivers for their devices. To attempt to install a Windows protected-mode driver for a device installed on your computer, follow these steps:
  1. In Control Panel, double-click Add New Hardware.
  2. Click Next, verify that Yes (Recommended) is selected, click Next, and then click Next again.
If the Add New Hardware Wizard does not detect the device and install a protected-mode driver for it, you can attempt to install a Windows protected-mode driver for the device manually. To do so, follow these steps:
  1. In Control Panel, double-click Add New Hardware.
  2. Click Next, click No, and then click Next.
  3. Click the type of device for which you are attempting to install a protected-mode driver in the Hardware Types box, and then click Next.
  4. Click the manufacturer of the device in the Manufacturers box. If the specific device appears in the Models box, click the device, and then click OK to install the protected-mode driver. If the manufacturer of the device does not appear in the Manufacturers box, or the specific device does not appear in the Models box, Windows does not include a protected-mode driver for the device.
To determine if the hardware's manufacturer provides a protected-mode driver for the device, contact the device's manufacturer.

Loading Drivers and Programs into Upper Memory:

To attempt to load one or more drivers or memory resident programs from the Config.sys or Autoexec.bat files into upper memory, make sure that the Config.sys file contains lines similar to the following lines (in the following order):
   device=c:\windows\himem.sys
   device=c:\windows\emm386.exe noems
   dos=high,umb
   devicehigh=c:\windows\command\drvspace.sys /move
				

Then, try loading device drivers in the Config.sys file using the DEVICEHIGH command instead of the DEVICE command. In addition, try loading memory-resident programs in the Autoexec.bat file using the LOADHIGH command.

NOTE: If your computer is configured so that expanded memory is available and you are loading the Mscdex.exe file from the Autoexec.bat file, you can attempt to load part of the Mscdex.exe file into expanded memory using the /E switch on the Mscdex.exe command line.

REFERENCES

For additional information about increasing the amount of conventional memory that is available for MS-DOS-based programs in Windows, please see the following articles in the Microsoft Knowledge Base:

ARTICLE-ID: 37242
TITLE : A General Tutorial on the Various Forms of Memory

ARTICLE-ID: 77083
TITLE : Optimizing Your Use of Upper Memory Blocks

ARTICLE-ID: 87165
TITLE : Command-Line Switches for MSCDEX.EXE


Modification Type:MinorLast Reviewed:12/16/2004
Keywords:kbenv kbhowto KB134399