You know, I think this thread and others like it point out a great opportunity for PalmSource to put out some simple whitepapers to clarify a few topics. It would be something that could be referred to over and over to clarify discussions. Heck, they could even put page and paragraph numbers so you could quote passages from a particular version in the average discussion. Topics like...
* PalmOne vs PalmSource (which will probably always be somewhat confusing even after the name change or PalmSource)
* How multitasking/mulithreading works in Garnet, Cobalt, PalmOS for Linux, and how it compares to Win Mobile
* Benefits of PalmOS
* Laymans explanation for NVFS and palm databases vs MS file systems
... and whatever other topics just keep coming up over and over and never seem to be clear. As long as it's not just Marketing fluff!
I'll follow off-topic just briefly here, because it was an interesting point brought up, and then return on-topic.
Concerning the OS accomodating lower spec handhelds, I would have to say that I don't see it as a bad thing. Even so, I suspect that a lot of OS level adjustments can be made over time to grow with the hardware. But I think it is pretty nice to have a more powerful pda that really acts zippy. I feel the same way about desktops... it's horrible using them when things run slow, and sometimes you need the best desktops to get things zippy.
True, you only get benefit from faster CPU up to a point, but still I like hardware that can make up for sloppy apps that seem be so slow on the average handheld. Surely even third party developers have to consider some of the lower spec devices for the same reason -- to widen their market. I think it's good because the wider a market we see for the OS, the more PalmSource makes, and the more they can reinvest for the future. And, for good or bad, the biggest slice of the market is not in the top line spec devices, but the "average cell device" that is getting more and more powerful every year.
I second your thanks for Dianne's participation. Really cool stuff!
There will always be those of us frustrated with PalmOne and PalmSource, and there will certainly be many who just naturally prefer Pocket PC (which is okay because they have a great product also). But I am convinced that the more you learn about what PalmSource is really doing, and why, the more you respect their work and want to cheer for them to succeed. They more they succeed, the more great device choices we get to see in our hands! And even if you don't think they are making all the right choices, you have to at least get the feel that they are making some good choices and be excited about the great stuff that's coming. It's just hard to wait!
Okay, back on-topic...
With regard to multitasking in Cobalt, remember that
Quote:
Originally Posted by Dianne Hackborn
Cobalt's multithreading and process support doesn't have any of the problems you keep alluding to. The only limitation is that applications running separately from the main application all share the same process, which I have been very upfront about. In practice, about the worst this means is that if you are, for example, using a web browser that makes use of the background process to remain running, if some other background thread crashes, the web browser will be killed as well and you will end up back in the Launcher. Note that the main application runs in its own process, so a crash in the current application won't disrupt other running applications.
|
So I think that with the exception of those shared threads not protecting as completely against inter-program interference, you can do pretty much the same basic things with Cobalt as Win Mobile multitasking. We may see it looking a lot better after some more UI changes which are coming after some of the core underlying and invisible work is done.
And I can't remember where, but I think I read somewhere that the way threads are handled can be changed as the hardware grows without major OS rewrites. (Not positive about that one.)
I think the UI is really the big deal here. With WinMobile you basically have a list of windows/apps that are running, and you don't have to worry about whether or not they are built to run in the background, or what state they will return in. You can even do some fancy things showing multiple applications at once on the screen, like we saw above. Pretty cool.
But don't forget that there are ways to do all that in Cobalt. Hopefully I don't have this all wrong. But the basic assumption seems to be one app on the screen being used at one time, which is pretty reasonable. (So you may not see those split screen apps for a long time, unfortunately.) But with such small handheld screens, especially in phones, you may not really want that too much. I think you can still have popup screens running in parallel with, say, a small overlay or popup or maybe cutout screen for something like the mp3 player while you are doing word processing. Or you can have various kinds of control bars to manage background processing for things like downloads. You could even have split screens for game interaction. But, yes, the applications are probably more responsible for managing how that works. That's another thing that will probably have to be improved in the OS.... support for developers to do that sort of thing more easily and gracefully.
Sounds like the state thing does matter, though, when you pull an app back up, and right now apps haven't really been able to do that well on PalmOS, so I suppose that is an indicator that the support structure isn't fully there yet. But all the other things that a user would (or should) care about seem to be relative to the UI design.
And I've seen enough to convince me personally that it's not just PalmSource blowing smoke, but that they have some pretty significant infrastructure work that's being done and UI work will move much faster very soon. Surely they are aware that their primary IP advantage in the Linux space is going to be UI and managing environments on mobile devices. That means that it's got to be a high priority on their UI work and they'll have to back it up with their internal resource allocation.
I don't think multitasking approaches are going to be significant enough to push many users to one camp or the other (unless people get caught up in the wake of the MS Marketing machine). Like I said, I haven't really heard any disadvantages to the PalmOS approach except some apps that don't handle state properly and some UI work that needs to be done to handle app switching on both WinMobile and PalmOS side anyway.