03-18-2004, 04:00 PM
|
Executive Editor
Join Date: Aug 2006
Posts: 29,160
|
|
Writing On Your Palm Says it's "Ford vs. Chevy"
"Since PalmSource's DevCon last month, there's been a lot of bickering about PalmOS Cobalt's ability to multitask compared to Windows Mobile. It's not really an issue, and here's why. I've been trying to stay out of this. I burned way too much time and energy on OS advocacy debates in the past (search for Kirvin on comp.sys.os2.advocacy in Google Groups to see what I mean) and as I pointed out in my column last year called "Parity", PalmOS vs Windows Mobile really has become a Ford vs Chevy kind of debate.
That said, there's some serious confusion out there about how Cobalt (the OS formerly known as Palm OS 6) will handle multitasking. I happen to think it's pretty slick and elegant, not to mention a far more efficient paradigm for resource-constrained handheld computers. So I thought I'd take a shot at explaining how Cobalt will handle multiple applications working concurrently and compare it to the way Windows Mobile does the same thing. I'll try to keep the technobabble to a minimum..."
Jeff has put together an interesting article here, and it's worth the read (PalmSource was certainly clever in their implementation), but I don't agree with his conclusions for one simple reason: Palm is relying on developers to write a specific type of code to make their apps work in a specific way. That's all fine and well, but let's face it, not all developers will do that. I don't mean to offend developers out there, but the reality is that not all of them write clean code and do things the way they're supposed to be done. On my Motorola MPx200 Smartphone, if I leave a certain game running in the background (there's no exit function of course :roll, my battery will drain from full to dead in less than 24 hours. Relying solely on developers to get things right can be a risky proposition. :?
|
|
|
|
|
03-18-2004, 04:27 PM
|
Contributing Editor Emeritus
Join Date: Aug 2006
Posts: 8,228
|
|
In playing around with Seymour that allows Pocket PCs to see two apps simultaneously in a split window view, it occurs to me that OS6 simply won't be able to do this as it doesn't support multiple foreground apps. Given devices like the larger Sony's with lots of screen real estate, that is a shame.
|
|
|
|
|
03-18-2004, 04:40 PM
|
Neophyte
Join Date: Feb 2004
Posts: 1
|
|
Hey Jason, just out of interest, what programs make your MPx200 run out of battery power so quick? I've had the same thing quite a few times and I can't work it out!![/u]
|
|
|
|
|
03-18-2004, 05:28 PM
|
Intellectual
Join Date: May 2006
Posts: 165
|
|
Quote:
Originally Posted by juliankay
Hey Jason, just out of interest, what programs make your MPx200 run out of battery power so quick? I've had the same thing quite a few times and I can't work it out!![/u]
|
Same question here... and is it only a SmartPhone app, or could some of us PPC users have it and be draining our batteries, too :confused totally:
:microwave:
|
|
|
|
|
03-18-2004, 05:50 PM
|
Intellectual
Join Date: Mar 2004
Posts: 138
|
|
I would rather have the OS handle the multitasking rather than rely on developers to break their applications up into threads. While it may be more efficient in theory, it may also be more complicated and troublesome than its worth. I would like to see Microsoft forget about dividing RAM into storage and program areas. Just put a 20gig micro drive inside and leave RAM to be used for ... well RAM :wink:
|
|
|
|
|
03-18-2004, 06:07 PM
|
Intellectual
Join Date: Feb 2007
Posts: 137
|
|
Re: Writing On Your Palm Says it's "Ford vs. Chevy"
Quote:
Originally Posted by Jason Dunn
Jeff has put together an interesting article here, and it's worth the read (PalmSource was certainly clever in their implementation), but I don't agree with his conclusions for one simple reason: Palm is relying on developers to write a specific type of code to make their apps work in a specific way. That's all fine and well, but let's face it, not all developers will do that. I don't mean to offend developers out there, but the reality is that not all of them write clean code and do things the way they're supposed to be done. On my Motorola MPx200 Smartphone, if I leave a certain game running in the background (there's no exit function of course :roll , my battery will drain from full to dead in less than 24 hours. Relying solely on developers to get things right can be a risky proposition. :?
|
And I might argue that this is precisely the reason the PalmSource method is better for battery-driven, small-screen devices. A poorly written program can't monopolize the system in the background. If it doesn't have a damn good reason to be in the background, it simply terminates when you run something else.
Per Ed's comment, yes, something like Seymour would be nice on a HVGA screen, and it doesn't look like that will be possible in Cobalt. However, for brevity's sake I didn't go into everything in my column. Cobalt will also support a new kind of "applet" called Slip applications. These are small pop-up windows that appear at the bottom of the screen and allow access to background threads without actually running the entire full-screen UI again. Slip windows can house pretty much anything, so I expect to see the full gamut of clocks, memo pads, quick PIM item entry, even ebook reference available so you can do these things without terminating the current application. This also solves your "copy an address from email to PIM" problem since you'd be able to run a "new contact" Slip window over the email application and copy and paste that way. The Windows Mobile analog would be using Seymour to run Inbox and Contacts.
Per Jason's comment about developers, I agree, wholeheartedly. Cobalt's multitasking depends on developers doing the "right thing" with regards to writing clean, multithreaded applications. The vast majority of applications out there now will not multitask (ignoring the Garnet applications like Aeroplayer and Audible which do play in the background and other apps like pToolset which use Notification Manager to pop up when needed). Developers will have to write Cobalt-friendly apps for this to really take off. It's not unlike the transition from Mac OS9 to OSX in that respect.
That said, the developer at Astraware who wrote Bejeweled was able to port it to ARM-native, Cobalt-friendly code in about four hours. PalmSource has made this transition very easy, and I expect the "big name" Palm apps to have Cobalt-ready versions on the market before Cobalt devices hit the shelves.
|
|
|
|
|
03-18-2004, 06:17 PM
|
Ponderer
Join Date: Nov 2002
Posts: 89
|
|
I'll have to see how it works. Multitasking still scares me, in the handheld sense...
However, it seems to me like the default "sloppy-developer" option is to NOT be multitaskable. You need to make the extra effort to write non-GUI threads, which should have a good reason to multitask (syncing, mail, network, music, whatever).
I never considered this approach, it makes good sense, from my armchair. Now let's get it into some devices and SEE.
|
|
|
|
|
03-18-2004, 06:20 PM
|
Editorial Contributor
Join Date: Jun 2007
Posts: 5,411
|
|
Re: Writing On Your Palm Says it's "Ford vs. Chevy"
Quote:
Originally Posted by Jason Dunn
......if I leave a certain game running in the background ( there's no exit function of course :roll , my battery will drain from full to dead in less than 24 hours. Relying solely on developers to get things right can be a risky proposition. :?
|
See, there. The guy does it 'right', and you don't like that either. :wink:
__________________
Sometimes you are the anteater, sometimes you are the ant.
|
|
|
|
|
03-18-2004, 06:22 PM
|
Pontificator
Join Date: Mar 2004
Posts: 1,055
|
|
Re: Writing On Your Palm Says it's "Ford vs. Chevy"
Quote:
Originally Posted by Jeff Kirvin
That said, the developer at Astraware who wrote Bejeweled was able to port it to ARM-native, Cobalt-friendly code in about four hours. PalmSource has made this transition very easy, and I expect the "big name" Palm apps to have Cobalt-ready versions on the market before Cobalt devices hit the shelves.
|
Jeff, I completely agree with you. There will be some programs that will never be updated, but the developers that want to make money will definitely upgrade their programs.
It sort of reminds me of the transition from 160 x 160 screens to 320 x 320 screens. The developers that wanted to entice people to upgrade or to keep using their products were the first to support the high resolution screens. The same has been happening as developers work their way to support 320 x 480 screens.
It sounds like a big transition, but just like the Mac OS 9 to OS X transition in 2001, this transition for Palm will guarantee that they will stay competitive for years to come. One thing we don't want is for Microsoft to get a monopoly in the handheld market. A monopoly in a market leads to a loss of innovation.
|
|
|
|
|
03-18-2004, 06:34 PM
|
Intellectual
Join Date: Aug 2006
Posts: 172
|
|
My confusion comes in when I think of IM's...will a Cobalt version of say Yahoo IM be able to stay 'active' (I mean actively logged into Yahoo IM, and show me as logged on to my IM contacts) while I'm surfing the web, as well as allowing me to run AOL IM, MSN IM all at the same time, all actively showing me as online. Etc. (which I can do today with a PPC)
(I'm assuming I'm using a Wifi Cobalt PDA btw.)
My assumption has gone from no, to Yes, with the following caveats...they must be coded properly for Cobalt to keep those thread as background thread, and they'll need to generate a Slip window so I can flip back to them when I wish to send an IM? Is that correct?
|
|
|
|
|
|
|