What benefits are there to running a 64-bit Operating System?

I would like to hear community opinions on reasons to switch, to utilise, or when one should consider a x64 platform. Plus are there any additional benefits of running 64-bit Windows 7? over 64-bit Pre-Win7 OS's?


Solution 1:

There are security benefits when running a 64 bit version of Windows. Basically Microsoft was able to restart with more of a clean slate and implement some extra safe guards. It is partially enabled by improved hardware support in the 64 bit CPU.


Here is a quick list of differences:

  • Support for hardware based DEP.
  • PatchGuard to prevent drivers or rootkits from patching the kernel.
  • Signed drivers.
  • Code integrity checksums. Binaries are checked before loading.
  • Removal of the 16 bit subsystem (reducing attack surface).


Jeff Jones has a two articles on the changes: part1, part2. Wikipedia has some information and there is this KB article (from Doubt).

Solution 2:

32 bit Windows is limited to max 4 GB of RAM

Solution 3:

The benefit is that each process can then address over 4GB of memory per process. Technically the OS can have more than 4GB of RAM with 32-bit (but limited to 4GB per process) but in practice no modern OS actually implements that so a second benefit is that the OS can have more than 4GB of RAM.

Also, on 32 bit OSs, the upper part of the 4GB address space is used by device drivers and other things (like GPU RAM mapping), reducing the actual memory to about 3-3.5GB. That goes away with 64 bit OSs.

Certain applications, particularly photo and video related, will use more than 4GB per process. Photoshop on large images, video editing, 3D modelling, etc can all benefit from more than 4GB per process.

Solution 4:

The main advantage is for the memory space: much more than 4Go.

That means I can allocate 4Go to a virtual machine (one process, with for instance an Ubuntu inside), while having more than enough for my current Win64 session.

Solution 5:

Probably the most evident advantage over the 32bit version is the ability to use more than 4GB of RAM (well, actually more than 3.x since part of the AS is used for MMIO). x86_64 ISA also doubles the number of GPRs from 8 (and some of them are non that general...) to 16, likewise XMM registers are raised to 16. And of course when in LM the CPU can handle 64bit integers directly (which can be a big win for certain workloads).