Wednesday, January 26, 2005

PalmOS 5 and number crunching

PalmOS video players are said to be much slower than their PPC counterparts. This is ridiculous-isn't the PalmOS the faster operating system? Actually, it's API is. But a program consists of more than just calls to operating system functions. There is glue logic in between-and video codec's have very little in common with OS calls. And here lies the problem-OS5 expects the Glue in Motorola code which then is emulated in an environment called PACE. Altough ARM code can be inserted in a so-called ARMlet, using those is pretty complicated. Difficult endian switching is needed to exchange data with the 68k glue code that is still needed for the PilotMain routine and other tasks, and the emulator cannot run programs with ARMlets.
To avoid the outlined problems, developers use ARMlets only when absolutely neccessary. Thus, the faster OS calls loose most of their speed with their glue code. While many programs consist of lots of API calls and thus can reach high speeds, number crunching does not involve the OS. So, altough the PalmOS works faster, the PocketPC uses smarter execution methods, making it faster at some tasks.
PalmSource has repeatedly stated that Garnet can run native ARM applications, but Licencees are the only ones who have the necceccary tools-let's ignore the privileged Zodiac game programmers.
I don't know why PalmSource refuses to release the necceccary tools-but I hope that they have a good reason.


Anonymous Anonymous said...

The reason is that the API's you want are a pain to use - that's what I've heard from developers I know who had to build stuff using them. I don't think PalmSource is willing to put the effort into making the API's better as they are banking on Cobalt/Palm OS on Linux for their future, not Garnet (probably better licensing terms for PalmSource...)

7:18 PM  
Blogger Steven Fisher said...

I object to two of your points, which is really the only two you have, you just repeated them in different ways. :)

1. The glue is not really all that significant. Speaking from personal experience, it is definitely worth transfering code to ARM. Even where I was making multiple calls to 68k calls in a tight loop with only a bit of math between, the 68k base/ARMlet/68k toolbox method took less than 1/4th the time of the full 68k method.
2. Endian switching, while you need to be careful to remember to do it, is definitely a known problem and not at all difficult to do. Coding in a disciplined manner is not difficult, it is just a matter of... well, discipline.

12:30 AM  
Blogger Tam Hanna said...

actually, I was just saying that not everyone uses ARM to speed up his glue. That was my main point... . BTW, just because API's are a pain in the a$$, this does not justify limiting developers IMHO. Who doesn't want to use them, doesn't use them and vice versa. And putting all the trust on Cobalt is a bad idea imho-who tells PalMmsource that there will be a licencee for this OS soon?
However, each one of this comments has provided me with further insights-thank you all for them!
Best regards
Tam hanna

6:18 PM  
Blogger Steven Fisher said...

I definitely agree that waiting on Cobalt is stupid for the developer, and that PalmSource needs to recognize that and apply more resources to Garnet. However, this is also something that we could do as "advanced" developers.

I'm a big fan of writing my OS-using code as examples first to make it easier to debug. And I reakky should get around to posting those examples somewhere...

4:21 AM  
Blogger Tam Hanna said...

Hi Steven,
I totally agree. If you want you can post them here! I have bought some web space and some bandwith from my personal loot-and would be willing to offer it to you and all others having interesting code to host(of course with credits and everything)!
Email me at please!
Tam Hanna

7:22 PM  
Blogger Dmitry Grinberg said...

Well, completely native apps are possible, and non-licensees can do it. It just takes a bit of time to figure out how to do things. I've made a demo totally-native app, as well as a native system extension. Check it out: "Native test" in downloads is the app, and UDMH is the extension. It takes some trickery, and is not officially supported, so I think this is why programmers are wary of this, or maybe it is because it takes so long to figure it out for the first time...

But it IS way faster than anything PACE can provide, even in an ARMlet, and all API calls are native ARM, there is NO 68k involved anywhere.

3:41 PM  
Anonymous Anonymous said...

China Wholesalers has been described as the world’s factory. buy products wholesaleThis phenomenom is typified by the rise ofbusiness. Incredible range of products available with China Wholesale “Low Price and High Quality” not only reaches directly to their target clients worldwide but also ensures that wholesale from china from China means margins you cannot find elsewhere and China Wholesale will skyroket your profits.china wholesale productsbuy china wholesalewholesale chinawholesale productsbuy products

5:40 AM  
Anonymous Anonymous said...

Wholesale Gemstone cheap Gemstone Jewelry from China, discount wholesale jewelry Beads, wholesale Gemstone jewelry cheapest Wholesale Naruto anime and manga cheap cosplay costumes, cheap Naruto cosplay costumes on sale, buy Naruto cosplay naruto online shop.Wholesale anime and manga naruto cosplay costumes, cheap cosplay costumes on sale, buy anime cosplay costumes online shop

5:40 AM  
Anonymous Anonymous said...

We offer designer , custom wedding dress, cheap cell phonescheap wedding dressesbridal gowns, wedding gowns, Flower Girl Dresses and so on. Buy tailor-made anddesigner wedding dresses designer to be a special brides now!

5:40 AM  
Blogger Zheng junxai5 said...

christian louboutin sale
toms wedges
christian louboutin wedges
lebron 12
nike store
true religion jeans
nike uk
louis vuitton handbags
oakley outlet
nike store uk
air jordan 8
hollister clothing
celine bags
oakley vault
michael kors handbags
longchamp handbags
coach factory outlet
nike store
cheap ray ban sunglasses
christian louboutin shoes
air max 95
cheap louis vuitton handbags
ralph lauren clearance outlet
coach factory outlet online
ralph lauren
burberry handbags
jordan shoes
timberland outlet
pandora jewelry
replica rolex watches
ghd flat iron
christian louboutin sale clearance
retro jordans 13
replica watches
kd 8
ray bans
true religion sale
michael kors outlet
ray ban sunglasses
louboutin shoes

9:51 AM  

Post a Comment

<< Home