I agree it is a hardware problem.
I have encountered similar before, once it was the hard drive on its way out. This presented itself in the whole machine hanging and only a reset would fix it - it would appear the driver for the SATA disk would hang waiting for a response that would never come. However if your Windows 7 and Vista are on the same disk this may not be the case - Do a scandisk of the vista disk and check that all seems okay.
The other time it happened to me I located it to being the power supply being on its way out. In this instance I was getting the odd freezes and also random reboots. Replacing the power supply resolved this issue and it never happened since.
I would not expect it to be the memory as typically you would get a BSOD when the registers become corrupted.
Cheers
Jof