But he isn't right. On Linux, it has been common for a long time, that the kernel and the gzip library are compiled for the processor generation, that is in use, and even though Red Hat Linux is 386 compatible, it is Pentium optimized. Some distributions even go further and deliver code that is not 386 compatible in order to gain extra performance.
Often, performance critical modules like the Apache webserver, are also re-compiled on the target computer, sometimes in order to gain performance, sometimes just because the system administrator wants a module compiled into the webserver instead of having the module linked to the webserver application.
I don't know what Microsoft does, but since you cannot insert an extra processor in a dual-CPU motherboard with Windows NT, the kernel for dual-CPU and single-CPU must be different, and hence compiled for the CPU configuration.
I'm not sure how processor specific the Linux compiler (gcc) optimizes the code, but saying that compiled code never gets optimized for a specific processor in the real world is plain wrong.
But as long as we buy Windows Me and Windows 2000 computers, he got a point. |