The Rocky Road to Windows 7


Recently, I decided to upgrade my laptop. After some research, I chose the Lenovo ThinkPad W500. Not much seems to have changed in two years, as it looks almost identical to my old Lenovo ThinkPad T61p. I felt that with the new decade upon us, it was time to move from Windows XP to Windows 7. While setting up the new laptop, I ran into many problems with VPN, Wi-Fi, and usable RAM.

I figured that I would carry over the settings from the old laptop using Windows Easy Transfer. After setting everything up, I couldn’t get VPN to work. It had worked briefly before I installed the old settings and joined the domain. After unsuccessfully trying to figure out why the IPSec virtual adapter wouldn’t load, I decided to blame it on the transfer of my old settings.

When I tried to move back to old restore points, they caused blue screens. This proved so unsuccessful that I had to start over by restoring the ThinkPad to factory settings. This time, I didn’t transfer settings from the old laptop, and VPN worked until I joined the domain. This was baffling because another VPN user did not have any issues at all on the same laptop.

Well, it turned out that my desire to reuse my work Ethernet IP address for VPN was to blame. Unlike Windows XP, Windows 7 has problems with another disabled network adapter having the same IP address. Unfortunately, the logs did not indicate anything suggesting this as a cause of my connectivity woes.

The next problem was to get the Draft-N Wi-Fi to run at more than 54 Mbps. Changing settings on the Wi-Fi adapter didn’t help. It turned out that the standard driver doesn’t allow devices using WPA-TKIP to run at higher speeds.

However, playing with the adapter settings at work later caused poor VPN performance at home with many dropped packets. Unfortunately, I didn’t discover the root cause before trying out several different versions of VPN clients, including moving from IPSec to SSL. Finally, I discovered that using a 40 MHz wide channel at 2.4 GHz resulted in many dropped packets. With the wide channel, the connection speed was reported as 270 Mbps while the narrow channel only showed 130 Mbps. However, the extra speed doesn’t seem to be worth the dropped packets. Even after switching to the narrow channel, there were still some dropped packets. Downgrading from the most recent Intel driver to the one provided by Microsoft seems to have dealt with that.

Finally, I decided to use the 32-bit version of Windows 7 to avoid problems with drivers and applications. I read that Windows 7 always uses PAE (Physical Address Extension) when hardware-enabled DEP (Data Execution Prevention) is turned on and that the 32-bit version supports up to 4 GB RAM. Because 32-bit Linux systems with PAE can make use of 4 GB RAM, I figured that Windows 7 would be able to do that as well. However, after I started Windows, it reported 4 GB RAM installed, 2.46 GB usable. After trying many different things, I managed to increase the usable RAM to 2.99 GB by turning off support for Switchable Graphics and Intel Active Management Technology in the BIOS. As an aside, DEP was turned off in the BIOS for most of my experiments but turning it on did not give me any more usable RAM. That wasn’t what I expected.

Now, the new laptop works reasonably well aside from the unusable 1GB RAM. On reflection of the overall process, I realize that I had manipulated too many variables at the outset. This made debugging the setup difficult. It was easy to blame Windows 7 and the settings transfer. However, the only real problems with Windows 7 were the VPN adapter failing quietly with a reused IP addresses, the usable RAM in the 32-bit version, and maybe the Wi-Fi driver.