Computing technologies are constantly evolving, and if we base our predictions on Moore’s Law, they will continue to work for decades to come. The rapid development of computer hardware is due in large part to consumers’ voracious appetite for faster and better components. When developers hit a roadblock that limits the progress of the current standard, we see a sudden switch to a new standard. This is what is happening between x86 and x64..
x86 is a very old technology that started with the 8086 family of processors. It has now evolved into the x86-32 version, which is the most common version and its successor, x86-64 or more commonly known as x64. The gradual shift to x64 started quite early, while no major drawbacks have yet been seen in the PC market. This is because the first market to experience the x86-related issues was those running high-end servers.
Running a system that has a 32bit architecture means that you are always limited to what 32bits can point to. In this case, the problem arose from memory. A 32-bit pointer could only point to a maximum of 4.2 trillion addresses, which is equivalent to about 4 GB of memory. As such, you can only allocate up to 4GB of memory to a given program, even if you have 16GB of memory available. This limitation can never be a problem for a home setup, but in a server environment, it presents a big problem. This is why x64 processors appeared very early for consumers.
The x64 architecture still follows what x86 has but improves on it by having 64 bits at each address. This means that the memory capacity of the x64 architecture is 4.2billion squared, which is an unimaginable amount of memory for now. That, along with certain improvements, makes the x64 architecture a great processor to replace its predecessor.
The problem with x64 is that the software for it isn’t really there yet. Although there are already operating systems that try to take advantage of the x64 architecture, most do not and there are even some that do not run on an x64 operating system. Eventually software intended for the x64 architecture would arrive and all 32-bit hardware and software would become obsolete. But for now, the x64 architecture is still haunted by software incompatibilities that limit its appeal to the general public.
The final feature of the x64 architecture is its complete compatibility with x86. So even if your processor is x64, the user would not notice any difference as long as your OS is 32 bit. This could be good as once the software arrives you will only need to update your operating system and software since the hardware is already there.