Protein Data Bank (.pdb)

Palm Estándar

Palm OS Database (PDB) es el formato nativo de almacenamiento por registros de la antigua plataforma portátil Palm OS. Sirve de contenedor para los primeros libros electrónicos digitales, como PalmDOC y Peanut Press.

Inspección y metadatos

Los sistemas operativos y analizadores de archivos identifican los archivos de PDB inspeccionando la secuencia de bytes binarios inicial:

Selecciona o arrastra archivos aquí

Privado - los archivos nunca salen de tu dispositivo

o pega Ctrl+V
Garantía de privacidad sin transmisión de red: 0 bytes subidos a servidores externos. Todo el procesamiento se realizó de forma local en el entorno seguro de tu navegador.

Firma de cabecera a nivel de bytes (bytes mágicos)

Los sistemas operativos y analizadores de archivos identifican los archivos de PDB inspeccionando la secuencia de bytes binarios inicial:

FIRMA HEXADECIMAL (DESPLAZAMIENTO 60):

52 45 41 44 50 72 73 73

REPRESENTACIÓN ASCII: READPrss

Estandarización: Palm OS File System Architecture Specification

Especificaciones técnicas

Arquitectura del contenedorCabecera de base de datos Palm de 78 bytes, seguida de una lista de desplazamientos de registros y de sus datos binarios
CompresiónCompresión de bytes PalmDOC LZ77 por secuencias o registros sin comprimir
Orden de bytes (Endianness)Big-endian (orden de bytes Motorola 68000)
Espacios de colorN/A (Contenedor de base de datos)
Canales y estructuraRegistros de bases de datos de uso general (direcciones, notas, calendario y libros eReader)
Dimensiones máximasCada registro puede ocupar hasta 65 535 bytes (los bloques de texto PalmDOC suelen ser de 4096 bytes)
TransparenciaNinguna
Streaming y progresivoÍndice de registros con acceso aleatorio

Matriz de comparación técnica: PDB frente a la competencia

Atributo técnicoPDB (Actual)MOBIEPUBTXT
Herencia de plataformaPalm Pilot / Palm OS (1996)Mobipocket / primeros Kindle (2000)Web universal / W3C (2007)Computación universal (1963)
Arquitectura de registrosTabla de registros Motorola 68k big-endianDerivada de PalmDOC con cabecera MOBIArchivo ZIP de XHTML y CSSFlujo de bytes sin procesar no estructurado
Tamaño máximo de registro4096 bytes por bloque de texto4096 bytes por bloque de textoDocumentos XHTML ilimitadosFlujo de bytes ilimitado
Uso activoArchivo histórico / informática retroLectores electrónicos heredadosFormato de publicación estandarizado por el W3C; su uso varía según el ecosistema de lecturaLa compatibilidad varía según la aplicación.

Modos de corrupción comunes y guía de recuperación hexadecimal

El programa indica «Invalid Palm database record offset table» (tabla de desplazamientos de registros de base de datos Palm no válida).

Causa raíz: La lista de desplazamientos de registros está dañada o el archivo se truncó y faltan datos de registros.

Recuperación: Reconstruye los desplazamientos de registros o extrae el texto PalmDOC sin procesar con Palm Converter de File2File.app.

Análisis de seguridad y vectores de ataque al analizador

Los descodificadores PDB procesan campos de 16 bits con el número de registros. Si no se limitan, pueden provocar accesos fuera de los límites de memoria.

Vectores de ataque conocidos

  • Desbordamiento de enteros al asignar memoria para la tabla de desplazamientos de registros.
  • Desbordamiento de búfer durante la descompresión PalmDOC LZ77.
  • Denegación de servicio mediante punteros de recuento de registros dañados.

Mejores prácticas defensivas: Antes de leer el archivo, Valida que los desplazamientos declarados de todos los registros no superen su longitud real.

Orígenes históricos e hitos

2008Palm pasa a webOS y pone fin a la era clásica de las bases de datos Palm OS 68k.
2000Peanut Press presenta los libros eReader (.pdb) de Palm Digital Media y populariza la lectura comercial en dispositivos móviles.
1996Palm Computing presenta el PalmPilot 1000 y establece la arquitectura de bases de datos .pdb.

Ventajas principales

  • Fue la base de la lectura digital en dispositivos portátiles y de las primeras aplicaciones móviles de bases de datos.
  • Su reducido consumo de memoria permitía ejecutarlo en dispositivos Palm con solo 512 KB de RAM.
  • La arquitectura por registros permitía buscar y recuperar datos casi al instante en procesadores móviles de bajo consumo.

Limitaciones técnicas

  • Está muy obsoleto: para abrir estos archivos en sistemas modernos se necesitan emuladores antiguos especializados o herramientas de conversión.
  • La extensión .pdb es ambigua: también se usa para los archivos de símbolos de depuración Program Database de Microsoft y para archivos moleculares del Protein Data Bank.
  • Tiene límites estrictos de 64 KB por registro y requiere el orden de bytes big-endian.

Curiosidades técnicas interesantes

  • Los códigos de tipo y creador en el desplazamiento 60 identifican el propósito del archivo: 'BOOKMOBI' para Mobipocket, 'TEXtREAd' para PalmDOC y 'READPrss' para Peanut Press.
  • Jeff Hawkins creó una maqueta del PalmPilot con un bloque de madera tallado y un lápiz óptico también tallado a mano.
  • Algunas aplicaciones médicas de consulta para Palm OS almacenaban datos sobre fármacos y referencias clínicas en archivos PDB para acceder a ellos desde dispositivos de mano.

Preguntas técnicas frecuentes

¿Por qué mi ordenador reconoce el archivo PDB como un archivo de símbolos de Visual Studio?

Microsoft Visual Studio usa la extensión .pdb para archivos de símbolos de depuración Program Database. Las bases de datos de los dispositivos Palm OS usan la misma extensión de tres letras, lo que provoca conflictos de asociación de archivos en Windows.

¿Cómo puedo convertir un libro electrónico Palm PDB a PDF o EPUB?

Puedes subir el archivo Palm .pdb a File2File.app para extraer el texto y convertirlo al instante a EPUB, PDF o TXT moderno.

¿Qué era PalmDOC?

PalmDOC fue uno de los primeros formatos de libro digital. Guardaba texto comprimido en bloques de 4096 bytes dentro de un contenedor PDB de Palm OS para leerlo en los primeros PalmPilot.