Disappointed Tero
Since I come back from Boston, I've been using this PDA phone. I have the (un)pleasure to use a Kyocera before I get this Treo. Both of them are based on PalmOS, which is showing sign of not keeping pace with the product evolution, IMHO.
The reason this PDA is issue to us is to generate traffic on our CDMA 1xRTT live-air test network. So, it is important to run application that generate network traffic, a lot of them. The PDA has a few network applications installed, I often running Varichat (a IM client) in the foreground. On the other hand, a mail program is running in the bakground. The mail program swap to the foreground every few minutes to check for new mail. It returns to the background after it completed and the Varichat continues taking foreground. From a user point of view, this is annoying becasue the mail program keep distrubing user chatting on the IM client. Desplit of user annoyance, the application swapping is slow and create an opportunity for race condition. More than once I notice the PDA crash after the swap. The swapped out application is performing an operation that cannot be disrrupted, which result in fatal crash. For Tero, the failure handling has improved in PalmOS 5 that it automatically reset when encounter fatal problem.
PalmOS was designed for a small handheld device with a 33mhz CPU (Moto Dragonball) and 128k memory onboard. For such a limited system, the OS has to cut a lot of corners to fit itself into it. One such thing is a full functioning process scheduling subsystem. In many modern OS, we can often find a multi-tasking engine inside to manage program execution. Programs runs in a isolate enviroment and in a concurrent fashion.
However, PalmOS does not have such a process execution environment; Since there is no need for executing more than one application at a time on the original Palm, PalmOS is designed to give application CPU timeslice by swapping in/execute/swapping out. An application can generate an event to demand execution time. This event can trigger at anytime, and the current application might be in a critical region of execution. This result in fatal error on re-entry.
I hope the future version of PalmOS will finally introduce a proper multi-tasking execution engine. It is much needed for a PDA with rich functionality and network capability.
I just returned this PDA phone as I am going to be out of town soon until end of summer, hopefully we might get some new PDA phone to deploy that have better OS.
<update>
Did some reading on PalmOS 5 that is on th Treo, it seem to have the some sort of multi-tasking capability (as they claim). But I heard it from a palm developer that the same foreground/background issue still exist.
</update>
tags to del.icio.us: cdma, cellphone, palm
tags to Technorati: cdma, cellphone, palm


![[Valid XHTML 1.0 Strict]](http://edmondhui.homeip.net/blog/skins/admun3/valid-xhtml.png)
![[Valid CSS]](http://edmondhui.homeip.net/blog/skins/admun3/valid-css.png)
![Validate my RSS feed [Valid RSS]](http://edmondhui.homeip.net/blog/skins/admun3/valid-rss.png)





