Last night I was on the drive home with my wife and we couldn’t stop talking iPhone. The big question we both had was “how do we write software for it”.
Now, our buddies over at Apple have given no clue, whatsoever, as to the answer to this question. Here are the two, extremely vague, things we know at this point.
- The processor is being provided by Intel
- The iPhone runs some version of Mac OS X (see above)
This doesn’t tell us much, but it’s enough to go ahead with some speculation. First, let’s talk processor. The processor is almost certainly x86 compatible, probably some sort of ultra-low-power consumption new variant of the Core series of processors found in the MacBooks and MacBook Pros. This article argues that this is likely on the basis of the fact that Intel sold off it’s other low-power embedded technology (the ARM-based XScale) in 2006. I agree. Intel wants the world on x86, that is pretty clear. More importantly, Jobs pointed out that Apple had been working on this project for years, and I think it is highly likely that Intel’s processor roadmap as it relates to this product in particular was the clincher in Apple’s switch to Intel. Sure, it was for the Mac, but more importantly, it was for the iPhone.
Now, about the OS. How stripped is it? I would speculate that it’s not particularly stripped. Remember, OS X is an evolved version of NeXTSTEP, which is about 20 years old. The hardware that NeXTSTEP was originally designed to run on was sloooooooww by today’s standards. 25mhz processors! I’m not trying to equate OS X Tiger with the primeval NeXTSTEP or to claim that it could run on a 25mhz processor. OS X is a significantly more advanced OS. However, if you kept the kernel it’s based on, developed a lighter-weight display renderer than Aqua (with it’s OpenGL stuff) and removed API calls that are irrelevant to this particular piece of hardware (which would probably include a LARGE number of subsystems that PC’s have that the iPhone lacks), a relatively complete version of OS X should have no trouble whatsoever running on the class of processor that Intel is capable of creating these days for these applications. Just look at what it has to do in order to pull off the demo Jobs did yesterday. That was a full-featured, multi-tasking, UNIX OS with some sort of UI display acceleration that just happened to be running on tiny hardware, not some mini OS X lookalike with a crippled feature set.
So, we’ve got a machine with an Intel X86 processor and OS X “Bobcat?” in a teeny-tiny form factor… oh yeah, it’s also a phone. My gut feeling is that Apple is going to open up development info for third-parties before June and that anybody who wants to write custom iPhone apps will be able to do so with XCode and their Mac within the year, but it’s unlikely they’ll give us developers the info before the June hardware availability date.
As soon as the possibility is announced, I’ll be there. Anything leaks, I’ll blog it here.
