Originally posted by J.F.
G5 is not an extension to the 32 bit architecture. You forgot that the PowerPC architecture was just a stripped down version of the POWER architecture, which was 64 bit originally. The PowerPC has ALWAYS had 64 bit instructions and architecture, but in the 32 bit processors, the 64 bit opcodes generate an exception to allow them to be emulated. Motorola's first CPUs were the 601, 603, 604, and 620. The 620 was a 64 bit PPC, while the others were 32 bit. Motorola never bothered to improve the 620, so IBM went back to the latest POWER CPU to make the G5.
Mac OSX 10.3 allows you to freely use 32 or 64 bit operations however you like. However, it restricts you to 32 bit addresses by setting a bit that makes the CPU truncate all pointers to 32 bits. The kernel then converts the 32 bit address into an address in the the 8GB they currently support. All that is immaterial though. Although Apple's drivers support at least 8 GBytes, they are NOT BSD drivers! Apple didn't care for the BSD driver model and tossed it out. They used a model based on the Next Mach-O kernel drivers. So OSX drivers cannot be used with other BSDs, even though OSX is mostly BSD.
Yup, the cpu in itself is 64, so was G4 in essence but the programmers are still stuck on old code and implements, so interpreted code is what it runs today...
I just realized that the prescott does not support the NX bit at all, not in any implementation, i cannot figure out why, it could just be available, all code that i know of would run fine... If not, AMD are true wizards...
I assume JAVA could write write to a processes stack space, but other than that... well... and it would be simpler to do the workaround...
Can anyone explain how NX would present a compatibility issue?