Monday, August 28, 2006

Stupidities of Microsoft

Note: this is an "index" post, which will grow as long as I find material to include.

Curiosity #1:

According to the official Microsoft FAQ on XP x64, unbelievably, the 32 bit drivers reside in a folder with 64 in its name: SysWOW64 (System Windows On Windows); but confusingly enough, the 64 bit drivers reside in... System32 (!!)

The reason is that Windows is such a pathetic operating system when it comes to security or organization, or for that matter anything that mundane users don't see directly, that it allows everybody + dog (including viruses) to mess with the critical system files. Thus, along the years, the practice of blatantly and carelessly writing to "System32" without a system call check meant that now that the fixed name stuck and can not be changed. But since a 32 bit driver can not be just run on a computer at 64 bits, but on top of an emulation layer (WOW64), they have to be identified, and are therefore susceptible to be moved by the OS to another place.

This is a excerpt of that link:

Q.What is the SysWOW64 directory?

The \Windows\SysWOW64 directory is where 32-bit system files are installed. 64-bit system files are in the \Windows\system32 directory for compatibility reasons.

Also, this is nice to be seen officially acknowledged:
Q.I have an Intel x64 processor, but my copy of Windows XP Professional x64 Edition has an \amd64 directory, but no \em64t directory. Did I get the wrong version?

No, you got the right version. Because the Intel and AMD processors are binary compatible, they use the same version of Windows XP Professional x64 Edition. Since the original x64 processors were designed by AMD, they were called "amd64" processors, and that is reflected in the folders on the CD.