NWA-PCUG Newsletter Article, September 2009
Is It Time To Switch To 64 Bit Windows?
Written by Brian K. Lewis, PhD, a Member of the Sarasota PCUG, Florida
http://www.spcug.org
bwsail (at) yahoo.com (click to email author)

This article has been obtained from APCUG with the author’s permission for publication by APCUG member groups; all other uses require the permission of the author (see e-mail address above).

In my February 2008 article in the Monitor comparing 32 bit and 64 bit computing, I was still advising caution for those wishing to upgrade. Today every new computer is capable of running a 64 bit operating system. As a result there are many voices saying if you have the capability to run a 64 bit operating system, you should take advantage of it. Microsoft had previously indicated that Windows 7 would be available only in a 64 bit version. However, they now say both 32 & 64 bit versions will be sold. There's some speculation in the computer industry that Windows 8 may only be 64 bit. So it appears to be time to reconsider the move to a 64 bit operating system (OS). There are many advantages for 64 bit over 32 bit, but in order to better understand them, we need to take a brief look at how these will affect your decision.

To start with we should recall a little history. In the early days of personal computing the processors instruction sets were designed for 8 bit “words”. This was the data size that could be used to express a single character. A bit is either a “1” or a “0”. Eight bits were then referred to as a “byte” and that was considered a computer “word”. In those days the CPUs we had were the Intel 8080, the Zilog Z80, Motorola 6800, and the MOS Tech 6502. These were all 8 bit processors with 8 bit data paths. The Apple I/II/IIe and Commodore Pet all used the 6502. IBM designed the first x86 CPU which was called the 8086 and it was a 16 bit processor. However, when IBM produced their first personal computer in 1981 it used their 8088 processor which was an 8 bit version of the 8086. The next step was to the 16 bit processor with the 80286 processor in 1984. The software changes rapidly followed this advance. The change to 16 bit processing allowed the central processor and the data bus to transfer data in increasingly larger sizes, referred to as double words. The 32 bit processor arrived in 1989 followed by the 64 bit in 2005. As this history shows, the 64 bit computer is just one more generational step in processing power. In addition, a computer “word” is now considered to be 16 bits, not 8 bits. So a 64 bit processor can handle a quadruple word (4x16). Naturally, the increase in the width of the CPU/data path does increase processing speed.

Every time the hardware has changed, there has been a delay while the software manufacturers play catchup. Applications have to be rewritten to take advantage of the hardware changes including the new instructions in the CPU instruction set. Only then can the application take advantage of the added processing power. Although Windows has been available in a 64 bit form since XP was released, it adoption has been quite slow. Many software manufacturers did not make 64 bit versions of their applications. This coupled with the limited acceptance of Vista has markedly slowed the shift from 32 bit to 64 bit. Another factor in this process is the development of 64 bit drivers for peripherals such as printers, scanners, graphics cards, wireless modems, network cards, etc. Microsoft has also indicated that Windows 7 will not install 64 bit drivers unless the software is “Microsoft Certified”. Some manufacturers have obtained certification for some of their 64 bit drivers. For example, my Brother multi-function machine has a certified driver for 64 bit Windows. If you don't have a 64 bit certified driver, your peripheral will not work under Windows 7. Neither Vista64 nor Win7-64 will accept 32 bit drivers. Something to check out before you pop for a 64 bit OS. However, if you are buying an upgrade version of Windows 7, several of them are supposed to come with both the 64 bit and 32 bit versions in the box, but not in the OEM versions. This specifically applies to the Home Premium, Professional and Ultimate versions (as of this writing and may be subject to change by Microsoft.).

Another advantage of a 64 bit processor is in its memory management. By now I would hope that everyone understands that the 32 bit generation of computers can address a maximum of 4 gigabytes of RAM. This is the maximum number of addresses that can be handled and is calculated from 2^32 or two to the thirty-second power. This includes addresses needed by the system as well as the data. A 64 bit processor can address 2^64 addresses or roughly ten billion more than the 32 bit processor. The catch here is that both the hardware manufacturers and Microsoft have imposed limitations on the addressable memory. Generally, new personal computer's are limited to 128 GB of memory or less. Some manufacturers configure their laptops for a maximum of 4 GB of RAM. Windows OS software is also highly variable in its limits. Some versions of Vista limit addressing to as little as 8 GB (Home Basic & Premium). It is expected that these limits will be raised in Windows 7. For the present, these levels should be more than adequate for most people. If not keep in mind that it is the Ultimate versions of Vista and Windows 7 that have the maximum addressing ability.

