stringtranslate.com

PDB (Palm OS)

PDB — это формат контейнера для баз данных записей в Palm OS , Garnet OS и Access Linux Platform . Его структура похожа на базы данных ресурсов PRC . [1] Формат PalmDOC eBook — это специальная версия формата PDB. [2]

Структура PDB-файла

Файл PDB содержит заголовок PDB, заголовки записей PDB и записи . [3] [4]

Заголовок PDB

Заголовок PDB находится в начале файла и содержит метаинформацию о файле: [3]

Заголовок записи PDB

Для каждой записи имеется восьмибайтовый заголовок записи, содержащий: [3]

Записи ПДБ

Теперь следуют сами записи. Обычный порядок — AppInfoArea, SortInfoArea и записи, последовательно. [4]

PDB Дата и время

Во многих файлах формата PDB время отсчитывалось в секундах от 1904-01-01T00:00:00. Это базовое время, используемое оригинальным Macintosh (до Mac OS 9). Можно отметить, что на ранних этапах разработки между Palm OS и Mac OS существовали тесные связи. При использовании беззнакового 32-битного целого числа и эпохи 1904 года переполнение целого числа произойдет где-то в 2040 году.

Другие могут вести отсчет с 1970-01-01T00:00:00 (базовое время эпохи Unix) и использовать знаковое 32-битное целое число, которое переполнится где-то в 2038 году.

Справочник по языку и библиотекам компилятора Palm OS Protein C/C++, Copyright 2004 Palm Source называет даты, вычисленные с 1904 года, «старой эпохой Palm», а даты, вычисленные с 1970 года, «эпохой UNIX». Protein C также предоставляет функции (palm_seconds_to_time_t() и time_t_to_palm_seconds() ) для преобразования между ними.

Некоторые источники даже предполагают, что некоторые очень старые файлы могут использовать отсчет времени с 1900 года (что соответствовало бы эпохе Excel).

Этот конфликт между старой эпохой Palm (Mac OS 9) и эпохой UNIX является досадным; следующая эвристика может оказаться полезной при проверке файла, скопированного с устройства Palm OS:

Это основано на идее, что в противном случае это было бы время до 1972 или до 1970 года (в зависимости от интерпретации), а формата PDB тогда еще не было.

Утилита palmdump и другое программное обеспечение используют это практическое правило при чтении файлов.

Смотрите также

Ссылки

  1. ^ Н. Роудс, Дж. Маккиан. Программирование Palm OS, второе издание, O'Reilly, 2001, ISBN  1-56592-856-3
  2. ^ MobileRead Wiki: Спецификация формата PalmDOC
  3. ^ abc Paul J. Lucas (1998) Формат файла PDB (Pilot Database). Архивировано 2022-02-23 на Wayback Machine Доступно 20090308
  4. ^ ab Microfirst Software. Формат базы данных Pilot Record Архивировано 2009-03-15 на Wayback Machine Доступно 20090308