Originally Posted by Bob Russell
As far as why we never saw Cobalt, I guess that remains a mystery. Maybe there are readers that can give us some clues. Some commenters have said performance issues were never solved. Some said it just wasn't ready for prime time. Others have claimed that it wasn't a good fit for product developers. And it has even been said that it was just the wrong time to be asking phone makers to adopt another new Palm platform. At any rate, the landscape of the smart phone market has never been the same. Well, in a way, the failure of Cobalt has caused it to remain exactly the same. Palm still sells Garnet (OS5) phones, now alongside Windows Mobile. And everyone is still chasing the Linux dream. It's has been like the dark ages of smart phone platforms. Thank goodness we are finally seeing the signs of a renaissance! .
Well, I can make guesses.
Palm hired a bunch of folks who had previously been involved in BeOS to work on it. The Be folks were apparently tasked with the multi-tasking/multi-threading kernel.
As a bit of irony, the original Palm OS was based on an RTOS kernel called AMX from an outfit called Kadak. AMX offered preemptive multitasking, but Palm's license didn't permit them to expose it. (At a guess, given the hardware of the earliest Palm devices, and the intended usage, Palm decided multi-tasking was unneeded and would have been problematic, so why pay extra to get it?)
Cobalt was reportedly completed, yet even Palm declined to make devices based on it. The best guesses I've heard for why not were performance related. BeOS was intended for multi-media development, and a poor fit as an embedded OS for a handheld platform. Too big, and too slow, requiring to much hardware to perform acceptably.
When Access bought PalmSource, they originally announced plans for a new OS based on an embedded Linux kernel, with Cobalt as the UI layer on top of Linux. Access had acquired a mobile port of Linux in their previous acquisition of China Mobile. Linux would do the heavy lifting of process, thread, and memory management, and applications would talk to Cobalt. Access was aiming at the Indian and Chinese smartphone market.
What they actually wound up doing was implementing Palm OS Garnet in a virtual machine on top of Linux. The Access entry is completed, and being shopped to manufacturers as ALP (for Access Linux Platform). They've announced a partnership with NTT DoCoMo, but no significant design wins yet. Google's Android OS has considerably muddied those waters.
Meanwhile, Access released a beta of the Garnet VM that runs on the Nokia 770, 800, and 810 Internet Tablets as a free download. Early reports are mixed. It apparently runs, and many Palm apps work in it, but it doesn't see expansion cards, and programs using external libraries (like Mathlib, used by just about every calculator application) don't work. Hotsync is also an open question.
Palm has partnered with embedded OS vendor Wind River Systems for their Linux port. We'll see whether they manage a better job than Access.