There's been a very interesting discussion in response to my post about the Access Linux Platform, but one of the comments deserved a more lengthy response. Catherine White of Llamagraphics wrote:
"The cost of devices is a big factor for the carriers, who often subsidize the cost of the handsets. Having the OS and phone driver support on one chip, as it is for Symbian is an advantage in keeping the cost of the smartphones down so that the increase in revenues from increased ARPU from data traffic is actually realized on the bottom line."
The Register has been touting this issue since last December, and I've heard it a few times from Symbian as well.
The case for a single-chip smartphone makes intuitive sense. Most smartphones today require two microprocessors in them – one to run the smartphone operating system, and another to run the radio. This has some advantages. When there are two separate chips, it's pretty hard for a virus or other nasty software running on the smartphone OS to mess with the network. But having two chips adds cost, and when you're selling millions of phones even a small expense adds up. So a smartphone that needed only a single chip ought to have a major advantage.
To run on a single chip, the smartphone OS must have what's called "hard real-time" capabilities. That means the operating system manages its own activities rigorously, so it can get out of the way when the phone needs to do something time-critical, like transmitting your voice or answering a call. If the smartphone OS doesn't support hard real-time, it might accidentally cause a call to drop, or generate sputters in voice coverage.
Symbian OS was re-architected in version 8 to have hard real-time capabilities. Currently Palm OS doesn't, and The Register reports that Windows Mobile can't yet run on single processor phones either. If hard real-time is so useful, you might ask, why doesn't every mobile OS have it? One answer is battery life.
Most mobile operating systems save battery power by going to sleep all the time. Like a lazy dog on a warm summer day, a good mobile OS will nod off whenever it can. Even when the system looks attentive (the screen is lit and an application is running), the OS slows the processor and turns off features if it can. I remember a Palm OS engineer telling me proudly that the OS even caught a little shut-eye between blinks of the cursor. As long as the OS can wake up fast enough that you can't tell the difference, it's free to sleep almost all the time. This reduces the power used by the system, and extends battery life.
Adding hard real-time capabilities to a mobile OS is like bringing home your firstborn child. All of a sudden you're responsible for a bunch of tasks that might happen at any moment, and you have to stay attentive to them all the time. You never really sleep properly again.
So getting a mobile OS to work in hard real-time without trashing battery life is a neat trick, and it's great that Symbian did it. But I'm not sure how important of an accomplishment it really is. I've been watching that single-chip issue get more and more attention over the last year or so. A first it was very persuasive to me, but the more I looked into it, the less impressive it seemed. Now I think it's mostly a red herring. Here's why.
Do smartphone prices matter?
That's the first question to ask. Prices should matter – it stands to reason that if you make a smartphone cheaper, more people will buy it, and they'll use more data services. But that's true only if there are a lot of people out there who want smartphones and can't afford them. My sense is that most of the people who really want smartphones today can afford them. Smartphones are professional tools for people who need to do heavy-duty communication and data management. Professionals can generally afford a couple of hundred dollars extra for a phone. More to the point, people who honestly can't afford a smartphone are also going to have a lot of trouble paying for the advanced data services that go with them.
I've seen confirmation of this in the customer research I've been involved in. There's a big gulf between the people who want advanced phone features (a minority of all phone users) and those who don't. Price matters a lot to young people who want entertainment phones, because they don't have much money to begin with. But it's not the most important issue to mobile professionals who want databases or advanced communication. Those people will happily pay extra to get a better product. So the cost savings of one chip vs. two chips would come into play only if the two products were otherwise identical. If there are any other differentiators, a small difference in price takes a back seat.
This seems to be confirmed in the market. For example, PalmSource didn't see big explosions in demand when Palm OS licensees discounted their smartphones. But the most memorable thing to me was what happened when Orange in the UK discounted its first Windows Mobile smartphones. Demand went up – but only because less sophisticated users started buying the products. They didn't use much data, and more worrisome for Orange, those less sophisticated users needed oodles of tech support. We surveyed the users later and they reported making an average of seven support calls each. Tech support calls are enormously expensive for the carriers – a single call per user is probably enough to wipe out all of the cost savings from using one chip vs. two chips.
So saving a few bucks on the chip cost isn't decisive to most smartphone users, and probably isn't decisive to mobile operators. The only other party in a position to care is the phone manufacturers. Reducing the cost of a smartphone won't necessarily increase their sales, but if they make a few bucks more per smartphone they'll still be extremely happy. So, exactly how much money do you save by using a single-processor smartphone design?
Anyone have a hard number on that?
The answer's not straightforward, because some mobile microprocessor companies are now making "dual core" chip packages that combine two processor cores and are priced very much like individual processors. This lets a non-realtime mobile OS get many of the cost advantages of being single processor without restructuring the whole OS, and with less fear that a rogue mobile app could interfere with the radio.
The most prominent of these dual-core processors is the Texas Instruments OMAP (Open Multimedia Application Platform) family. When I was at PalmSource, we calculated that a smartphone based on the OMAP chips could reach down into featurephone price points.
It's very hard to find OMAP price figures on the Internet. TI doesn't quote prices in public, but even if it did, the price you really pay depends on how many chips you buy and how badly TI wants you as a customer. Microprocessor Report estimated that typical OMAP prices are in the sub-$20 range .
Say you could cut that price in half by using a low-end single core chip. I sincerely doubt the savings would be that big, but let's use it as an example. Given typical manufacturer and channel markups, that might cut the end-user price of the handset by at most about $30. Nice, but not enough to dramatically change demand.
Qualcomm has also been working on dual-core chips for use in smartphones, specifically for 3G CDMA networks. If you're interested in speculating about future industry alliances, here are a couple of fun data points: First, Qualcomm is creating a version of Linux that will run on its smartphone chips. Second, Qualcomm and Access are already working together to enable iMode to work with the Qualcomm chips. Gee, I wonder if they've had any discussions about Linux.
Not all phone chip companies are making dual core parts, so an OS that can run single-core will have a wider variety of parts and probably somewhat better pricing as a result. But it's not nearly as big an advantage as you'd think.
So, to sum it all up, having a single-processor smartphone OS is very nice for a phone hardware company. It will give you a wider selection of processors, which may save you some money. That fact would probably help an OS company attract more licensees. But a single-processor OS doesn't have a decisive advantage in the market because the price savings aren't that enormous, and because price isn't the main barrier to smartphone adoption anyway.
I think the single-processor OS debate is mostly a red herring. It's a distraction from the genuine, urgent problem facing most smartphone companies – creating products that solve real problems, and that large numbers of users will actually want to buy.