Previous Section  < Day Day Up >  Next Section

Hack 92 Hack the MS-DOS Configuration File

figs/moderate.gif figs/hack92.gif

Tailor DOS's CONFIG.SYS file to optimize memory use, load device drivers, and set the DOS environment.

The CONFIG.SYS file resides in the root directory of your boot drive (typically C:\) and contains commands that configure your computer's hardware components (memory use and device drivers) and operating system during bootup. The contents of the CONFIG.SYS file are read and processed before DOS loads. CONFIG.SYS is a text file you can edit with DOS EDIT.COM, Windows Notepad, or any text editor program. CONFIG.SYS is used by DOS 6.22 and earlier and Windows 95-Me, but is not used by Windows NT, 2000, XP, or 2003.

You can bypass CONFIG.SYS and AUTOEXEC.BAT files if BootKeys=1 is configured in MSDOS.SYS [Hack #91]. To use this feature, press the F5 key when you see the "Starting MS-DOS..." or "Starting Windows..." notice at startup.

You can also "walk through" and accept or reject individual CONFIG.SYS and AUTOEXEC.BAT commands by pressing the F8 key instead of F5.

Under Windows 95 through Me, a few basic CONFIG.SYS parameters are preset within the IO.SYS boot file. These are:

DOS=HIGH Device=HIMEM.SYS SETVER.EXE FILES=60

BUFFERS=30 LASTDRIVE=Z STACKS=9,256 FCBS=4

These parameters aren't nearly adequate or ideal to get a typical PC with a CD-ROM drive running efficiently, so we need to create or hack our own CONFIG.SYS file to suit our needs. A typical and often more suitable CONFIG.SYS file reads as follows:

Device=HIMEM.SYS /TESTMEM:off Device=EMM386.EXE ON

RAM ROM DOS=HIGH,UMB FILES=99 BUFFERS=6,2 STACKS=0,0

DEVICEHIGH=C:\CDROM\CDROMDRV.SYS /D:MSCD001

This new CONFIG.SYS file alters some of DOS's default parameters and includes a few new parameters to give your system more resources to work with and slightly better performance. The significance of each parameter is explained below:


Device=HIMEM.SYS /TESTMEM:off

Loads the HIMEM.SYS Extended memory driver but, to save boot time, does not allow the memory test to run.


Device=EMM386.EXE ON RAM ROM NOEMS

Loads the EMM386 LIMS-EMS memory driver and creates Upper Memory Blocks with no LIMS-EMS available (to save RAM) that can be used to contain some loaded device drivers and part of DOS.


DOS=HIGH,UMB

Loads DOS into high and Upper Memory Blocks (UMB)


FILESHIGH=99

Allows up to 99 files to be opened at the same time and stores the information about them (not the files themselves) in upper memory.


BUFFERSHIGH=6,2

Creates six disk buffers using a total of approximately 3 KB of RAM to hold incoming disk data, and tells DOS to read ahead two sectors of data. This parameter is intentionally set well below the DOS default recommendations of 30, in anticipation of using SMARTDRV or another disk caching utility loaded under DOS through AUTOEXEC.BAT [Hack #93]. The buffer region is created in upper memory to save DOS RAM.


STACKS=0,0

Turns off the creation of processor stacks to handle hardware interrupt requests. The default value is fine in some cases and causes crashes in others. No stack or application problems have been seen in several years of using this setting.


DEVICEHIGH=C:\WINDOWS\COMMAND\ANSI.SYS

Loads the ANSI.SYS enhanced character set and display color-attribute driver into upper memory. ANSI.SYS is needed by some programs to support multicolor display versus the plain white-on-black DOS color scheme.


DEVICEHIGH=C:\CDROM\CDROMDRV.SYS /D :MSCD001

Loads a hardware driver for a CD-ROM into upper memory. MSCD001 is just an example. Your actual driver filename will be different and may be stored in different folder.

Try this CONFIG.SYS sample on your system and see how you like it for quicker booting and faster performance.

    Previous Section  < Day Day Up >  Next Section