What is CONFIG.SYS?
CONFIG.SYS is a text file containing disk operating system (DOS) commands that tell the operating system (OS) how the computer is initially set up. More specifically, CONFIG.SYS commands specify memory device drivers and programs that control hardware devices, enable or disable system features and set limits on system resources.
DOS -- not to be confused with DoS, which stands for denial-of-service attack -- was the primary OS for the first few generations of personal computers. With the advent of Microsoft Windows OS, DOS and CONFIG.SYS have been phased out.
For the few remaining DOS systems, CONFIG.SYS loads at startup before the autoexec.bat file, also known as the automatic execute.batch program. Because CONFIG.SYS is a text file, it is editable in any text-editing program.
Common CONFIG.SYS commands explained
CONFIG.SYS files contain commands, which enable the user to specify which part of the system they are configuring. Any time a system running DOS is booted, the CONFIG.SYS file is read.
Some common commands are the following:
- <Device>. Device commands are used to load device drivers for different hardware components and peripherals.
- <Drivparm>. This defines parameters for devices like disk and tape drives upon boot.
- <Lastdrive>. Lastdrive specifies the highest available drive letter.
- <Dos>. The Dos command loads MS-DOS into the high memory area to give programs access to that area.
- <Buffers>. These commands allocate memory for a specified number of disk buffers when the system boots up.
- <Numlock>. This specifies whether the NUM LOCK key on the computer is turned on or off.
- <Menuitem>. This denotes an item on the startup menu.
- <Submenu>. This defines a submenu from the startup menu.
- <Files>. This specifies the number of files the system will be able to load at one time.
- <FCBS>. This specifies the number of file control blocks for filesharing. It can specify between 1 and 255 file blocks.
CONFIG.SYS file example
The following example shows the contents of a CONFIG.SYS configuration file and explains what each line means:
- NUMLOCK = OFF turns NUMLOCK off on the keyboard.
- DEVICE=C:\Windows\HIMEM.SYS loads drivers into high memory so a version of Windows with a graphical user interface can function.
- DOS=HIGH,UMB loads DOS into an upper memory block.
- DEVICE=C:\Windows\EMM386.EXE NOEMS loads the extended memory manager.
- FILES=30 allows Windows to load 30 files at the same time.
- BUFFERS=20 allocates memory to 20 disk buffers when the system boots up.
- DEVICEHIGH=C:\MTMCDAI.SYS /D: MSCD0001 configures the CD ROM driver to enable the drive named MSCD0001 to function.
- DEVICEHIGH=C:\Windows\COMMAND\ANSI.SYS enables the user to use different text sizes, colors and special characters.
- DEVICEHIGH /L:2 =C:\WINDOWS\COMMAND\DISPLAY.SYS CON=(EGA,,1) loads the DOS EGA/VGA driver for one character set on the screen.
- SHELL=C:\WINDOWS\COMMAND.COM C:\WINDOWS\ /E:1024 /P defines the name and location of the command interpreter. E is the size of the environment and P states that the command interpreter will execute the autoexec file after the CONFIG.SYS file.
How to configure CONFIG.SYS files
Follow these seven steps to configure a CONFIG.SYS file in DOS:
- Hold down Windows-R to open the Run menu.
- Enter the phrase cmd and press enter to open the command line prompt.
- Enter the phrase cd/ and press enter. Write edit config.sys in the command window to open the editor.
- Enter the desired configuration commands.
- Add any devices needed for the CONFIG file to load.
- Press Alt-F then S to save the file.
- Press Alt-F then X to exit.
These steps enable a user to access and alter the CONFIG.SYS file active in DOS versions. By doing this, the user can carry out various administrative tasks. One example is creating a boot menu that lets the user switch between Windows and MS DOS. Users can also control the configuration of the system memory manager, allocate resources to different files and buffers, and control various drivers, such as CD-ROM, sound card and network drivers. Once the seven steps above are completed, the CONFIG.SYS file can be edited via the command line.
Does Windows still use CONFIG.SYS?
The Windows OS does not use CONFIG.SYS files. Modern versions of Windows, including Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10 and Windows 11, have replaced the CONFIG.SYS file with the Windows registry. Windows 95 and Windows 98 included a CONFIG.SYS file to provide backward compatibility.
The registry stores information and settings for the software, hardware, user preferences and OS configurations. The Windows Registry Editor is used to access and configure the Windows registry. It comes pre-installed on Windows devices and can be accessed from the command line using the regedit command.
By editing the registry, users can perform various administrative tasks, such as checking the PC's BIOS version or configuring Auto Login.
The CONFIG.SYS file is only used with MS-DOS and OS/2. Some business cases and programs may require users to run a DOS emulator over modern versions of Windows. If this is the case, it can be useful for administrators to know how to configure the CONFIG.SYS file.
Learn about system configuration in PowerShell, a more modern Windows environment.