PDB es un formato contenedor para bases de datos de registros en Palm OS , Garnet OS y Access Linux Platform . Su estructura es similar a las bases de datos de recursos PRC . [1] El formato de libro electrónico PalmDOC es una versión especial del formato PDB. [2]
Un archivo PDB contiene un encabezado PDB, encabezados de registro PDB y registros . [3] [4]
El encabezado PDB se encuentra al principio del archivo y contiene metainformación sobre el archivo: [3]
Para cada registro, hay un encabezado de registro de ocho bytes, que contiene: [3]
Ahora siguen los registros en sí. El orden habitual es AppInfoArea, SortInfoArea y registros, secuencialmente. [4]
Muchos archivos de formato PDB usaban tiempos contados en segundos desde 1904-01-01T00:00:00. Este es el tiempo base usado por el Macintosh original (hasta Mac OS 9). Cabe señalar que hubo vínculos estrechos entre Palm OS y Mac OS durante el desarrollo inicial. Si se usa un entero sin signo de 32 bits y la época de 1904, se producirá un desbordamiento de entero en algún momento de 2040.
Se puede observar que otros cuentan desde 1970-01-01T00:00:00 (la base de tiempo de la época de Unix) y utilizan un entero con signo de 32 bits que se desbordará en algún momento de 2038.
Referencia de biblioteca y lenguaje de compilación de Protein C/C++ para Palm OS, Copyright 2004 Palm Source denomina a las fechas calculadas a partir de 1904 "época antigua de Palm" y a las calculadas a partir de 1970 "época UNIX". Protein C también proporciona funciones (palm_seconds_to_time_t() y time_t_to_palm_seconds() ) para realizar conversiones entre ambas.
Algunas fuentes incluso sugieren que algunos archivos muy antiguos pueden usar tiempos que cuentan desde 1900 (lo que sería consistente con la época de Excel).
Este conflicto entre la antigua época de Palm (Mac OS 9) y la época de UNIX es desafortunado, la siguiente heurística puede ser útil al examinar un archivo copiado desde un dispositivo Palm OS:
Esto se basa en la idea de que, de lo contrario, el tiempo sería anterior a 1972 o anterior a 1970 (dependiendo de la interpretación) y el formato PDB no existía en ese entonces.
La utilidad palmdump y otro software utilizan esta regla general al leer archivos.