Tuesday, June 2, 2009

Windows 7 and 4GB RAM

WARNING: Long post ahead!

I tried the beta of Windows 7 x64 back in January on my main PC, set up in a dual-boot scenario with Windows XP SP3 x86 (my main OS). It worked well, and I used it for a couple of days.

I purchased 4GB of 2x2GB Dual Channel RAM (Corsair brand), since XP was always sluggish even on 1GB. After installing the two modules, I was unable to start Windows 7. Windows XP never complained (although since it is 32-bit, it only reports 3.25GB of RAM installed). It complained "The bios in this system is not fully ACPI compliant".

I found that removing one of the two sticks of RAM would allow the PC to boot into Windows 7. I swapped the removed stick for the one in the PC and it still booted. I tried installing the other stick and changing the RAM timings in BIOS to no avail.

These sticks are rated at 1.9V memory voltage, but my motherboard outputs 1.8V for RAM, and the BIOS has no option to change this. I read about keyboard sequences for enabling advanced memory settings, but none of these applied to my board, and none worked for me.

I tried installing the Vista Beta I still have on disk; the installation wouldn't even proceed, complaining once again about the BIOS not being ACPI compliant. I tried re-installing Windows 7 and got the same thing. At this point I gave up, and figured that the memory voltage problem must be keeping the BIOS from operating properly when both 2GB sticks were installed. I read on the Web that Corsair memory sometimes has problems with certain motherboards, so I figured I must have failed to research my board properly before I bought the RAM.

Last night I decided to figure this out once and for all. I read that someone had a problem with Windows Vista and 4GB; this person also had a high-end video card, and when they removed it from the PC, their problems went away. This led them to believe the problem was that the power-supply was not powerful enough to run everything he was trying to use in it.

This was not my problem, however. Removing the video card and connecting my monitor to the motherboard's on-board video did nothing to help me. I was fed-up at this point (Windows 7 still booted when I removed one stick of memory), so I decided to reset my BIOS settings and start fresh. I thought I had done this once already, but I wanted to know for sure.

SURPRISE! Windows 7 booted with 4GB of RAM! I noticed that the boot was a little slower than before, but at least I'm getting somewhere. I then began to change settings in the BIOS setup to what I like to run (things like power status on plug-in, boot order, etc.). Importantly, I only changed one setting at a time, then saved and restarted into Windows 7. Each time, 7 booted like a charm.

That is, until I noticed that my on-board SATA controller was enabled. I have only one hard disk installed in this PC, and it is EIDE. Thus I usually kept the SATA controller disabled, as it was not necessary. When I disabled it and restarted, Windows 7 once again gave me a BSOD. "AHA!" I exclaimed. I re-enabled the SATA controller, and Windows 7 is working perfectly now.

I have no explanation as to why the SATA controller needs to stay enabled. But I am writing this in Windows 7, and so far I really like the new OS.

No comments:

Post a Comment

What do you think of this post? Have something to add to the conversation?