XAR (abreviatura de e X tensible AR chive format ) es un archivador de archivos de código abierto y el formato de archivo del archivador . Fue creado dentro del proyecto OpenDarwin y se usa en macOS X 10.5 y versiones posteriores para rutinas de instalación de software, así como extensiones de navegador en Safari 5.0 y versiones posteriores. Xar reemplazó el uso de archivos pax comprimidos con gzip . [2]
Extensiones de nombre de archivo | .xar , .pkg , [1].xip |
---|---|
Tipo de medio de Internet | aplicación / x-xar [1] |
Identificador de tipo uniforme (UTI) | com.apple.xar-archive |
número mágico | xar! |
Tipo de formato | formato de archivo de almacenamiento |
Extendido desde | XML , gzip |
Una rama de desarrollo de RPM , RPM5 , usa xar. [3]
Estructura de archivo
![XAR File Structure.svg](http://wikiimg.tojsiabtv.com/wikipedia/commons/thumb/8/8f/XAR_File_Structure.svg/220px-XAR_File_Structure.svg.png)
El archivo consta de tres secciones, el encabezado, la tabla de contenido y el montón. Todos los campos se almacenan en orden big endian . [4]
Encabezamiento
Compensar# | Tamaño (en bytes) | Propósito |
---|---|---|
0 | 4 | Firma de archivo utilizada para identificar el formato de archivo como Xar. Esto siempre debe ser igual xar! |
4 | 2 | Tamaño del encabezado |
6 | 2 | Versión de formato Xar a utilizar. Actualmente solo existe la versión 1. |
8 | 8 | Longitud de los datos comprimidos de TOC. |
dieciséis | 8 | Longitud de los datos sin comprimir TOC. |
24 | 4 | Algoritmo de suma de comprobación: |
28 | 0, 4, 36 | a veces relleno de bytes o nombre del algoritmo de suma de comprobación |
Tabla de contenido
Xar es diferente de cpio , tar o ar en que almacena el TOC (tabla de contenido) al principio del archivo, lo que hace que agregar a un archivo sea más complicado, pero hace innecesario escanear el archivo para extraer un archivo contenido individual. . La tabla de contenido se almacena como un zlib comprimido, UTF-8 codificados, documento XML . [6] [4] Cada archivo que se almacena en el Xar se comprime / codifica de forma independiente. Esto le da la capacidad de tener los archivos codificados usando gzip mientras tiene otro archivo en el mismo archivo codificado usando un método diferente como bzip2 . En algunos sistemas, el miembro de archivo también se puede codificar mediante el método de compresión xz o lzma . [5]
Tabla de contenido de ejemplo
xml version = "1.0" encoding = "UTF-8"?> style = "sha1" > 0 20 id = "1" > personal 20 joe 501 0755 < type> directorio com.foobar id = "2" > 20 501 0775 directorio Contenido id = "3" > 428 20 1005 style = "application / x-gzip" /> style = "SHA1" > a5f6f1461213a904f831d4ef6f214638342842ed ído-checksum> style = "SHA1" > 21d21a0c90378248ce0dfb6f345376d1b00d65fc 20 501 0664 < / mode> file Info.plist id = "4" > 20 501 0775 < / mode> directorio Resources id = "5" > 14868 448 274432 style = "application / x-gzip" /> style = "SHA1" > efe5c97921de7ccc5aebc158d158e9d4280d6814 ído-suma> style = "SHA1" > 45c8be42d1d9afdb57ddd5e9311453010ec46161 20 501 0664 file foobar id = "6" > 17635 15316 45056 ón> style = "application / x-gzip" /> style = "SHA1" > 3c761ffcc81ee6e232e4f4a1c4a81654c26c4e52 ído-suma> style = "SHA1" > 0ea31f8ef0e5987a1838a64ab5c26ebf3ee4bc37 < group> 20 501 0664 file docSet. skidx file> id = "7" > 20 501 0775 directorio Documentos id = "8" > 35790 32951 209242 style = "application / x-gzip" /> style = "SHA1" > 5242cd71585c34e722932f324706f8c00e1ae0c5 ído-suma> style = "SHA1" > c0e013e53d829511835e2b429abb5198731e9a3e 20 501 0664 file foobar.html
Referencias
- ^ a b "aplicación / x-xar" . Consultado el 19 de marzo de 2019 .
- ^ Nabble - xar en Mac OS X Archivado el 7 de febrero de 2007 en Wayback Machine.
- ^ Administrador de paquetes RPM 5
- ^ a b https://github.com/mackyle/xar/wiki/xarformat
- ^ a b Braun, Rob; Fuller, Landon; Leimbach, David; Van Vechten, Kevin (4 de junio de 2015). "xar - página de manual de mojave de ARchiver eXtensible" . Consultado el 26 de marzo de 2019 .
- ^ https://code.google.com/archive/p/xar/wikis/xarformat.wiki
enlaces externos
- Proyecto original Xar (muerto)
- tenedor del proyecto original (también muerto)
- Página de inicio y tarball de Apple XAR