Last week's WinHEC Microsoft hardware conference marked the start of the x64 revolution, in which 32- and 64-bit applications will be able to run on the same hardware and operating system.
According to Microsoft, by the end of 2005, virtually all new server class machines will be 64-bit. The company predicted that most new PCs and workstations will be 64-bit by the end of 2006.
The launch of Windows Server 2003 x64 Edition and Windows XP Professional x64 Edition at the event marked the start of the mainstream hybrid 64- and 32-bit computing platform known as x64.
In his keynote speech at the conference, Microsoft chairman Bill Gates said, "The introduction of Windows x64 editions, combined with a wide range of 64-bit applications and hardware, will help launch 64-bit computing into the mainstream."
The current price of x86 and x64 processor server class machines is essentially identical, making the choice of an x64-capable processor the clear preference, even for those companies that expect to run 32-bit versions of Windows Server, said Microsoft.
The main benefit is more memory available to applications and the Windows operating system. A 32-bit PC can provide only 4Gbytes of virtual memory, which must be divided equally between the application and operating system, both of which can use up to 2Gbytes. Microsoft said a user could give an application an extra 1Gbyte of memory by using the /3GB switch when the PC starts up.
But this configuration can affect the performance of the operating system because it only has 1Gbyte of virtual memory at its disposal.
Windows x64 Edition removes this barrier, allowing up to 16Tbytes of virtual memory for 64-bit applications and the x64 operating system. This can be important in large database applications that require more than 2Gbytes of virtual memory.
According to Microsoft, in the short term even 32-bit applications will benefit from increased virtual memory address space when running in Windows x64 Editions.
It said applications compiled with /LargeAddressAware, as would be required to take advantage of the /3GB switch in 32-bit Windows, will automatically be able to address 4Gbytes of virtual memory without any boot time switches or changes to x64 Windows. Another benefit is that the operating system does not have to share that 4Gbytes of space with the application.
Another improvement Microsoft said will benefit applications and the operating system is the number of registers - memory cells within the processor used to perform calculations.
The 32-bit x86 processors are limited to eight 32-bit general-purpose registers, eight floating- point registers, and eight SSE/ SSE2 registers. The x64 architecture uses twice as many general-purpose registers, each 64-bits wide, and doubles the number of 128-bit wide SSE/SSE2 registers to 16.