How do I troubleshoot a Windows freeze or slowness?

Most system freezes (where you can't use hot-keys like CTRL+ALT+DEL) are caused by hanging drivers,
so you will have to either replace the device or update the driver. Troubleshooting can be done:

  1. Download Windows Performance Analyzer for your Windows version.
  2. Install the software on your system.
  3. Open a command prompt as administrator, and copy paste the next command:

    xperf -start perf!GeneralProfiles.InBuffer && timeout -1 && xperf -stop perf!GeneralProfiles.InBuffer myTrace.etl
    
  4. Press ENTER once to start the command, now you will have to wait till your system hangs.
    You can do whatever you want to. Please no heavy activity like gaming or private things...

  5. Right after your system stops hanging you go to the console and press ENTER.
  6. After waiting some time a log file myTrace.etl will be produced, compress this to a zip file.
  7. Put this compressed version of the file somewhere online (perhaps 2shared).
  8. Share the link here, I will do an attempt to find and show you the cause of your problem.
  9. OR troubleshoot the trace yourself using instructions found here, start with step 6 - 7.

Assuming you are using a Windows OS...

Things to check:

  1. PC has 10% at least of free disk space
  2. PC has at least 1 GB of RAM for Windows XP and 2 GB for Windows Vista
  3. If there are any hanging programs or drivers.
  4. Corrupt system files. If that is so, run sfc /scannow in cmd and let it replace any corrupt system files. It may ask for your Windows CD. Or, if it is seriously damaged then perform a Windows XP repair install or Windows Vista repair install
  5. A badly corrupted file system. This is from experience rather than knowledge. Run chkdsk /r in the command prompt.
  6. Due to the way Windows handles files, it will in inevitably get slow over time. Your MFT structure gets bigger and bigger over time. The only cure is a fresh install.
  7. Malware. Download and run HijackThis, and then post the log here. It'll give us a decent idea of what's running and what could be hogging all your memory/CPU.

First off, I check what is automatically started when the machine boots up.

  • Autoruns
  • Registry: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  • msconfig
  • Run -> services.msc This will list all the services that are started up when your machine turns on. You can manage all of them here from this MMC snap-in.
  • Scheduled Tasks

I will then run process explorer and see what is running after it is booted and see what hogs up a lot of memory and CPU.

  • Process Explorer
  • Process Monitor
  • Task Manager

I will then make sure all the drivers are up to date, same with anti-virus, windows update and other critical applications such as web browsers, java, flash, etc.

  • Java Runtime
  • Flash Player

Then I will defrag their hard drive if it needs to be done.

  • Disk Defrag

Sometimes I will clear out their web browser history and cookies and also clean out their temp folders.

  • CCleaner
  • Disk Cleanup

I will also look through the event viewer to see if there are any errors being reported and check into them if they do.

  • Event Viewer

If all else fails and the system will support it, a RAM upgrade may be in order.