As you look at the products available through TechSoup and other sites around the web, you'll notice that a lot of applications and operating systems are offered in multiple versions these days. First, you have to choose the version that matches your operating system. Are you running Windows 98, Windows XP, Apple's OS X, Windows 7, or one of the many Linux distributions? That's been an important question since the dawn of the PC era.
Lately though, there's been a new wrinkle added to this question. Do you want the 32-bit or the 64-bit version of this software? Server applications and operating systems, in particular, have offered you this choice for a while now. However, slowly but surely this option is becoming part of the decision-making process for desktop applications and software too. For example, Microsoft is offering both their latest Windows operating system and productivity software suite (both Windows 7 and Office 2010) in both 32-bit and 64-bit versions.
This article explores the definition and evolution of 64-bit architectures, along with the advantages and disadvantages of upgrading to this platform. If you're only interested in finding out whether you have a 32-bit or 64-bit computer, skip to the next-to-last-section, "Is My Computer 32-bit or 64-bit?"
What Does 64-Bit Mean?
If you're not interested in the knotty, arcane details of computer architectures, suffice it to say that 64-bit computers are faster and more efficient than 32-bit computers because the processor can swallow and digest larger chunks of data with each and every bite. The overall speed of a computer is determined by the number of bites it takes every second (in other words, the famous clock speed, measured in hertz, megahertz or gigahertz) and the size of those bites.
Another key advantage to 64-bit computer architecture is its ability to accommodate more system memory (RAM). The old 32-bit architectures (for example, Intel's x86 architecture) could only address 3 GB (or 4 GB depending on who you ask) of system memory, so your resource-hungry applications couldn't take advantage of the cheap and easy speed boost offered by adding more RAM to a computer.
64-bit architectures blow right past the 3 GB barrier and they can theoretically address up to 18 Exabytes, or 18 billion Gigabytes, of system memory. However, the operating system can also impose a limit on the amount of addressable memory. For example, Memory Limits for Windows Releases shows that even the 64-bit Windows operating systems are limited in the amount of RAM they support, though those limits are generally much higher than those of the comparable 32-bit versions. Some of the enterprise versions of Windows Server, like the Datacenter and Enterprise editions of Server 2003 and Server 2008, are unlimited or nearly so in terms of how much memory they can utilize. Therefore, upgrading to 64-bit platform will allow you to upgrade your system memory in most cases, but if you need an application platform that's infinitely upgradeable and scalable, you should consider buying multiple servers and arranging them in a cluster.
Finally, if you've moved some of your servers and server applications to a virtualized environment, or you're considering such a move, a lot of experts recommend using a 64-bit architecture because virtualization software makes considerable demands on its underlying hardware. If you're running a host operating system as well as several virtual machines and their attendant applications, chances are you'll need far more than the 4 GB of system memory that 32-bit platforms support. Furthermore, the most efficient, fastest virtualization strategies use hardware virtualization, a technology found only on 64-bit platforms. Therefore, most organizations begin the transition to 64-bit servers when they decide to virtualize their enterprise applications.
If you're planning a second career as an electrical engineer or chip designer, you'll eventually have to dive into the dense, gory, technical details to fully answer the question of which is better for your needs. If that's the case, or you're just the curious type, read Inside the Machine by Jon Stokes. This book doesn't oversimplify or leave out essential details, but the writing style and organization of content are such that an astute, educated layperson can understand it with a moderate, reasonable investment of time and effort. It's also well illustrated, and good conceptual diagrams make this subject a lot easier to understand. Stokes is a writer for ArsTechnica, and the book began as a series of articles on that site. For an introduction to terms such as Arithmetic Logic Unit (ALU) and Instruction Set Architecture (ISA), take a look at Understanding the Microprocessor. For an explanation of the 32-bit, 64-bit distinction, read An Introduction to 64-Bit Computing and x86-64.
So, if 64-Bit Computers Are Faster Computers… Let's Upgrade, Right?
Since 64-bit computers are faster than 32-bit computers, consumer demand will force the PC market to switch to 64-bit platforms, right? Of course it's never that simple. Intel, AMD, and other makers of computer hardware have been researching and developing 64-bit architectures since the early 1990s. However, a vast ecosystem of 32-bit operating systems and software has inhibited the transition.
The software engineers and programmers who manufacture our operating systems, hardware drivers, and software applications have to rewrite their code to target the new architecture. Furthermore, for organizations to jump on board, the timing has to be just right. If the hardware, operating system, drivers, and applications aren't all available in 64-bit versions at the same time, compatibility problems arise. 32-bit programs will often install and run on a 64-bit operating system, but they won't be able to take advantage of the speed benefits of the faster platform. The reverse isn't true. 64-bit software doesn't run on a 32-bit operating system.
Even if the timing is right, IT departments often have trouble acquiring and supporting new operating systems, drivers, and applications. It's expensive enough buying the faster hardware, but getting a second set of software licenses for 64-bit operating systems and applications is often beyond the means of organizations with limited budgets (however, see below for information about Microsoft's Software Assurance program — you may be eligible to upgrade for no cost to 64-bit versions of the software you already own). Furthermore, nonprofits, charities, and libraries often have to deal with erratic IT budgets and donated computers, which means they're more likely to wind up with a mix of 32-bit and 64-bit machines.
Therefore, some organizations opt to transition gradually, upgrading hardware first, then operating systems, then applications. Also, many organizations focus entirely on their servers and leave their desktop machines alone. Servers typically run the most resource-intensive applications, so they see greater benefits from upgrading to a 64-bit platform.
If your organization decides that now is the time to embrace 64 bits, keep in mind that most Microsoft products in the TechSoup catalog come with Software Assurance. This program allows you to download and install any version of the software you received from us, so long as you don't install more copies of the software than you have licenses for. This means you can download and install the 64-bit version of any Microsoft software if you acquired a copy of the 32-bit version with Software Assurance. You can also upgrade for free if your license is still valid within two years of initially receiving it. This applies to desktop and server operating systems, as well as all the Microsoft desktop and enterprise applications.
For example, if you request Office 2010 through TechSoup, and if you request the 32-bit version, you'll be entitled to download the 64-bit version at Microsoft's Volume Licensing Service Center (VLSC). For more detail on volume licensing and software assurance, see Microsoft Volume Licensing — Downloading and Installing Software.
Is My Computer 32-Bit or 64-Bit?
So this question really has two parts:
- Does my computer have 64-bit hardware (or does it have a 64-bit processor)?
- Is my computer running a 64-bit operating system?
It may be faster to answer question two first because if you have a 64-bit operating system installed, the underlying processor must be 64-bit or else the operating system installation would have failed.
Windows: If you're running Windows XP, Windows Vista, or Windows Server 2003 consult How to Determine if a Computer is Running a 32-bit Version or a 64-bit Version of the Windows Operating System. If you have other questions about 32-bit versus 64-bit computing with Windows, check out the 32-bit and 64-bit Windows FAQ.
Another technique for checking both the Windows version and the processor architecture involves opening the System Information utility. Go to Start > All Programs > Accessories > System Information. Under System Summary, you'll see OS Name and Processor. If next to processor you see x86, you have a 32-bit processor. If you see "ia64" and "amd64," those indicate a 64-bit processor. For more detail and screen shots, see Do I have a 32-bit or a 64-bit operating system on my computer?
Linux: If you're running a Linux operating system and want to know whether the operating system kernel is 32-bit or 64-bit version, take a look at this thread on LinuxQuestions.org.
Mac: Recent versions of Apple's OS X support 64-bit processors too, as discussed in What's "64-bit" about Snow Leopard and How to Tell if Your Intel-Based Mac Has a 32-bit or 64-bit Processor.
In summary, every abstruse computer science experiment eventually matures into a problem that individuals and organizations have to deal with. After years in the early-adopter, cutting-edge stage, 64-bit architectures have become common enough that libraries, charities, and nonprofits have to start deciding when and how they'll transition away from 32-bit platforms. What you ultimately decide to do should be determined by the factors listed above, your budget, and your overall tech needs and goals.