Originally Posted by rahrens
To say that an OS must be optimized in order to take advantage of the architecture of the hardware it runs on is obvious, and does not need to be detailed to the uninitiated, and the initiated already know the answer, so why get into the details on an open forum? 8 bit OSes were "optimized" to run on 8 bit architecture, 16 bit OSes were "optimized" to run on 16 bit architecture, and 32 bit OSes were "optimized" to run on 32 bit architecture.
So why is it so important to point out the obvious point that 64 bit OSes will ALSO need to be "optimized" to run on 64 bit chips? Do we have to actually SAY it when they come out with 128 bit systems, or will we finally have that figured out?
You don't understand what dfiler is trying to say. What he means is:
For a program written using Cocoa APIs or no APIs at all (e.g. simple C or C++ programs using standard libraries) "optimisation" is not
required when going from 32 bit to 64 bit, it's just a matter of recompiling. This will not result in a faster app (according to dfiler).
Apps that use Carbon (e.g. Microsoft Office) cannot just be recompiled, because Apple abandoned 64-bit Carbon. So any developers out there with Carbon-based apps who want to move to 64 bit, also have to move from Carbon to Cocoa. In the process of re-writing their app, they may well optimise the code at the same time, resulting in a faster app. The fact it will also compile to a 64 bit binary is a bonus.
Now for the ironic bit: having defended dfiler, I have to say that he's not entirely correct. 64 bit x86 has twice as many registers as 32 bit x86 and therefore a lot of 32 bit binaries do
run faster when the source-code is recompiled as a 64 bit binary. This is not the case with PPC, where 32 bit binaries recompiled to 64 bit binaries will run slightly slower.
On top of that, it's possible that in the process of moving from Carbon to Cocoa (which is not trivial) an application may get slower
. If the transition is done quickly, the Cocoa code could well be not as well optimised as the Carbon code was.
AppleInsider published a long article about 64 bit a while back (here
). Hopefully, ArsTechnica will soon publish a nice long article about 10.6 that will include discussion of 64 bit (ArsTechnica reviews of OS X
are always a good geek read).
Moving on, some folks asked about Core Duo processors. Well, here's the low-down: in their infinite wisdom, Intel decided to decouple the Core brand
from the Core microarchitecture
. So, despite the "Core Duo" processors having the word "Core" in their name, they are not based on the Core microarchitecture (which is 64 bit), but on a minor evolution of the Pentium-M (which is 32 bit), itself based on the P6 microarchitecture.
More info as always from Wikipedia:Core DuoCore MicroarchitecturePentium-MP6 Microarchitecture