Windows XP Optimizations

Windows No Comments

windowsxpoptimizeIf you are running Windows XP on older hardware, you might wish to make some of the following adjustments. The optimizations below were gathered over the past decade. These modifications range from simple to dangerous, so proceed at your risk. (Some of these optimizations may be outdated.)

These changes are generally safe:

  • Open up Internet Explorer fast:
    1. Edit the Internet Explorer shortcut.
    2. Add parameter “-nohome” to the shortcut command to force opening up IE with a blank page.
  • Open up the C drive in Windows Explorer by default:
    1. Create or edit the Explorer shortcut.
    2. Use this path and arguments to open up the C drive by default: “C:\windows\explorer.exe /n,/e,c:\”
  • Quickly open the Windows Search Results dialog:
    1. Go to menu Start->Search. The Search Results dialog will appear.
    2. Click on the “Turn off animated character” option on the left menu.
    3. Click on “Change Preferences”.
    4. Click on “Change files and folders search behavior”.
    5. Select “Advanced…” option.
    6. Hit OK
  • Set a fixed size for the Virtual Paging File (potentially reduces hard drive usage):
    1. Open My Computer properties.
    2. Select “Advanced” tab.
    3. Click “Settings” button under “Performance”.
    4. Go to “Advanced”.
    5. Leave “Programs” and “Programs” selected.
    6. Under “Virtual Memory”, click “Change” button.
    7. Select “System managed size” and input the size of the paging file. The initial value is usually 1.5 times memory. Maximum value is 3 times memory. You have greater than 512MB, you can set to 0.5 times memory.
    8. Click OK.
  • Disable Fast User Switching (if you only have one default user):
    1. Go to Control Panel->User Accounts.
    2. Click “Change the way users log on or off”.
    3. Leave the “Use the Welcome screen” check (this is required so Windows won’t prompt for password).
    4. Unselect “Use Fast User Switching”.
    5. Click “Apply Options”.
  • Set DMA Mode on IDE Drives (for fast hard drive transfers):
    1. Open Device Manager (My Computer->Manage).
    2. Go to “IDE ATA/ATAPI controllers”.
    3. Double-click on “Primary IDE Channel”.
    4. Go to “Advanced Settings” tab.
    5. Make sure all “Transfer Mode” boxes have “DMA If Available”.
    6. Repeat for secondary IDE channel, etc.
  • Turn off File Indexing (reduces hard drive usage):
    1. Go to Computer Management (My Computer->Manage).
    2. Go to Services and Applications->Indexing Service->System->Directories.
    3. Double-click on each directory (with yes in “Include in Catalog”):
      • select “no” under “Include in Index?”
      • click OK.
    4. Open My Computer.
    5. Right click on the Hard drive and choose properties.
    6. Uncheck the “Allow Indexing Service to index this disk for fast file searching”:
      • A new window will pop up, choose include folder and subfolders.
      • click OK.
  • Remove built-in support for ZIP files and also prevents Search from looking into compressed files (very slow operation):
    1. Go to menu Start->Run
    2. Type “regsvr32 /u zipfldr.dll”
    3. Optionally, install another zip application like Winzip to take over the extension; otherwise, if you open a zip file, Windows XP will re-register the zipfldr.dll.
  • Improve shutdown speed (by immediately killing applications at shutdown or reducing the wait to kill timeout):
    1. Go to Start->Run and type “regedit”.
    2. Go to “HKEY_CURRENT_USER\Control Panel\Desktop”.
    3. Set the key AutoEndTasks to value 1 to immediately kill applications (without giving time to save) at shutdown.
    4. To reduce wait to kill timeout, change the following:
      • Set “HungAppTimeout” to 8000 (default is 5000).
      • Set “WaitToKillAppTimeout” to 8000 (default is 20000; 4000 if you are brave).
      • Also, go to “HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control” and set “WaitToKillServiceTimeout” to 8000 (default is 20000; 4000 if brave).

