
A recent article by Tony Smith from The Register titled "
Mac OS X 10.3 Panther will not be a 64-bit OS" caused a good deal of confusion with many people, including me. It is also caused a
heated argument here on OSNews. The basic point of the article is that Mac OS 10.2.7 and 10.3 are not "true" 64-bit OSes, but the article does not clearly explain what a "true" 64-bit OS is. This had led to a lot of claims that the article is false or misinformed, rather than just unclear, which is certainly is.
For those of you who are not aware OS X enforces that all applications run prebound.
During installation of an application, the final stage is "Optimizing System Performance" at which point the entire filesystem is scanned by a process called update_prebinding and all applications found on the system are pre-assigned a portion of the address space in which to run.
Unfortunately, this can be somewhat of a problem on a 32-bit architecture, considering that there's only 4GB of address space available. I have no idea what OS X does if the virtual image size of all applications and libraries on the system exceeds 4GB, and this has always worried me.
So, my question would be what is the size of the virtual address space accessable by the kernel and the userland prebinding applications? Will all applications be prebound to a portion of a 64-bit address space?
With the number of people running Panther betas, I am surprised that more of this information isn't available. Most of the information available as to which portions of Panther (if any) have gone 64-bit seems to be hearsay and speculation.
The most likely scenario I can see is a 64-bit kernel and (almost exclusively) 32-bit userland when operating on a PPC970 system.
One would hope that Apple would soon take the Solaris approach and start shipping 64-bit counterparts to all 32-bit userland libraries. From this article though, it seems dubious if this will happen in Panther as Apple doesn't seem to have implemented a 64-bit ABI yet.