Microsoft KB Archive/46099

MS-DOS Shell May Leave Only 64K of Free Memory PSS ID Number: Q46099 Article last modified on 03-25-1993 PSS database name: O_MSDOS

4.00 4.01

MS-DOS

Summary:

If the /TRAN option is not specified in the SHELLC line in the DOSSHELL.BAT batch file, the MS-DOS Shell becomes memory resident. This aids in quickly reloading the MS-DOS Shell, but free RAM drops to a maximum amount of approximately 64K bytes. For many programs, the message “Program too big to fit in memory” is generated (i.e., not enough memory is available).

This drop in available RAM takes effect when you enter the MS-DOS Shell; the MEM command shows about 64K free if it is executed any time after this drop has occurred.

Use SHIFT+F9 to invoke the command prompt to allow more usable memory for programs while still keeping the MS-DOS Shell in memory.

If the error “Program too big to fit in memory” occurs when executing a program from within the MS-DOS Shell or after exiting the MS-DOS Shell, make sure that the /TRAN switch is present in the SHELLC line of the DOSSHELL.BAT file.

More Information:

Adding /TRAN to the SHELLC command in the DOSSHELL.BAT file, executing DOSSHELL again, then exiting, does not remove the MS-DOS Shell from memory; the only way to get the memory back is to reboot the computer.

The MEM command can be used with the /PROGRAM option to list the segments owned by SHELLC and other programs in the memory usage map. The following list is a typical example of what MEM.EXE produces if the MS-DOS Shell is memory resident (i.e., invoked without /TRAN):

655360 bytes total memory 655360 bytes available 64928 largest executable program size Additional reference words: 4.00 4.01 noupd

Copyright Microsoft Corporation 1993.