These changes can be dangerous:

  • Increase System CMOS/realtime clock IRQ priority:
    1. Find out the interrupt that the System CMOS/realtime clock is using by opening Device Manager, System devices, and properties on “System CMOS/realtime clock”.
    2. Click on the “Resources” tab (usually the interrupt is IRQ 8).
    3. Increase the IRQ priority by running “regedit” and going to “HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\PriorityControl”.
    4. Create DWORD value named “IRQ#Priority” (where ’#’ is the IRQ number).
    5. Set the value to 1.
    6. Restart Windows.
  • Ensure that L2 Cache is used (Windows XP sometimes doesn’t detect it so we must manually set it):
    1. Run “regedit”.
    2. Go to “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management”.
    3. Adjust “SecondLevelDataCache” to your processor’s L2 cache size (aka 512 kilobytes). (Note: Make sure to use “Decimal” input!)
    4. Tweak Memory Performance by boosting the system cache (if you have 256MB memory or more):
    5. Run “regedit”.
    6. Go to “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management”.
    7. Set “LargeSystemCache” to 1 (default is 0) to boost the system cache (only if you have tons of memory) by telling XP to allocate all but 4MB of system memory to the file system cache. (Note: This option can be accessed under “My Computer->Manage->Advanced->Performance Settings->Advanced->System Cache”.)
    8. Optionally, set “IOPageLockLimit” (create this DWORD value if necessary) to 8-16 MB (value in bytes; if exists, it is usually set to 512KB). This improves Input/Output performance for large file transfer operations (good if running a server).
    9. Restart Windows.
  • Improve NTFS Performance:
    1. Run “regedit”.
    2. Go to “HKEY_LOCAL_MACHINE\SYSTEM\CurrentContolSet\Control\Filesystem”.
    3. Create DWORD entry “NtfsDisableLastAccessUpdate” with value 1 to disable updating the last access time.
    4. Optionally, change “NtfsDisable8dot3NameCreation” DWORD entry to 1 to disable creation of short names (if not supporting MS-DOS or Win 3.x). (Note: If we disable this, some programs like PowerCD and games like Return/Revenge of Arcade will not work!)
    5. Optionally, add “NtfsMftZoneReservation” DWORD entry to reserve the appropriate space for the master file table. If your NTFS volumes generally contain relatively few files that are typically large, set value to 1 (the default). Use a value of 2 or 3 for moderate numbers of files, and 4 (the maximum) if your volumes tend to contain a relatively large number of files. (Note: be sure to test any settings greater than 2 because these higher values cause the system to reserve a much larger portion of the disk for the master file table.)
    6. Reboot Windows.
  • Prevent QoS from reserving bandwidth (Not necessary because if QoS is not used, then bandwidth
    is used by other applications):

    1. Go to Start->Run and type “gpedit.msc”.
    2. Open Computer Configuration->Administrative Templates->Network->QoS Packet Scheduler.
    3. Double-click on “Limit reservable bandwidth”.
    4. Set it to Enabled and the Bandwidth Limit to 0%.
    5. Go to Network Connections.
    6. Right click on your connection and choose properties.
    7. Go to General or Networking tab.
    8. Make sure QoS packet scheduler is enabled.
    9. Reboot Windows.
  • Enable UDMA66 (for faster hard drive I/O):
    1. Run “regedit”.
    2. Go to “HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10319}\0000”
    3. Create a DWORD named “EnableUDMA66”.
    4. Set value to 1 to enable (set to 0 to disable).
  • Speed up Diskcache:
    1. Open “regedit”.
    2. Go to “HKEY_LOCAL_MACHINESYSTEM/CurrentControlSet/Control/Session Manager/Memory Management/IoPageLockLimit”
    3. Modify the value in Hex depending on the size of your RAM: For 64M, use 1000. For 128M, use 4000. For 256M, use 10000. For 512M or more, use 40000.
    4. Reboot Windows.

Good luck with turning your old Windows XP machine into a speed demon!

No Comments

Common Windows XP Annoyances and How to Fix Them

Windows No Comments

windowsxpbugThrough the years of using Windows, I’ve encountered common issues and their solutions. I’ve documented a couple, Enabling Tab-Completion for Windows 2000 and Accelerator Keys for Address Bar Text Alignment (Internet Explorer), and wanted to capture the remainder below. (The tips below may also work for Windows 7.)

Where is my Show Desktop icon?

On Windows XP, there is a nice Show Desktop icon in the Quick Launch toolbar which when clicked on, will minimize all windows. (On Windows 7, this is replaced by an empty vertical bar at the right-most position in the system tray.) The Show Desktop icon was a quick way to get access to all the icons on the desktop. Unfortunately, through system or user error, this icon may get deleted.

