Home      Discussion      Topics      Dictionary      Almanac
Signup       Login
PDB (Palm OS)

PDB (Palm OS)

Discussion
Ask a question about 'PDB (Palm OS)'
Start a new discussion about 'PDB (Palm OS)'
Answer questions from other users
Full Discussion Forum
 
Encyclopedia
PDB is a container format for record database
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...

s in Palm OS
Palm OS
Palm OS is a mobile operating system initially developed by Palm, Inc., for personal digital assistants in 1996. Palm OS is designed for ease of use with a touchscreen-based graphical user interface. It is provided with a suite of basic applications for personal information management...

, Garnet OS and Access Linux Platform
Access Linux Platform
The Access Linux Platform , once referred to as a "next-generation version of the Palm OS" is an open source-based operating system for mobile devices developed and marketed by Access Co., of Tokyo, Japan. The platform includes execution environments for Java, classic Palm OS, and GTK+-based native...

. Its structure is similar to PRC
PRC (Palm OS)
PRC is a container format for code databases in Palm OS, Garnet OS and Access Linux Platform. Its structure is similar to PDB databases. Usually, a PRC file is a flat representation of a Palm OS application that is stored as forked database on the PDA....

 resource databases. The PalmDOC eBook format is a special version of the PDB format.

Structure of PDB file


A PDB file contains a PDB header, PDB record headers and records
Record (computer science)
In computer science, a record is an instance of a product of primitive data types called a tuple. In C it is the compound data in a struct. Records are among the simplest data structures. A record is a value that contains other values, typically in fixed number and sequence and typically indexed...

.
PDB Header
PDB Record Header
PDB Records

PDB Header


The PDB header is located at the beginning of the file and contains meta-information on the file :
Offset Name Type Size
0x00 name char 32 Bytes
0x20 file attributes integer 2 Bytes
0x22 version integer 2 Bytes
0x24 creation time Macintosh time 4 Bytes
0x28 modification time Macintosh time 4 Bytes
0x2c backup time Macintosh time 4 Bytes
0x30 modification number integer 4 Bytes
0x34 app_info integer 4 Bytes
0x38 sort_info integer 4 Bytes
0x3c type integer 4 Bytes
0x40 creator integer 4 Bytes
0x44 unique_id_seed integer 4 Bytes
0x48 next_record_list integer 4 Bytes
0x4c num_records integer 2 Bytes

PDB Record Header


For every record, there is an eight byte record header, containing:
name type size notes
offset integer 4 bytes Byte number in the PDB file (counting from zero), where the record is located
attributes byte 1 byte Attributes of the record (delete/dirty/busy/secret/category)
UniqueID integer 3 bytes Always 0

PDB Records


Now the records themselves follow. The usual order is AppInfoArea, SortInfoArea and records, sequentially.