With the launch today of Hyper-V - available only in x64 versions - I thought that now would be a good time to revisit the topic of "64-bitness."

 

I'm a technical product manager on the Windows Server team focused on Windows Server 2008, R2, clustering, and power management, along with a few other areas.  In the past I focused more on our Enterprise, Datacenter, and Itanium editions, along with x64.

 

While it may take a while for client computing to reach the stage where 64-bit is the norm and 32-bit the exception, that day is coming soon for servers - and it may be today.  A few quick facts:

 

·         x64 processors have been with us for over 5 years now.

 

·         While I confess I can’t read every single web page on the AMD, Intel, HP, IBM, and Dell sites, last time I checked all currently shipping servers from major OEMs - and obviously the processors in them - were 64-bit.

 

·         Microsoft announced several years ago that Windows Server 2008 would be the last server OS available in 32-bit. (And let’s not overlook the word “server” there!  I’m not talking about the desktop.)  Windows Server 2008 R2 will be 64-bit only.

 

·         The last time I checked our evaluation download figures, more than half of the downloads were of the x64 edition of Windows Server 2008.

 

·         The virtualization features of today’s processors require 64-bit.

 

So, why the transition?  And why now?

 

Well, today you can buy laptops with 4 GB of RAM.  So you can imagine many servers could probably make use of more than that.  But 32-bit operating systems and processors are limited to addressing 4 GB of RAM.  (Yes, I know there are workarounds, but PAE and AWE are not our topic today!)  Two to the thirty-second power is 4,294,967,296 so that’s all the bytes you get:  4 GB.  With 64-bit, well... we currently support up to 2 TB of RAM in our Enterprise and Datacenter editions.  Even Standard supports 32 GB.

 

Databases, computationally-intensive applications, connection-oriented applications such as Terminal Services or Exchange, and of course virtualization will be among the first to experience the benefits of 64-bit.  (You already knew that Exchange 2007 was 64-bit only, and that Microsoft has over a dozen server applications available in 64-bit today, right?)  Direct access to more RAM, and the ability to store, say, entire databases in RAM rather than needing to swap to disk will benefit such applications most.  And of course, a dozen virtual machines, each with 2 GB of RAM, requires more a lot more than 4 GB on the physical server hosting them.

 

So what about 32-bit?  The underlying x64 architecture is based on 64-bit extensions to the industry-standard x86 instruction set.  That means most of today's 32-bit applications can run natively on the processor without emulation in our our WOW64 subsystem.  There are a few limitations - 32-bit applications with kernel drivers won’t install or run.

 

So if you choose to deploy the 64-bit version of Windows Server 2008 (and you should!  Why deploy into a 32-bit cul-de-sac?) you can still run most of your existing 32-bit applications while transitioning “bit-by-bit” to a pure 64-bit future.

 

Dan Reger

Senior Product Manager, Windows Server