Tuning Windows 95/98 For Performance

Last revised: Tuesday, 06-Mar-2001 10:42:52 CST

For great tips on NT, see Jerold Schulman's Windows NT Tips, Registry Hacks, and More page.

  1. Get rid of excess fonts, but DO NOT delete Arial, Times New Roman, Tahoma (used for windows in Office97 Word & Excel) or Marlett (used for the close, restore and minimize buttons in Windows.)
  2. Set the Virtual Cache to a fixed number (1024 for low memory systems, no more than 4096 for high memory systems. Edit the system.ini file as follows (Add the VCACHE section if it doesn't exist):
    [VCACHE]
    MinFileCache=2048
    MaxFileCache=2048

  3. Configure Virtual Memory, turn off virtual memory, run Defrag and then turn virtual memory back on, setting it to a fixed number of 1.5 times RAM. Do not set the maximum, only minimum. (If you limit the maximum, you could run out of swap space and get out of memory error messages.)
  4. Set "Typical Role of this Machine" (Control Panel/System/System Properties/Performance/File System) to "Network Server" and fix the registry errors for NameCache and PathCache (These were corrected in OSR2.)
    HKLM\Software\Microsoft\Windows\CurrentVersion\FS Templates\Network, NameCache should be A9 0A 00 00, PathCache should be 40 00 00 00 (the values are reversed.)
    While you're in there, fix the Mobile or Docking System settings also; set NameCache to 51 01 00 00 and PathCache to 10 00 00 00.
  5. Set Read-Ahead Optimization to "Full"
  6. Set CD ROM Performance to Quad Speed if you have more than 12 MB of physical RAM

Backing up the Registry

  1. Unless you use System Policies, the Windows 95 registry is two files; system.dat and user.dat. Those files are backed up automatically as system.da0 and user.da0. The backups are made every time Windows is rebooted, so the risk of backing up a corrupted registry is high. (Windows also creates another file, system.1st, in the root directory the first time you successfully launch Windows 95. Use this only as a last resort since it will contain NONE of the changes made to the system subsequent to the initial install.)Use an alternate method for backups. NOTE: The registry should be backed up every time you make a change to the system; either hardware or software.
  2. Export/Import - using Regedit (Start/Run, type in Regedit, click on OK) Click on Registry/Export Registry. This will create a *.REG file which contains the entire registry in text form. Then you can edit it, save it and double click on it to restore the registry. This can be done in DOS also, if Windows will not come up. Excellent protection against problems.
  3. CGFBCK.EXE - Windows 95 CD ROM/Other/Misc/Cfgback/ - Backs up the registry as *.RBK files. Allows multiple backup copies, making it possible to restore from more than one copy, in case the most recent backup is corrupted. Must be run from Windows, so it's useless in the case of a major crash.
  4. ERU - Emergency Recovery Utility - Win 95 CD ROM/Other/Misc/ERU - allows you to create a backup floppy disk (or ZipDisk) with critical system files. You can save Config.sys, Autoexec.bat, Win.ini, System.ini, Protocol.ini, User.dat, System.dat (if space permits), Io.sys, Command.com and Msdos.sys. Can be run from DOS or used as a boot disk to restore the files!
  5. BAT files - create your own backups using a bat file as follows:
    C:
    CD WINDOWS
    ATTRIB -r -a -s -h system.dat
    ATTRIB -r -a -s -h user.dat
    COPY system.dat system.bak
    COPY user.dat user.bak
    ATTRIB +r +a +s +h system.dat
    ATTRIB +r +a +s +h user.dat
    Then create a restore bat file as follows:
    C:
    CD WINDOWS
    ATTRIB -r -a -s -h system.dat
    ATTRIB -r -a -s -h user.dat
    COPY system.bak system.dat
    COPY user.bak user.dat
    ATTRIB +r +a +s +h system.dat
    ATTRIB +r +a +s +h user.dat
    This can be run from DOS or in a DOS window.
    Has the advantage of being easy to use. Can be run from DOS or Windows.

Taking Control of the Desktop

  1. Speed up menuing - Use Regedit, go to HKCU\Control Panel\Desktop, click on Edit/New/String Value, type MenuShowDelay, enter a value from 0 - 10,000 - the lower the number, the faster the menus pop up. Default is 400(ms).
  2. Hide Control Panel Extensions - Edit the control.ini file (in the Windows directory.) Add the section [don't load] and list the files you want to hide. For example,
    [don't load]
    Appwiz.cpl=no
    Password.cpl=no
    will hide the Add/Remove Programs icon and the Passwords icon.
  3. Hide Individual Drives in My Computer - Use Regedit, go to HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer, click on Edit/New/DWORD Value, type NoDrives, enter the correct hexidecimal value. To figure out how to hide the correct drives, do the following: place all available drives in alphabetical order, reversed in a horizontal list. (IOW, start with Z:,Y:,X: and so on back to A:.) Underneath the list, place a "1" underneath a drive you want to hide or a "0" underneath a drive you want to show. Using the Calculator, set to View/Scientific, convert the resulting binary number to hex. Enter the hex value as the value of NoDrives.
    If you wanted to hide the D: and E: drives, for example, it would look like this:
    E:D:C:B:A:
    1 1 0 0 0
    resulting in a binary value of 11000. Converted to hex, the value you enter in NoDrives would be 18. To hide all 26 drives, the value would be 3FFFFFF. To hide all but the local drives, assuming you have A,B,C,D & E as local drives and you're on a 26 drive network, the binary value would be 11111111111111111111000000, and the hex value would be 3FFFFC0.
  4. Slow Down Drive Fragmentation - Use Regedit, go to HKLM\System\CurrentControlSet\Control\File System, click on Edit/New/DWORD Value, type ConfigFileAllocSize, enter a value greater than 500 (default is 512K.) Keep in mind this value sets the minimum free file space Windows looks for to save files in.
  5. Disable Window Animation - (stops the "movement" of a window across the screen as it goes to the taskbar) Use Regedit, go to HKCU\Control Panel\Desktop\WindowMetrics, click on Edit/New/String Value, type MinAnimate and enter a value of 0.
  6. Control the Boot Process - open MSDOS.SYS, click on Properties and remove the check on Read Only, edit the [OPTIONS] section as follows: (add values if they don't already exist)
    BOOTWIN=0 - reverses F4 so machine defaults to previous Windows version
    BOOTGUI=0 - boots to the command prompt
    BOOTMENU=1 - boots to the startup menu
    BOOTKEYS=0 - turns off F4, F5, F6 & F8
    BOOTDELAY=0 - disables the ability to press F keys (note; pressing the spacebar bypasses the BOOTDELAY setting)
    BOOTMULTI=0 - disables multiple boot options
    LOGO=0 - bypasses the Win95 splashscreen
    DBLSPACE=0 - turns off compression & increases conventional memory
    DRVSPACE=0 - turns off compression & increases conventional memory
    AUTOSCAN=0 - turns off automatic Scandisk in OSR2 (1 is default)
    DOUBLEBUFFER=1 - loads doublebuffering driver needed by by some SCSI controllers
    LOADTOP=0 - disables loading of command.com or drvspace.bin at the top of 640K memory. Required by Novell Netware and other software which makes assumptions about specific memory areas.
    AUTOSCAN=2 - removes the prompt and runs Scandisk automatically
  7. Edit Winpopup - Use Rededit, go to HKLM\software\Microsoft\Windows\CurrentVersion\Applets\Popup, if necessary, add the following keys; AlwaysOnTop, MaxOnMsgRcv, MultiUserWarn, Sound. All these keys take binary values as follows:
    0000 00 00 - Off
    0000 01 00 - On
  8. Prevent Users from using Add/Remove Programs successfully - Use Regedit, go to HKLM\Software\Microsoft\Windows\CurrentVersion, and remove the AppsInstallPath key.

Tips for Adminstrators

  1. Edit TCP/IP Values - see Knowledge Base Article Q158474 for the details
  2. Problems Running NDS Tools - see KB Article Q142773
  3. Clear the MRU Lists - see KB Article Q142298
  4. Change the Win95 Setup SourcePath - Use Regedit, go to HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\SourcePath, edit the string to point to the new location. (You must also extract [see Q129605 for details on "extract.exe"] a new copy of the "layout.inf" file from the Precopy2.cab file and copy it to the Windows\INF directory.)
  5. Use Regedit in Real Mode - see KB Article Q131352
  6. Uninstall Novell's 32Bit Client (so it actually works) - see KB Article Q150925
  7. Disable NetBIOS over DNS - remove MS name resolution in a Novell only environment - change the following key: HKLM\System\CurrentControlSet\Services\VxD\MSTCP\EnableDNS from 1 to 0