The next thing to consider is the software compatibility. Just because you have a new operating system, no one really wants to have to upgrade all their software from 32 bit to 64 bit. For that reason both Intel CPU's and AMD CPU's are not true native 64 bit processors. They are, in fact, hybrids. By this I mean that they allow 32 bit code to run in an emulation mode. Consequently, 64 bit Windows has an emulation mode, Windows on Windows, which allows 32 bit software to be run. WOW intercepts system calls to the operating system made by a 32-bit application and switches the CPU to 32 bit mode. It can switch the CPU between 32 bit and 64 bit as needed. This also allows the 64 bit AMD/Intel CPU's to run a 32 bit OS. The only true 64 bit, non-hybrid operating systems for PC's are found in Intel's Itanium processor (IA64) and the various 64 bit versions of Linux. Systems using these CPUs will give you all the benefits of 64 bit computing, but require all 64 bit software. Windows WOW64 also allows for some 32 bit software to run on the IA64 CPU by converting 32 bit calls to 64 bit.

Windows XP, Vista and Win7 contain large numbers of dll files. These are system libraries, many of which are loaded into memory when the computer is booted. In the 64 bit OS, these libraries can not be used by 32 bit software so instead, there are duplicate libraries written in 32 bit code included in Windows. Microsoft has devised a system so that these libraries can co-exist on the hard drive and in RAM without overwriting the files or accessing the wrong file so that 32 bit code can be run under the 64 bit OS. Sounds good, doesn't it? Yes, it does work, but with some caveats. Adding an emulation layer does slow the overall processing of software instructions. Also, there is an increase in the amount of memory (virtual memory included) needed for the additional 32 bit libraries that are loaded along with the 64 bit dlls at boot time.

There are other problems, but to a somewhat lesser extent as it affects fewer software applications. Some 32 bit applications still use 16 bit loaders. Since Windows 64 does not support ANY 16 bit code, these applications will not run, unless Windows can transparently substitute an installer with 32 bit code. Hopefully, all 32 bit software will eventually have 32 bit loaders or be replaced with 64 bit code. Additionally, some 32 bit software requires the use of 32 bit drivers. These drivers will not run on any 64 bit Windows platform. So until the drivers are available in a 64 bit form, these applications can't be used with Windows 64.

Another consideration is that any utility software that works at the hardware level must be 64 bit. This generally includes anti-virus software and other anti-malware products. Those few manufacturers I have checked do have 64 bit versions of their applications available. This includes some which provide free utility applications. This is just one more item that should be checked before you decide to move to a 64 bit OS.

If you decide you want to upgrade to the 64 bit version of Windows 7 when it is available, then you have several more things to consider. No matter which 32 bit Windows version you are currently using, you will have to do a “clean” install of the 64 bit version. That means backing up your data to an external medium and formatting your hard drive or at least a part of it (one partition). You can install Windows 7 in a new partition and dual boot with it and your current Windows version. Or you can install the new version in the space reclaimed from your old version. Either way you will have to reinstall software and drivers. Then you can restore your data. Only if you upgrade to the Windows 7 32 bit version from Vista can you do an “in-place” upgrade. If you are still running XP you have no choice but to do a clean install to convert to the 64 bit version. Of course, if you buy a new computer with the 64 bit Windows 7 installed that reduces your problem to just installing applications and data from your old computer.

I have already pre-ordered a 64 bit version of Windows 7. So, you see, I have answered the question I posed in the title of this article. When it arrives, in October, I will be installing it, then testing drivers and applications. You probably won't see any of my experience until the December Monitor. In the meantime, I have obtained a 64 bit version of the Linux OS, Ubuntu. Over the next few months I will be installing and testing it on my computer. So you will be seeing more about 64 bit computing. I hope it will help you as the entire industry continues to move into a fully 64 bit era. Just think, the next move, in a few years, will probably be to 128 bit computing!

Dr. Lewis is a former university and medical school professor of physiology. He has been working with personal computers for over thirty years, developing software and assembling systems.

Click here to return to top



==================================================================