A Closer Look at 32-Bit vs. 64-Bit Windows
Overview
The release of Windows 7, the latest Microsoft operating system, is an opportunity for engineers and scientists to harness new technologies to solve technical problems. Like the predecessor, Windows Vista, users can select between a version for 32-bit processors and a version for 64-bit processors. Whether porting a system to a new version of Windows, or starting new development on the OS, it is important to understand which version best suits your needs.
Table of Contents
What Are the Differences between 64-Bit and 32-Bit Processors?
To understand why 64-bit operating systems are a logical step in the evolution of the PC, consider this background information. More often than not, the maximum size of the physical memory on a computer is less than the amount needed for all running programs. This is especially true when multiple processes or applications execute simultaneously. The solution for this is that programs store some of their data on the hard drive and copy it back and forth to physical memory as needed.
This solution is often referred to as “virtual memory,” in which the computer simulates having large amounts of contiguous physical memory. A paging table is responsible for moving segments of virtual memory into physical memory as necessary. If the amount of memory demanded by all running processes exceeds the available physical memory (RAM), the paging table stores low-priority processes on the hard drive in the page file, which is much slower than RAM. When the user needs these processes, the page table re-maps them into physical memory, where the user can access them at high speeds (see Figure 1). The total number of addresses available in the virtual memory – the total amount of data the computer can keep in its working area for applications – is determined by the width of the registers on the computer processor.

