A. You can currently purchase 64-bit versions of recent Windows versions, including Windows XP Professional and Windows 2000 Advanced Server. Windows .NET Enterprise Sever and Windows .NET Datacenter Server will also be available in 64-bit versions.
The 64-bit versions of Windows include some file-system structure and registry differences, but the GUI looks and acts the same. The differences between the 32-bit and 64-bit versions are internal, as the following table shows:
32-bit version | 64-bit version | |
Memory | 4GB | 16GB (artificial limitation, will be 128GB on server products) |
Virtual Memory | 4GB | 16TB |
Pagefile | 16TB | 512TB |
System Cache | 1GB | 1TB |
The 64-bit versions of Windows run 32-bit applications in the same way that 32-bit Windows run 16-bit applications: by using an emulation layer. (However, 16-bit applications can't run on 64-bit versions of Windows.) Because of this emulation, a 32-bit application will run slowly on a 64-bit box, so you shouldn't attempt to run important 32-bit services on a 64-bit version of Windows.
A 64-bit application can't load a 32-bit DLL and vice-versa because of user memory space limitations and because 64-bit applications can access 8TB of memory whereas 32-bit applications can access only 2GB. As a result, neither the 32-bit nor 64-bit Windows versions can accurately pass memory pointers to the other version.