Skip to Content
Palm OS Programming, 2nd Edition
book

Palm OS Programming, 2nd Edition

by Julie McKeehan, Neil Rhodes
October 2001
Intermediate to advanced
704 pages
19h 33m
English
O'Reilly Media, Inc.
Content preview from Palm OS Programming, 2nd Edition

Cards and Local IDs

The Palm OS contains support for multiple numbered memory cards, in which each card can hold RAM and/or ROM. Every Palm OS device contains an internal card, with number 0, containing both RAM and ROM. The Handspring devices support an external ROM card (actually Flash), with number 1.

The Memory Manager doesn’t store raw addresses to refer to memory chunks, but instead stores the offset of the chunk relative to the beginning of the card. Such an offset is called a local ID. By storing items this way, the base address of the card can change without requiring any changes to the structure of the heap.

Tip

This flexibility isn’t used currently (and, in fact, probably never will be), since it’s not possible to move a card to a different base address. You can imagine, however, a device with multiple card slots, where the base address of a card would depend on into which slot it was inserted. This flexibility is there and is reflected in some APIs. You’ll rarely need to know about cards and local IDs. We only brought it up because we thought it was important to explain the rationale behind the APIs requiring card numbers and local IDs.

Given a card number and a local ID, you can obtain the associated address. You can also go the other way, breaking apart a pointer to a chunk to a card number and local ID.

APIs

Here is a list of APIs:

LocalID MemHandleToLocalID(MemHandle h)

This returns the local ID to the chunk referred to by h.

LocalIDKind MemLocalIDKind(LocalID ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Palm OS Network Programming

Palm OS Network Programming

Greg Winton
Palm Programming: The Developer's Guide

Palm Programming: The Developer's Guide

Neil Rhodes, Julie McKeehan
End to End GUI Development with Qt5

End to End GUI Development with Qt5

Nicholas Sherriff, Guillaume Lazar, Robin Penea, Marco Piccolino

Publisher Resources

ISBN: 1565928563Errata Page