Figure 1. The paging table moves segments of virtual memory into physical memory as needed to provide more memory to running processes.
Until recently, almost all consumer PCs used 32-bit processors. The bit size of a processor refers to the size of the address space it can reference. A 32-bit processor can reference 2^32 bytes, or 4 GB of memory. These 32-bit processors were standard at a time when 4 GB was thought to be more than enough memory space for software applications on Windows. When a process, such as running a program, is created on an x86 Windows computer with a 32-bit processor, the operating system allocates its 4 GB of virtual memory, irrespective of the actual physical memory installed on a system. Half of that allocated memory is user-accessible memory, while the other half is for kernel processes such as drivers. Modern computing systems increasingly confront the 4 GB ceiling thanks to memory-intensive applications and the need to store multiple processes in memory simultaneously.
In 2003, AMD released the first widely accepted 64-bit processor aimed at consumers, the Athlon 64, and coined AMD64 as the name for the new instruction set. Microsoft refers to the instruction set as x64, which parallels the widely accepted x86 nomenclature used for the instructions that run on most 32-bit processors.
Processors capable of referencing larger address spaces provide the opportunity to use more physical memory than ever before, potentially reducing the overhead spent moving processes in and out of physical memory. The 64-bit processors are theoretically capable of referencing 2^64 locations in memory, or 16 exabytes, which is more than 4 billion times the number of memory locations 32-bit processors can reference. However, all 64-bit versions of Microsoft operating systems currently impose a 16 TB limit on address space and allow no more than 128 GB of physical memory due to the impracticality of having 16 TB of RAM. Processes created on 64-bit versions of Windows are allotted 8 TB in virtual memory for user processes and 8 TB for kernel processes to create a virtual memory of 16 TB.
To summarize, the ability of Windows Vista and Windows 7 x64 Editions to add address more memory space than previous versions of Windows helps minimize the time spent swapping processes in and out of memory by storing more of them in RAM.
Evaluating an Engineering System on Windows 7
Windows 7 represents the first viable upgrade from Windows XP for PC users in many ways, especially considering that Vista was largely overlooked due to various problems with compatibility and performance. For engineering and scientific applications, the combination of Windows 7 (64-bit) and the latest version of LabVIEW and NI Device Drivers make it possible to tap into the potential of 64-bit hardware thanks to native support.
Not every application stands to benefit from the x64 architecture, and it will take time for 64-bit editions of Windows to gain widespread adoption, but the following types of applications are most likely to see performance benefits on Windows 7 x64 Edition, provided that both 64-bit application software and drivers are available:
- Applications that require mathematical precision and floating-point performance
- Applications that involve large, high-performance databases
- Vision acquisition and analysis applications with large amounts of data moving directly into memory at rapid rates
For more information on the availability of NI products with native support for 64-bit operating systems, please visit Announcing 64-bit Support for LabVIEW.
Performance and Virtualization
64-bit versions of operating systems such as Windows Vista and Windows 7 are not automatically faster than their 32-bit counterparts. In some cases, they may even perform slower because of the larger pointers as well unrelated OS overhead. Overall, an application’s performance depends on what it is used for and how it is implemented. Emulated applications running within the Windows on Windows (WOW) 64 layer (discussed in more detail later in this article) will not be able to address any more memory than they could on a 32-bit system.
Most 32-bit software will still function because of a Microsoft emulation layer. This emulation layer, known as Windows on Windows 64 or WoW64, enables 32-bit programs to run as though on a 32-bit version of Windows by translating instructions passing in and out of 32-bit applications into 64-bit instructions. Emulated programs act as though they are running on an x86 computer and operate within the 2 GB of virtual memory that a 32-bit version of Windows allocates to every process. However, despite Wow64, 32-bit programs on 64-bit versions of Windows Vista and Windows 7 cannot take advantage of the larger 64-bit address spaces or wider 64-bit registers on 64-bit processors.
Potential Benefits of 64-bit
The transition to the 64-bit architecture is overwhelmingly driven by the limitations of the x86 architecture in terms of addressing memory. Applications running on a 64-bit edition of Windows should theoretically experience improved performance because of the larger quantity of available memory, even if the application is running within the WoW64 layer. Much like the advantage offered by increasing physical memory in a 32-bit system, the larger memory space on 64-bit versions of Windows Vista and Windows 7 allows more processes to actively reside in the system RAM simultaneously. It allows allows users to add additional RAM beyond the previous 4 GB limit, up to the amount supported by the mainboard.
This change potentially eliminates or reduces time spent loading and switching between processes, a condition that can lead to “thrashing” when all the processor’s efforts are spent merely loading and switching between threads. To reap the benefits of a 64-bit operating system such as Windows Vista x64 Edition, you should invest in a large amount of RAM (4 GB or more) and a compatible motherboard.
For 64-bit version of Windows, Microsoft also requires a digital signature on all drivers. By requiring new, signed drivers, Microsoft aims to reduce failures and improve stability by shining a spotlight on vendor responsibility for bugs. With 32-bit version of Windows, administrators can install unsigned drivers, but Microsoft continues to discourage their use. All non-legacy National Instruments drivers are digitally signed and available for both the 32-bit and 64-bit editions of Windows.
Potential Drawbacks to Windows x64 Edition
Windows XP was available only as a 32-bit operating system for 32-bit processors until 2005, when Microsoft released a 64-bit edition. This version of Windows XP did not see widespread adoption due to a lack of available software and hardware drivers. Vendors were hesitant to invest in a platform that seemed more novel than practical for consumers at the time, which led to compatibility issues with common devices such as sound and graphics cards. Developers interested in using 64-bit operating systems found the migration path to Vista much smoother due to the WOW emulation layer, which allowed older applications to run. However, most did not see performance increases due to a lack of applications with native support for 64-bit processors.
Given the increasing number of 64-bit processors, Windows 7 x64 Edition is unlikely to suffer the same lack of support. A potential drawback stems from the possibility that some hardware vendors may not release Windows Vista/7 x64 Edition-compatible versions of drivers quickly.
Summary
Windows 7 x64 Edition represents the first mainstream 64-bit operating system from Microsoft in terms of general availability and support from third-party add-on vendors. Because of this, moving from a 32-bit operating system such as Windows XP to a 64-bit operating system such as Windows 7 x64 Edition merits serious consideration in many cases.
However, the feasibility of successfully making the jump to Windows 7 x64 Edition depends largely on your application and its requirements. For some, Windows 7 x64 Edition offers much needed performance improvement, while for others, it could needlessly complicate applications designed to operate on x86 platforms or even have a negative effect on performance.
More Information on Windows 7
Visit ni.com/windows7
Learn more about 64-bit support for NI Products and NI LabVIEW
LabVIEW, National Instruments, ni, and ni.com are trademarks of National Instruments. Other product and company names listed are trademarks or trade names of their respective companies.
Reader Comments | Submit a comment »
here it is 2010 and we still have this 64bit BS
I say this speaking from experience. My
platform for the last 3 years has been:
Thinkpad T61
* 4 Gb Ram
* Dual core 2.4 ghz
My core apps:
* Firefox
* Photoshop
* Dreamweaver
* VMWare
* Visual Studio .NET 2008
* Komodo IDE
* Winamp
* Symantec Antivirus/Endpoint Client
I went from: 32 bit vista ---> Windows Xp
---> 64 bit vista ----> to ----> 64 bit
Windows 7 to FINALLY Settling on Windows 7
32 bit.
My lessons learned while working on 64bit (as
of 2009):
The overhead for the 32bit emulation layer,
while it is seamless, is still is a kluge..
Ive had random freezes, sluggishness, forced
restarts... but hey ...i got to access all 4
GB of my ram!
Why I went back to 32bit on vista
* My only drawback is losing approx 500 mb
ram (guess what.. i can deal)
* General *snappiness* of my pc is
phenominal. I feel much more productive
* Until there is a BIG.. and i mean HUGE
advantage to running 64bit anything (and not
just, "supporting" it) 64bit computing is
irrelevant. (but wait)
* Unless you have some need which requires
greater than 4 gb's of ram, dont even worry
about 64bit computing 32bit is FINE. I think
for the next 10 years (unless we have some
dramatic new technology or shift that rquires
64bit computing) we will be at this general
stage of computer use.
*I am apalled that even now, Flash
(as ubiquitous as it is to computing today)
has no serious 64 bit support. I rest my case.
Viva 32bit computing for the average computer
user!
- techcowboy. ewok@fentooza.net - Jan 28, 2010
Missing one crucial point
I think this article misses one crucial concept: A 64-bit Operating System allows for
64-bit memory *addressing*. In the context of Virtual Address spaces, every running
application thinks it has the entire 64-bit address space to itself and does not need to
know about what addresses other applications are using. It is up to the CPU's
hardware to *re-map* Virtual Address spaces to Physical Address spaces, whether
they are in physical RAM or on the hard disk's page file. Furthermore it is possible for
applications to declare whether the addressed memory is "pageable" or "non-
pageable". Performance improvements in 64-bit operating systems and applications
are only realized when there is more than 4 GB of physical RAM. Any less and there
is *NO* significant benefit since running memory intensive 64-bit applications will
simply result in more memory swapping to the page file resulting in the dreaded disk
thrashing. It is only within the last few years that PC's capable of installing more than
4 GB of physical RAM became available. When a 64-bit operating system is loaded,
the 64-bit processor instructions are available which are capable of accessing the
current 128-bit memory bus at double-bandwidth compared to 32-bit memory access
so in theory RAM access is faster but other system bandwidth bottlenecks remain,
particularly in disk and network data access. Anthony Maw, B.Sc., MCSE, Vancouver,
Canada www.anthonymaw.ocm
- Anthony Maw, Anthony Maw. anthony@maw.bc.ca - Dec 30, 2009
Braw!!!
It's really worthy,,,It's the perfect article
out of many which I googled to read on
these,,,bits systems,...
- Dec 20, 2009
really good document for clarification
Actually i have doubt..
1) I already have a 64 bit vista os but the
problem that i am facing is that i am not
able to install all the softwares required
because most of them are 32 bit compatible.So
what should i do?
2)I tried installing 32 bit vista os in my
system but a problem has arised that i am not
able to change any thing in the registry.What
should i do?
- Dec 16, 2009
Very informative
Thanks for this wonderful article which
summarizes everything about 32 bit vs
64 bit. It saved me time from reading
multiple articles.
- Ashwanth, Avaya. - Nov 17, 2009
64-bit is coming
I agree with all who say, "lets just move
forward with 64 bit systems". Just think,
soon we will be exploring 128 bit
systems and all wireless technologies.
This is called progress people. I say
make 64-bit the norm!
- klon37@yahoo.com - Nov 8, 2009
This was very informative! helped me make a decision. thank you!!
This was very informative! It helped me make
a decision. thank you!!
- aquatone1805@gmail.com - Feb 13, 2009
Move forward
Would you like to go back to DOS? Lets just
move forward and stop discussing it. Its
time to move to 64-bit
- Jan 8, 2009
Regardless of addressable space...
One must take the utmost care when
doing any development on a Vista
machine. There are plenty of common
tasks that have been obfuscated and
some necessary functions that cannot
be done. At my company, we have been
testing and we can't remove an activeX
web control so we can install an
updated version. All the researching we
have done leads back to Microsoft
saying, "Sorry, you can't do that in Vista"
XP lets you do it just fine. If you want to
make the best possible use of your
personal x64 machine without all the
frustration on Microsoft's oversights and
assumptions, I would look into x64
capable versions of linux.
- Jan 8, 2009
Props for Vista-64
I've recently installed a new Intel quad
core with Vista 64 and am very
impressed both with the stability and
performance. Everything on this
machines run smoother than any
previous version of Windows (and I've
used every version since 1.0 back in
1987 on a Zenith 8086!) My key
applications (Adobe Photoshop and
Lightroom) are out in 64-bit versions and
the performance is breathtaking.
64-bit computing has arrived!
- Nov 10, 2008
32-bit is becoming history
Took a little while, but as of today, 64-bit
seems to be the main focus of PC
builders as well as the preferred choice
of desktop buyers. New HP’s are mostly
64-bit as well a NewEgg’s Top Sellers
(as of this writing).
http://news.cnet.com/8301-13924_3-
10076795-64.html?tag=mncol
http://www.newegg.com/Product/Product
List.aspx?
Submit=ENE&N=2032280010%
204802&name=Top%20Sellers
- Ericson Mar, The Cooper Union. mar@cooper.edu - Nov 2, 2008
brilliant
clarified loads of stuff about 32vs64bit in
one article.
- Oct 6, 2008
Now I'm found
Thank you for the article. It written in
such a way that I feel like I have a good
understanding of 32-bit and. 64-bit
processors. That was something that
boggled me; but no more!
- Enlightened, N/A. running_the_dream@yahoo.com - Sep 20, 2008
Intel G33 chipset
Gateway makes a model with Vista X64 that
uses the Intel G33 chipset. Will that be
able to use the 4GB of memory installed?
- Sep 16, 2008
A very well-written and informative article -
thanks!
- Sep 11, 2008
A good synopsis that supplied every thing I needed to know.
Thank you for the article, Set at the right
technical level for my requirements and
gave me all the info I required In one go
(a rare thing these days). Ta, Mick.
- mick_obrien685@hotmail.com - Aug 5, 2008
All Core 2 Duos and Quads support 64 but
64 bit processors have been out for a while now, most pentium 4 processors support 64 bit (my 3 year old 630 did). All the core 2 duos and quads support it.
- Jul 19, 2008
Memory Limits
Quoted from Microsoft's website:
For Windows Vista to use all 4 GB of memory
on a computer that has 4 GB of memory
installed, the computer must meet the
following requirements:
The chipset must support at least 8 GB of
address space. Chipsets that have this
capability include the following:
• Intel 975X
• Intel P965
• Intel 955X on Socket 775
• Chipsets that support AMD processors that
use socket F, socket 940, socket 939, or
socket AM2. These chipsets include any AMD
socket and CPU combination in which the
memory controller resides in the CPU.
• The CPU must support the x64 instruction
set. The AMD64 CPU and the Intel EM64T CPU
support this instruction set.
• The BIOS must support the memory remapping
feature. The memory remapping feature allows
for the segment of system memory that was
previously overwritten by the Peripheral
Component Interconnect (PCI) configuration
space to be remapped above the 4 GB address
line. This feature must be enabled in the
BIOS configuration utility on the computer.
View your computer product documentation for
instructions that explain how to enable this
feature. Many consumer-oriented computers may
not support the memory remapping feature. No
standard terminology is used in documentation
or in BIOS configuration utilities for this
feature. Therefore, you may have to read the
descriptions of the various BIOS
configuration settings that are available to
determine whether any of the settings enable
the memory remapping feature.
• An x64 (64-bit) version of Windows Vista
must be used.
- Jul 15, 2008
Can 32 bit applications use 64 bit custom written drivers?
I would like to know whether on 64 bit
Vista:
32 bit applications can use 64 bit
custom drivers.
Or will the application need to be 64 bit
to use the 64 bit driver.
I could notfind much about this issue on
the internet.
- Jul 1, 2008
A very good document.
Now I understand!
- Carl - Jun 23, 2008
Which Processors support Vista x64?
Which processor families support Vista
x64? My AMD 64 x2 loaded the 32 bit
version and the install wizard never
mentioned a 64 bit option.
I have ordered an Intel Q6600 and don't
know if I can or should make the x64
jump on that system.
- May 18, 2008
Excellent
I like the article.
- Apr 29, 2008
So, if you are using a 32-bit operating
system on an x64 processor, you are not
fully utilizing it. 64-bit long mode has
several advantages: it allows the
processor to break the 4gb memory
barrier and also 64-bit long mode
enables twice the number of general
purpose registers than in 32-bit mode…
which explains why it is faster than a 32-
bit processor/mode.
64 bit is the future!
BTW: the 64-bit version of Windows
Vista operating system is for about 10.9
percent faster than 32-bit Vista,
according to the GeekBench benchmark
for 32-bit and 64-bit Windows platforms.
- Dec 16, 2007
Good clear explanation of 32 Bit vs 64 Bit fundamentals
Traditionally larger width cpu's means
more powerful instructions and more
addressable memory. 64 Bit Vista from
my viewpoint is really about eliminating
memory thrashing. 32 Bit only gets you
roughly 3325MB of usable memory out
of 4 GB which quickly puts you into
paging when running multiple or large
apps.
- Jerry Mills, Ideal Computer Services. jerrym@icsgroup.com - Dec 14, 2007
Very helpful article
Great article. Really clarified what
components / software need to be
compatible to upgrade to x64. Interested
that 32 bit can reference 4 GB of RAM. My
brand new 32 bit system can only
reference 3 GB (1 GB is completely
unused). Any suggestions?
- Dec 12, 2007
Damn that was a full breakdown and I'm
still confused. Ok already I'll stick with 32-
bit Vista. I only wish I understood all that
info.
- Nov 26, 2007
this article is poor written. x64bit version
is faster than x32, because it uses 64-bit
instructions and 64-bit registers.
- Oct 15, 2007
Best Vista 64 bit Article
So far this is the best and most
professional/complete article I have read
on the internet comparing Vista 32 bit
and 64 bit providing valuable information
regarding pros/cons for each.
Thanks for the info.
- Amar - Aug 22, 2007
Vista 32 OS with a 64-bit CPU onboard
There are a bunch of off the shelf machines
now with 64-bit CPUs , but all I have seen
run , mostly, with 32-bit Vista (speaking of
the newest stuff), is the 64-bit processor
buying you anything?
- May 18, 2007
good article
good article for anybody who has doubts
regarding the Vista 64 bit os ...provides
adequate info ...but would be great if
also includes how the mem addressing
works in 64 bit o/s in detail
- Mar 21, 2007
Only memory addressability
The article gives MS VISTA perspective
from memory addressability only; it
would have been better to widen the
scope to include Data Bus size, System
Bus speed, memory speed too. One
can argue that this all pertains to
system architecture but then system
architecture along with VISTA decide the
overall speed of the PC system.
- Vinay Gupta, MTE Meter Test Equipment AG. viney1@vsnl.com - Feb 1, 2007
Dear Sir,
The 64 bit processor and 32 bit
processor refers to data bus width. This
article refers that as address bus width.
Is my opinion right?
A.G.Kumar
- A.G.Kumar, R.Stahl private limited. kumar@rstahl.net - Jan 30, 2007
very helpful survey of Vista
- barnaade@luther.edu - Jan 30, 2007
Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).
