Memtest86+ (memtest.org) runs from a CD.
There is a Microsoft memory tester as well.
http://oca.microsoft.com/en/windiag.asp
You can use the disk drive manufacturer's test utility to test your disk.
You can also download a Linux distro like Knoppix (knopper.net) and
watch that CD boot. During the boot sequence, there are text messages,
and if there are hardware problems, you'd see errors showing up in
the boot screen. I use this technique, while checking overclocks for
stability. When the memory is pretty flaky, I can start programs running
in Linux, and a few seconds later their windows disappear, when they
error out. Knoppix and Ubuntu can boot from a CD, without using
a hard drive, and you can even disconnect the hard drive if you want,
and only use the CD. In either case, the ISO is a 700MB download,
which is fine if you are on broadband.
To give an example, I had an old 440BX machine running Win98. I thought
for sure I had a problem with using too much memory. The machine would
freeze. I happened to try booting Linux on the machine, from the Knoppix
CD, and within about 30 seconds, the machine froze and I wasn't even
doing anything. As soon as some memory was removed from the machine,
it was as stable as could be. In both OSes... Booting an alternate
OS is good for verifying symptoms. If the symptoms don't return, it
could be a driver issue or the like.
Another test you can use, is Prime95 from mersenne.org . Executables
are available for Linux and Windows. That test runs from the OS, so
you have to be booted into something, for that one to work. I've run
it from inside Knoppix. The program does a math calculation with a
known answer, and if the processor/memory/chipset aren't in perfect
condition, you can get an error in 30 seconds or less.
Paul