Dave Thomson asked about the folders Program Files and Program Files (x86). “Why are there two, and is there some advantage of using one over the other?”
First, you shouldn’t pick one over the other. Let Windows make that decision when it installs the software.
Like most up-to-date PC users, you’re clearly running a 64-bit version of Windows. Computers capable of running 64-bit code (also referred to as x64) have been around for almost a decade, and are pretty much ubiquitous these days. The same goes for x64 versions of Windows.
[Have a tech question? Ask PCWorld Contributing Editor Lincoln Spector. Send your query to email@example.com.]
But although the vast majority of PCs these days run x64 Windows, a great many programs (quite possibly most of the ones on your PC) are still written for the older 32-bit version. For purposes of backward compatibility, Windows x64 needs to run both 64- and 32-bit programs.
Windows runs smoother if it keeps these two very different types of code separate. The operating system can’t assume that an x86 program even knows that such a thing as x64 code exists, and that could cause problems if they cross. For instance, if a 32-bit program went looking for a .dll, and found one that came with a x64 version, the program wouldn’t work and wouldn’t know why it didn’t work. Keeping them in separate folders is the simplest way to avoid such problems.
So why is 32-bit code identified as x86 instead of x32? The 16-bit chips in early PCs used the 8086 architecture. Even when the chips went 32-bit in the late 1980s, they still used 8086 code, and x86 model numbers. (Remember the 386 and 486 processors?) So the number 86 now refers to pre-x64 code, whether it’s 16- or 32-bit, although the 16-bit x86 code won’t run in 64-bit versions of Windows.