The lowdown on 64-bit

We look at the architectures of Intel's and AMD's 64-bit processors, and analyze the pros and cons of each in the Windows world.

Please let us know how useful you find this tip by rating it below. Do you have a useful Windows tip, timesaver or workaround to share? Submit it to our tip contest and you could win a prize!


I am always amazed when I hear a heated debate over processors. Most of the IT people I know swear allegiance to either Intel or AMD and give a dozen reasons why their processor of choice is superior to the other.

When it comes right down to it, the 32-bit versions of either processor will run Windows equally well. One processor might run a little faster or more efficiently than the other, but any differences (from a Windows standpoint) are subtle.

The situation is different with 64-bit processors: There are major architectural differences between Intel and AMD's 64-bit machines.

The primary difference between the two chips is that Intel's Itanium line of processors is a pure 64-bit processor that will only run 64-bit code while AMD's Opteron and Athalon 64 processors are 32-bit/64-bit hybrids. AMD's processors can therefore natively run 32-bit and 64-bit code. The implications of this are huge.

AMD machines have the advantage of running either a 64-bit version of Windows or a 32-bit version, which means that companies can invest in 64-bit hardware today, but don't actually have to make the transition to a 64-bit operating system until they are ready.

The fact that Intel machines can only run 64-bit code doesn't mean that the machines can't run 32-bit applications. The 64-bit version of Windows has a built-in emulator called WOW64 (which stands for Windows 32 On Windows 64). The emulator is completely transparent. You don't have to do anything special to run 32-bit applications.

The problem is that a 32-bit application may run more slowly on a 64-bit Intel machine than it would on a 32-bit machine. That's because the machine is using CPU resources to facilitate the emulation. If you've ever used VMWare or Microsoft's Virtual PC, think about how much more slowly applications ran within the emulator than they did outside of it. The difference between running a 32-bit code on a 64-bit machine and running the same code on a 32-bit machine isn't quite that drastic, but the same basic principle applies.

The Intel, AMD differences
While 64-bit AMD chips can natively run 32-bit code, the chips can't run 32-bit code and 64-bit code at the same time. Microsoft has created a separate version of 64-bit Windows for AMD machines that uses the WOW64 subsystem for running 32-bit applications, but WOW64 works completely differently than it does under the Intel version of Windows. The AMD version of WOW64 allows the operating system to cycle between 32-bit and 64-bit code so that both can be run natively without the need for emulation.

Before you rush out and buy a 64-bit machine and a 64-bit Windows operating system, I want to point out that regardless of whether you go with Intel or AMD, not all 32-bit code will run under a 64-bit Windows operating system. For example, 32-bit device drivers are not allowed. All device drivers must be 64-bit. Likewise, some 32-bit applications will not even install on a 64-bit operating system. The reason is that many 32-bit applications actually use a 16-bit Setup program. The 64-bit versions of Windows do not support 16-bit code at all. Another type of 32-bit code that you can't use is anything that has to execute at the kernel level. All kernel-level code has to be 64-bit. A 32-bit code must run at the user level so that it can be serviced by the WOW64 subsystem. An example of a 32-bit application that uses kernel level code is Microsoft Exchange Server 2003.

As you can see, there are major differences between Intel and AMD's 64-bit systems. Although these systems are different, Windows imposes basically the same restrictions on the two systems regarding what types of code are and are not allowed to execute.

Whether you go with Intel or AMD is personal preference. Either system will adequately run 64-bit and 32-bit code.

 


Brien M. Posey, MCSE, is a Microsoft Most Valuable Professional for his work with Windows 2000 Server and IIS. He has served as the chief information officer for a nationwide chain of hospitals and was once in charge of IT security for Fort Knox. As a freelance technical writer, he has written for Microsoft, CNET, ZDNet, TechTarget, MSD2D, Relevant Technologies and other technology companies.

This was first published in July 2005
This Content Component encountered an error

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

-ADS BY GOOGLE

SearchServerVirtualization

SearchCloudComputing

SearchExchange

SearchSQLServer

SearchWinIT

SearchEnterpriseDesktop

SearchVirtualDesktop

Close