The Show Desktop icon is not a Windows shortcut. It is a Shell Command File (SCF) containing text which Windows understands and can execute. To re-create the Show Desktop icon, create a text file named “Show Desktop.scf” with the content below, and drag it to the Quick Launch toolbar:

[Shell]
Command=2
IconFile=explorer.exe,3
[Taskbar]
Command=ToggleDesktop

How to automatically log into Windows on startup?

If you did not input a password when creating your default user during Windows XP installation, Windows will log you in automatically. However, if you did input a password, Windows will prompt you to login with a Welcome screen. If you would like Windows to log in by default, here is how you can create an automatic login to bypass the Welcome screen:

  1. Go to Start Menu->Run, type “control userpasswords2”, and click Ok.
  2. Uncheck the “Users must enter a user name and password to use this computer” option and click Apply.
  3. A dialog will appear that asks you what user name and password should be used to logon automatically. Type your username and password, and click OK.

How to add my own “Send To” menu command?

When you left-click on a file, you will see a list of options including a menu called “Send To”, which contains a list of applications which you can pick to open the file. If you would like to add your own choice of applications to that list, here are the steps:

  1. Run Start Menu->Run, type “shell:sendto”, and click Ok. This will open up your user’s “Send To” folder.
  2. Create a shortcut to any application (such as Notepad.exe or Wordpad.exe) in the folder.

How do I cancel a print job?

Eventually for whatever reason, you will find yourself with a print job which is stuck and cannot be cancelled using the Printer properties dialog. The dialog would keep saying that the job is in “Deleting” state. To avoid having to reboot the computer, try this command line method to delete that print job:

  1. Run Start Menu->Run, type “cmd”, and click Ok.
  2. Execute the following commands:
    net stop spooler
    del c:\windows\system32\spool\printers\*.shd
    del c:\windows\system32\spool\printers\*.spl
    net start spooler

How to debug my wireless connection?

The Windows network diagnostic help has improved greatly from Window XP to Windows 7. However, even in Windows 7, you may eventually need to run some command lines to diagnose the network problem. Below are some useful commands.

  • Type “ipconfig” to find the assigned IP address, subnet mask, and default gateway.
  • Type “ipconfig /all” for the above with even more details.
  • Type “ipconfig /flushdns” to flush the dynamic name service cache (used to resolve hostname to IP addresses).
  • Type “ping [hostname]” to see if you can reach a particular hostname. (Note that for security reasons, some hosts may disable the ping response and this command won’t succeed.)
  • Type “nslookup [hostname]” to resolve a hostname to an IP address.
  • Type “tracert [hostname]” to show the servers that participate in the communications pipeline between you and that host.
  • Type “route print” to show the routing rules in effect.
  • Type “netstat /a /o” to list all the active connections and listening ports.

Note: You can always press the Control + C keys to abort long-running commands such as “ping” and “tracert”.

If all else fails, reboot both the wireless router and your computer.

How to increase the number of folders Windows will remember custom settings for?

When you customize the settings on a folder (such as list instead of icon view), Windows will remember your settings for the next time you open that folder. However, Windows will only do this for a limited number of folders. (Windows XP Service Pack 2 alleviates this issue by increasing the original, default 400 folders to 5000 folders.)

To increase the number of folders that Windows will remember custom settings for, do the following:

  1. Start the Registry Editor by going to menu Start->Run, type “regedit”, and click Ok.
  2. Go to the “HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam” key.
    • Delete the “Bags” and “BagMRU” subkeys. One can also delete the “MUICache” subkey.
    • Create or modify the DWORD key called “BagMRU Size” with the desired number of folders in hex. For example, for 5000 folders, input the Hex “1388” value.
  3. Repeat the above steps for the “HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell” key.
  4. Restart Windows for the changes to take effect.

How to remove deleted Windows programs from the “Add/Remove Programs” dialog?

Sometimes, a program which you know have been deleted will still show up in the “Add/Remove Programs” dialog. To remove it from the list of installed applications, do the following:

  1. Start the Registry Editor.
  2. Go to the “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall” key.
  3. Remove the entry for the deleted program in question. You will need to click on each subkey to locate the one with the correct program title.

Hope that these tips will prove useful. For other annoyances (for all flavors of Windows), check out the Annoyances.org website.

No Comments