View Full Version : Is OS X 64-bit clean?
MacManiac1224
Oct 10, 2002, 04:40 PM
Is OS X 64-bit clean? If the Power4 chip by IBM debut's in the Powermac in the future, can OS X be recompiled easily enough to run on it? Will there be a lot of work for Apple's programmers if they want to change OS X and all it's iApps into 64-bit apps?
Chaszmyr
Oct 10, 2002, 05:02 PM
Its my understanding that all UNIX based operating systems are fairly easily compiled if the person knows what they are doing. If you recall the first time OSX was recompiled to run on X86 it was done by one person, and the Marklar project has less than a dozen people on it. If its that easy to run on X86, it should be just about that easy to run on 64 bit
Billicus
Oct 10, 2002, 06:56 PM
Originally posted by Chaszmyr
Its my understanding that all UNIX based operating systems are fairly easily compiled if the person knows what they are doing. If you recall the first time OSX was recompiled to run on X86 it was done by one person, and the Marklar project has less than a dozen people on it. If its that easy to run on X86, it should be just about that easy to run on 64 bit
Yes, but the x86 is also a 32 bit processor. Modifying OS X to run on a 64 bit processor would change how the OS processes information for the processor. I would say that that is easier said than done. :) :D :p
madamimadam
Oct 11, 2002, 12:24 AM
The answer is no, I believe
It will run because of the fact that the processor is backwards compatible, though
I know M$ has a 64-bit beast in the works... most likely since Intel does not want to go 32/64 only 64. Whether it is another patch like M$ is known for or a full blown 64-bit machine... I don't know.
benixau
Oct 11, 2002, 12:27 AM
Wher can i get this wonder, or find out how to do it. If i could get the PC in my house to run OSX then maybe it would work. Now there is something, A PC that would work with an OS from a big copmany, never heard of it you know .....
vniow
Oct 11, 2002, 12:49 AM
Originally posted by madamimadam
I know M$ has a 64-bit beast in the works... most likely since Intel does not want to go 32/64 only 64. Whether it is another patch like M$ is known for or a full blown 64-bit machine... I don't know.
They already have it.
Windows XP 64-bit Edition (http://www.microsoft.com/windowsxp/64bit/default.asp)
madamimadam
Oct 11, 2002, 12:55 AM
Originally posted by edvniow
They already have it.
Windows XP 64-bit Edition (http://www.microsoft.com/windowsxp/64bit/default.asp)
So, it is a full blown 64-bit system or a 64-bit patch?
vniow
Oct 11, 2002, 01:05 AM
I'm pretty sure it's full-blown 64-bit.
I don't think it would be a good idea or even possible with good stability to 'patch' an OS to run at 64 bits, it makes more sense to develop both at the same time.:)
madamimadam
Oct 11, 2002, 02:32 AM
Originally posted by edvniow
I'm pretty sure it's full-blown 64-bit.
I don't think it would be a good idea or even possible with good stability to 'patch' an OS to run at 64 bits, it makes more sense to develop both at the same time.:)
True, but you might remember their first go at a 32-bit OS
nixd2001
Oct 12, 2002, 06:44 AM
Originally posted by madamimadam
The answer is no, I believe
It will run because of the fact that the processor is backwards compatible, though
Something worth clarifying in this thread is what exactly is meant by "64-bit clean". I'll give you my definition and then my understanding of what may or may not meet this definition. Others may disagree, but at least it will be possible to be more precise about the disagreement (which might appear a little revolutionary to some :eek:)
First, forget about binaries, object code, compiled code, assembler, etc, for a minute and consider just source code. At this level, the question is really:
Can the size of an address (pointer type, or void* in C) as implemented by the compiler be changed from 32 bits to 64 bits, the source code recompiled and it still continue to behave as expected?
As far as I can tell, either xnu is already in such a state or a small number of updates to some key header files will achieve this. There may be some minor changes deep down in the kernel where the actual memory management takes place, but this is only an issue for Apple and everyone else can forget about having to do anything here - similar changes are often required whatever new CPU is to be supported.
Then there is the question of the applications and core libraries (Core Foundation, Cocoa, etc). These appear to use a suitable level of abstraction such that, with any necessary system header file changes (again, something Apple would do once), it is possible to write 64 bit clean code. This doesn't guarantee that any individual programmer has actually done their job to a sensible quality level, but at least the ability to do so is not hindered by the environment.
So next we should ask whether all of the Mac OS X applications, etc, from Apple actually are 64 bit clean. Unfortunately, we simply don't have enough information to answer this without actually trying it. There is good reason to expect 64 bit cleanliness to apply, but it only takes 1 mistake in 10s of millions of lines of code to make this assumption false. So the best we can really say here is probably.
What about third party applications? Again, the best answer we can give is also probably, although it is likely that the probablity is lower. This is based on the guess that Apple have known about potential moves to 64 bits for longer and have had more incentive to go the extra mile to ensure 64 bit clean code.
To finish off, let's return to 64 bit clean and object code. There is no really use definition here of what 64 bit clean might mean - in that the size of memory pointers was committed to at compilation time and hence it's too late to change things. So the issue that's relevant here is whether 32 bit clean applications can be run on a 64 bit processor with a 64 bit clean OS and applications without translation. Again, we don't have definitive information. It is reasonable to guess that they will work though. In order for them to work, the processor need to support both 32 bit and 64 bit variants of any instruction whose data size varies - this mainly being pointer/memory operations. That this can be done has been illustrated for many years by the Sparc family (as pointed out in a recent post somewhere near this thread), and also as intended to be the case with AMD's Clawhammer (or whatever its called). There is every indication that IBM (let's assume its IBM supplying us with a design for a 64 bit PPC processor for now) is both aware of the sense producing such a design, capable of producing such a design and having the intention of producing such a design. So it is probable that 32 bit applications will run without translation (and hence run at "native speed") on a 64 bit PPC.
<diatribe end=true>
Does this help anyone?
DaveGee
Oct 12, 2002, 07:16 AM
Everyone here knows that moving a processor from 32bit to 64bit doesn't make it any faster right? It'll allow an OS and/or program to address more memory yes... but faster no... not in 99.9% of the cases.
That being said...
NeXTStep / OpenStep code was running on 64 bit hardware (I think). Mach runs on 64 bit hardware. BSD runs on 64 bit hardware. I think even Rhapsody ran on 64 bit CPUs. Apple knew 64 bit was the next step for many years. The PPC roadmap even said so.
That pretty much covers the OS side of things... as for 3rd party apps... Well as someone else already stated the new CPU from IBM will run 32 bit apps just fine and with no modifaction needed. Developers can choose to move to 64 bit on an 'as needed' basis (most Apps will not see any real benefit to 64 bit - unless they are really memory starved)
Given all that.. I really don't think we need to worry about X and any new CPU that might be on it's way. ;) If that's what this is all about about... If not then 'nevermind'. :D
Dave
bousozoku
Oct 12, 2002, 10:27 AM
Originally posted by benixau
Wher can i get this wonder, or find out how to do it. If i could get the PC in my house to run OSX then maybe it would work. Now there is something, A PC that would work with an OS from a big copmany, never heard of it you know .....
If that's your goal, why don't you buy the newly unbundled Solaris for x86 for $99? http://www.sun.com/
MisterMe
Oct 12, 2002, 05:09 PM
Originally posted by edvniow
They already have it.
Windows XP 64-bit Edition (http://www.microsoft.com/windowsxp/64bit/default.asp) For those cryinng about how poorly our outdated Mac G4s are performing, by all means read this document. M$ claims that Windows XP 64-bit Edition can reach 6.4 Gflops on an 800 MHz Itanium. That is nice, no doubt about it. However, Apple (http://www.apple.com/powermac/processor.html) claims that the dual 1.25 G4 can do 18.3 Gflops.
madamimadam
Oct 12, 2002, 09:34 PM
Originally posted by MisterMe
For those cryinng about how poorly our outdated Mac G4s are performing, by all means read this document. M$ claims that Windows XP 64-bit Edition can reach 6.4 Gflops on an 800 MHz Itanium. That is nice, no doubt about it. However, Apple (http://www.apple.com/powermac/processor.html) claims that the dual 1.25 G4 can do 18.3 Gflops.
One must admit, though, that the Itanium is not so much about floating point operations but about speeding up processes that are chocked by the 32-bit nature of other processors.
Itanium is not supposed to make email and word faster ect.
MisterMe
Oct 12, 2002, 10:26 PM
Originally posted by madamimadam
One must admit, though, that the Itanium is not so much about floating point operations but about speeding up processes that are chocked by the 32-bit nature of other processors.Oh, contraire. Microsoft is tauting the floating-point performance in the Introduction of the referenced document. The point is reiterated two pages later in a section entitled Floating-Point.
Originally posted by madamimadam
Itanium is not supposed to make email and word faster ect. You confuse what is with what is supposed to be. Intel partnered with HP to develop IA-64 as a replacement for IA-32, as well as HP-PA. The fact that they have been unsuccessful the better part of a decade and several $billion later not withstanding.
MacCoaster
Oct 13, 2002, 02:42 AM
Originally posted by DaveGee
NeXTStep / OpenStep code was running on 64 bit hardware (I think). Mach runs on 64 bit hardware. BSD runs on 64 bit hardware. I think even Rhapsody ran on 64 bit CPUs. Apple knew 64 bit was the next step for many years. The PPC roadmap even said so.
Since when the M68k processors and x86 back then were 64 bit? No. They were 32 bit.
Originally posted by MisterMe
For those cryinng about how poorly our outdated Mac G4s are performing, by all means read this document. M$ claims that Windows XP 64-bit Edition can reach 6.4 Gflops on an 800 MHz Itanium. That is nice, no doubt about it. However, Apple claims that the dual 1.25 G4 can do 18.3 Gflops.
Right... and it ever hits 18.3 gigaflops? Nope. That's theoretical peak and is very controversial because of this thread (http://forums.macrumors.com/showthread.php?s=&threadid=12506).
Itanium is way faster than a PowerPC G4. Trust me.
madamimadam
Oct 13, 2002, 06:23 AM
Originally posted by MisterMe
Oh, contraire. Microsoft is tauting the floating-point performance in the Introduction of the referenced document. The point is reiterated two pages later in a section entitled Floating-Point.
You confuse what is with what is supposed to be. Intel partnered with HP to develop IA-64 as a replacement for IA-32, as well as HP-PA. The fact that they have been unsuccessful the better part of a decade and several $billion later not withstanding.
I think you misunderstand where I am coming from. You have to compare Apples to Apples, so to speak.
What they want the Itanium to be and what it is can be 2 totally different things but at the moment it is working just fine for them in the sense that they can charge so much for it because it has no worthwhile competition IN ITS FIELD. If it was currently being produced to do the same tasks as the G4 then it would be MORE correct to compare the 2 figures but even then I would debate that it would be not be a good guide of overall performance.
Sherman
Oct 13, 2002, 01:55 PM
Another point is that, oh, what speeds are the Power4's at? 2Ghz? something around there?
Yea.
Reason apple is taking so long with their new lineups: Trying to design a new motherboard for the Power4 and to add Bluetooth.
MacWorld SF should be a good show.
nixd2001
Oct 13, 2002, 02:16 PM
Originally posted by Sherman
Another point is that, oh, what speeds are the Power4's at? 2Ghz? something around there?
According to a recent post on one of the threads here, Power4 is about to hit 1GHz. But don't get so obsessed with a basic clock rate. Think about how many instructions per second it can manage and how much data/code it can move between memory and the processor.
peter2002
Oct 13, 2002, 02:31 PM
It would be easy to recompile, but the key is optimazation for 64 bit data structures. You would see a substantial increase in performance for 3D graphic apps, video games, DSP audio apps. Database programs that use large databases in excess of 4GB are the kinds of apps that benefit best from 64 bit technology. Other apps would see little, if any benefit. The reason is that 32 bit processors can recognize more than 4GB of memory directly, without bank switching.
Obvisouly, this requires coding by hand to optimize an app for a particular 64 processor. I wouldn't expect much until 2005 because it will that long until desktops with more than 4GB of main memory. And it will take that long to work out the bugs in the software and OS.
Right now, large corporate servers that run on Sun Solaris and IBM AIX benefit most from 64-bit OS and software..
Peter :)
MacCoaster
Oct 13, 2002, 02:46 PM
Originally posted by nixd2001
According to a recent post on one of the threads here, Power4 is about to hit 1GHz. But don't get so obsessed with a basic clock rate. Think about how many instructions per second it can manage and how much data/code it can move between memory and the processor.
I thought 1.3GHz Power4s were already out. Hmm, you might be right.
Originally posted by Sherman
Reason apple is taking so long with their new lineups: Trying to design a new motherboard for the Power4 and to add Bluetooth.
MacWorld SF should be a good show.
Proof? You ever see the price for the POWER4s? They're ****ing expensive. IMHO, POWER4 will never get in Macs. I'd be happy to be wrong on that, but realistically POWER4 is way out of league.
Maybe IBM's new PowerPC at the Microprocessor forum.
beatle888
Oct 13, 2002, 04:15 PM
" Proof? You ever see the price for the POWER4s? They're ****ing expensive. IMHO, POWER4 will never get in Macs. I'd be happy to be wrong on that, but realistically POWER4 is way out of league."
but have you seen how close the intel P4
came to the POWER4? If the POWER4 is so
far out of apples league then why does the
Intel P4 come so close the the POWER4?
its in a post on the main page on the side.....wait i'll get the link.
here check out the results
MacRumors Post on Top Processor Results (http://forums.macrumors.com/showthread.php?threadid=12808)
nixd2001
Oct 13, 2002, 04:24 PM
Originally posted by MacCoaster
I thought 1.3GHz Power4s were already out. Hmm, you might be right.
I was uncertain and went digging. I mis-remembered a quote from Telomar:
The POWER4 is produced on 0.18µm SOI process and will be released on a 0.13µm SOI process in late October/Early November.
So I didn't actually have a speed rating - just a fab rating. My mistake.
madamimadam
Oct 13, 2002, 06:56 PM
Originally posted by MacCoaster
I thought 1.3GHz Power4s were already out. Hmm, you might be right.
Proof? You ever see the price for the POWER4s? They're ****ing expensive. IMHO, POWER4 will never get in Macs. I'd be happy to be wrong on that, but realistically POWER4 is way out of league.
Maybe IBM's new PowerPC at the Microprocessor forum.
To be truthful, I think that is just like saying that the Itanium is way out of the league of desktop machines.
Sure, at the moment it is and at the moment it is "****ing expensive" but by the time they expected to be implimented they will be the right cost.
MacCoaster
Oct 13, 2002, 10:11 PM
Originally posted by madamimadam
To be truthful, I think that is just like saying that the Itanium is way out of the league of desktop machines.
Sure, at the moment it is and at the moment it is "****ing expensive" but by the time they expected to be implimented they will be the right cost.
Right. Exactly what I'm saying. I never said Itanium was desktop.
Leave POWER4/Itanium where it is now and push it further for obvious reasons. Push desktop PowerPC/x86 further. When POWER4 and Itanium are a bit "dated," they might be powering our desktops at a much faster MHz ratings for each than right now. It's a matter of time. But in the next year or two, no way POWER4/Itanium is for desktop in Macs/consumer PCs.
GeeYouEye
Oct 14, 2002, 01:55 AM
Originally posted by MacCoaster
Right. Exactly what I'm saying. I never said Itanium was desktop.
Leave POWER4/Itanium where it is now and push it further for obvious reasons. Push desktop PowerPC/x86 further. When POWER4 and Itanium are a bit "dated," they might be powering our desktops at a much faster MHz ratings for each than right now. It's a matter of time. But in the next year or two, no way POWER4/Itanium is for desktop in Macs/consumer PCs.
Unfortunately, I am forced to agree with you. :( It's too bad, since the Power4 is supposed to be such a kick-@ss processor. BTW, on a side note, just what ARE Power4s used in anyhow?
Chaszmyr
Oct 14, 2002, 03:27 PM
Guys for God's sake stop comparing the Power4 and the Itanium. Both the 1.3ghz Power4 and the Itanium chips cost several thousand dollars. This is irrelevant! IBM's new chip is a lite version of the existing Power4 chips, it won't necessarily carry the price tag, but it won't necessarily beat out the itanium either. But who cares about the Itanium? It just needs to beat the Pentium for Apple to use it :-)
Doctor Q
Oct 14, 2002, 04:00 PM
Back on the original topic (64-bit Mac OS X): We'd better not delay too long to make the transition from 32 bits to 64 bits in our software. Here's why:
32-bit Unix-based systems measure time by the number of seconds since January 1, 1970, 00:00:00 UTC. With signed 32-bit values, the time can range from Friday, December 13, 1901 20:45:54 to Tuesday, January 19, 2038 03:14:07. So a lot of existing code will break by the time you get to work or school on January 19, 2038. We could get a little breathing room (a 68-year grace period) by changing to unsigned 32-bit values, but eventually we'll need to use 64-bit time values to stay compatible with the current Unix system of timekeeping!
Chaszmyr
Oct 14, 2002, 04:31 PM
We only have 36 years left! Lets get a move on!
(Very interesting, btw :-))
jettredmont
Oct 14, 2002, 05:06 PM
Originally posted by nixd2001
According to a recent post on one of the threads here, Power4 is about to hit 1GHz.
SPEC's benchmark page lists:
IBM eServer pSeries 690 Turbo (1300 MHz)
That's a POWER4 processor. Which means the POWER4 would be at 1.3GHz, available now as far as I can tell.
MacBandit
Oct 14, 2002, 05:09 PM
Originally posted by jettredmont
SPEC's benchmark page lists:
IBM eServer pSeries 690 Turbo (1300 MHz)
That's a POWER4 processor. Which means the POWER4 would be at 1.3GHz, available now as far as I can tell.
Yes the Power4 is available now and has been for about a year. The Power4 is a server processor. The PowerPC970 also previously refered to as teh Power4Lite is loosely based on the Power4 but will not be shipping until late next year.
jettredmont
Oct 14, 2002, 05:11 PM
Originally posted by MacCoaster
But in the next year or two, no way POWER4/Itanium is for desktop in Macs/consumer PCs.
Look into the "IBM 970" and "Intel Deerfield" projects. POWER4 and Itanium 3 for the desktop, respectively. Both slated for debut second half of 2003. 1.8GHz and 1.0GHz frequencies, respectively.
Yes, these will be "crippled" versions of the full-glory server flagships, but they will be 64-bit processors on which their respective companies are hinging their futures.
jettredmont
Oct 14, 2002, 05:15 PM
Originally posted by MacBandit
Yes the Power4 is available now and has been for about a year. The Power4 is a server processor. The PowerPC970 also previously refered to as teh Power4Lite is loosely based on the Power4 but will not be shipping until late next year.
Correct. I was responding to a post which stated the Power4 was almost at 1GHz.
nixd2001
Oct 14, 2002, 05:51 PM
Originally posted by jettredmont
Correct. I was responding to a post which stated the Power4 was almost at 1GHz.
I did spot my error and correct it later in the thread. But, if you're like me, you'd have read that after sending your correction :p
MacCoaster
Oct 15, 2002, 10:24 PM
Originally posted by jettredmont
Look into the "IBM 970" and "Intel Deerfield" projects. POWER4 and Itanium 3 for the desktop, respectively. Both slated for debut second half of 2003. 1.8GHz and 1.0GHz frequencies, respectively.
Yes, these will be "crippled" versions of the full-glory server flagships, but they will be 64-bit processors on which their respective companies are hinging their futures.
Yes I know about those two. I was referring to using the actual POWER4 and Itanium as THE processors powering desktops.
Daniel Strom
Oct 16, 2002, 12:45 AM
Originally posted by Doctor Q
Back on the original topic (64-bit Mac OS X): We'd better not delay too long to make the transition from 32 bits to 64 bits in our software. Here's why:
32-bit Unix-based systems measure time by the number of seconds since January 1, 1970, 00:00:00 UTC. With signed 32-bit values, the time can range from Friday, December 13, 1901 20:45:54 to Tuesday, January 19, 2038 03:14:07. So a lot of existing code will break by the time you get to work or school on January 19, 2038. We could get a little breathing room (a 68-year grace period) by changing to unsigned 32-bit values, but eventually we'll need to use 64-bit time values to stay compatible with the current Unix system of timekeeping!
Starting with MacOS 8.6 (IIRC) Apple made the transition to 64-bit signed integer. It can represent -30000 to +30000 (approx.) years, with a millisecond accuracy. The original MacOS (before the transition) used 32 bits, where the default value represented midnight between Dec 31, 1903 and Jan 1, 1904.
After the transition to 64-bit the default date is Jan 1, 1970. They had plenty of time to the new millenium, when they made the transition. And it was made with OS X, in mind (well, Rhapsody. Apple had already planned a transition to a new OS, but I don't remember if the date format changed before or after they bought Next). :)
Doctor Q
Oct 16, 2002, 12:45 PM
Thanks for the information, Daniel, and welcome to MacRumors (your first post). I'll sleep better knowing that Apple has planned ahead for date-handling.
I see that you live in Stockholm. I had a wonderful vacation there once, staying at a hotel with a great view of the bay, going to a Viking Ship museum, and seeing Millesgarden (http://www.photo.net/sweden/stockholm/milles), a great sculpture garden. What's that got to do with the topic of this forum? Um, er, the vacation cost more than 64 bits and Stockholm is a clean city.
Newborn77
Oct 19, 2002, 01:28 AM
Originally posted by MacCoaster
Since when the M68k processors and x86 back then were 64 bit? No. They were 32 bit.
No. You are wrong. He's talking about PPC processors not the older 68k processors. The PPC roadmap does indeed specify the transition to 64 bit.
MacCoaster
Oct 19, 2002, 09:28 PM
Originally posted by Newborn77
No. You are wrong. He's talking about PPC processors not the older 68k processors. The PPC roadmap does indeed specify the transition to 64 bit.
I'm not wrong. I think you misinterpreted my post. I know the PPC roadmap specified the transition to 64bit. But read:
NeXTStep / OpenStep code was running on 64 bit hardware (I think). Mach runs on 64 bit hardware. BSD runs on 64 bit hardware. I think even Rhapsody ran on 64 bit CPUs. Apple knew 64 bit was the next step for many years. The PPC roadmap even said so.
He said that NeXT ran on 64bit hardware. That was what I was responding to. NeXT ran on M68k and x86 processors; at that time, they weren't 64bit.
FattyMembrane
Oct 22, 2002, 12:50 PM
hop on over to www.netbsd.org and you'll see that for a while now it's been up and running on amd's 64bit processors. darwin is just netbsd with an apple logo on it and will be able to make the transition easily. it sounds like once the system header files are changed, the rest of the os should work flawlessly on the new processors. you also have to keep in mind that while we are just receiving word of the power4 lite, apple must have known about it for a good while and has been preparing for hte 64bit transition for some time now. don't worry about the transition, worry about whether they will be fast enought to beat out the competition.
FattyMembrane
Oct 22, 2002, 12:51 PM
whoops, double post, please erase this if you are a moderator
MacCoaster
Oct 22, 2002, 03:07 PM
Originally posted by FattyMembrane
hop on over to www.netbsd.org and you'll see that for a while now it's been up and running on amd's 64bit processors. darwin is just netbsd with an apple logo on it and will be able to make the transition easily. it sounds like once the system header files are changed, the rest of the os should work flawlessly on the new processors. you also have to keep in mind that while we are just receiving word of the power4 lite, apple must have known about it for a good while and has been preparing for hte 64bit transition for some time now. don't worry about the transition, worry about whether they will be fast enought to beat out the competition.
A couple corrections:
It's not NetBSD. It's a hacked up FreeBSD. Jaguar is based on FreeBSD v4.4, 10.0 and 10.1 were based on FreeBSD v3.2.
Yes, they run on 64 bit chips, but that wasn't in early 1990's when NeXT existed. Motorola 68k and early x86s aren't 64 bit, they are both 32 bit.
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.