Universal Disk Format ( UDF ) es un sistema de archivos abierto e independiente del proveedor para el almacenamiento de datos informáticos en una amplia gama de medios. En la práctica, se ha utilizado más ampliamente para DVD y formatos de discos ópticos más nuevos , reemplazando a ISO 9660. Debido a su diseño, es muy adecuado para actualizaciones incrementales tanto en medios ópticos de una sola escritura como regrabables . UDF fue desarrollado y mantenido por la Optical Storage Technology Association (OSTA).
En términos de ingeniería, el formato de disco universal es un perfil de las especificaciones conocidas como ISO/IEC 13346 y ECMA-167. [4]
Normalmente, el software de creación de archivos procesará un sistema de archivos UDF en un proceso por lotes y lo escribirá en un medio óptico en una sola pasada. Pero cuando se escriben paquetes en medios regrabables, como CD-RW , UDF permite crear, eliminar y modificar archivos en el disco, tal como lo haría un sistema de archivos de propósito general en medios extraíbles como disquetes y unidades flash . Esto también es posible en medios de una sola escritura, como CD-R , pero en ese caso el espacio ocupado por los archivos eliminados no se puede recuperar (y, en cambio, se vuelve inaccesible).
La masterización multisesión también es posible en UDF, aunque algunas implementaciones pueden no poder leer discos con múltiples sesiones. [c]
La Asociación de Tecnología de Almacenamiento Óptico estandarizó el sistema de archivos UDF para formar un sistema de archivos común para todos los medios ópticos: tanto para medios de solo lectura como para medios ópticos regrabables. Cuando se estandarizó por primera vez, el sistema de archivos UDF tenía como objetivo reemplazar a ISO 9660 , lo que permite la compatibilidad con medios de solo lectura y de escritura. Después del lanzamiento de la primera versión de UDF, el Consorcio DVD lo adoptó como el sistema de archivos oficial para DVD-Video y DVD-Audio . [5]
UDF comparte el formato de descriptor de volumen básico con ISO 9660. Desde 1.50 se define un formato "UDF Bridge" para que un disco también pueda contener un sistema de archivos ISO 9660 que haga referencias a archivos en la parte UDF. [6]
Se han publicado varias revisiones de UDF: [5] [7]
Las revisiones de UDF se codifican internamente como decimales codificadas en binario ; la revisión 2.60, por ejemplo, se representa como 0x0260 . [13] : 23 Además de declarar su propia revisión, la compatibilidad para cada volumen se define mediante las revisiones mínimas de lectura y escritura, cada una de las cuales indica los requisitos para que estas operaciones sean posibles para cada estructura en esta imagen. Una revisión de "escritura máxima" registra además el nivel de compatibilidad de UDF más alto de todas las implementaciones que han escrito en esta imagen. [13] : 34 Por ejemplo, un volumen UDF 2.01 que no utiliza archivos de flujo (introducidos en UDF 2.00) pero utiliza VAT (UDF 1.50) creado por una implementación compatible con UDF 2.60 puede tener la revisión declarada como 0x0201 , la revisión de lectura mínima establecida en 0x0150 , la escritura mínima en 0x0150 y la escritura máxima en 0x0260 .
El estándar UDF define tres variantes del sistema de archivos , denominadas "builds", que son:
Introducido en la primera versión del estándar, este formato puede utilizarse en cualquier tipo de disco que permita acceso aleatorio de lectura/escritura, como discos duros , DVD+RW y DVD-RAM . Los metadatos (hasta la versión 2.50) y los datos de archivo se gestionan de forma más o menos directa. Al escribir en un disco con este formato, se puede elegir cualquier bloque físico del disco para la asignación de archivos nuevos o actualizados.
Dado que este es el formato básico , prácticamente cualquier sistema operativo o controlador de sistema de archivos que diga tener soporte para UDF debería poder leer este formato.
Los medios de escritura única, como los DVD-R y los CD-R, tienen limitaciones a la hora de escribir en ellos, ya que cada bloque físico solo se puede escribir una vez y la escritura debe realizarse de forma incremental. Por lo tanto, la construcción simple de UDF solo se puede escribir en CD-R mediante la premasterización de los datos y luego escribiendo todos los datos en una sola pieza en el medio, de forma similar a la forma en que se escribe un sistema de archivos ISO 9660 en un medio CD.
Para permitir que un CD-R se use virtualmente como un disco duro, con lo que el usuario puede agregar y modificar archivos en un CD-R a voluntad (el llamado "acceso a la letra de unidad" en Windows), OSTA agregó la construcción VAT al estándar UDF en su revisión 1.5. La VAT es una estructura adicional en el disco que permite la escritura en paquetes ; es decir, reasignar bloques físicos cuando se modifican o eliminan archivos u otros datos en el disco. Para los medios de escritura única, se virtualiza todo el disco, lo que hace que la naturaleza de escritura única sea transparente para el usuario; el disco puede tratarse de la misma manera que se trataría un disco regrabable.
La naturaleza de escritura única de los medios CD-R o DVD-R significa que cuando se elimina un archivo del disco, los datos del archivo permanecen en el disco. Ya no aparecen en el directorio, pero siguen ocupando el espacio original donde estaban almacenados. Finalmente, después de usar este esquema durante algún tiempo, el disco se llenará, ya que no se puede recuperar el espacio libre eliminando archivos. Se pueden usar herramientas especiales para acceder al estado anterior del disco (el estado antes de que se produjera la eliminación), lo que hace posible la recuperación.
No todas las unidades implementan completamente la versión 1.5 o superior de UDF y, por lo tanto, es posible que algunas no puedan manejar compilaciones de VAT.
Los medios regrabables, como los DVD-RW y los CD-RW, tienen menos limitaciones que los DVD-R y los CD-R. Los sectores se pueden reescribir de forma aleatoria (aunque en paquetes a la vez). Estos medios se pueden borrar por completo en cualquier momento, lo que hace que el disco vuelva a quedar en blanco, listo para escribir en él un nuevo UDF u otro sistema de archivos (por ejemplo, ISO 9660 o CD Audio ). Sin embargo, los sectores de los medios -RW pueden "desgastarse" después de un tiempo, lo que significa que sus datos se vuelven poco fiables, por haber sido reescritos con demasiada frecuencia (normalmente después de unos cientos de reescrituras, con CD-RW).
Las versiones simple y VAT del formato UDF se pueden utilizar en medios regrabables, con algunas limitaciones. Si se utiliza la versión simple en un medio -RW, no se debe permitir la modificación de los datos a nivel del sistema de archivos, ya que esto desgastaría rápidamente los sectores del disco que se utilizan con frecuencia (como los de los datos de asignación de bloques y directorios), que luego pasarían desapercibidos y provocarían la pérdida de datos. Para permitir la modificación de archivos en el disco, se pueden utilizar discos regrabables como medios -R utilizando la versión VAT . Esto garantiza que todos los bloques se escriban solo una vez (sucesivamente), lo que garantiza que no haya bloques que se reescriban con más frecuencia que otros. De esta manera, un disco RW se puede borrar y reutilizar muchas veces antes de que se vuelva poco confiable. Sin embargo, con el tiempo se volverá poco confiable y no habrá una forma sencilla de detectarlo. Cuando se utiliza la versión VAT , los medios CD-RW/DVD-RW aparecen efectivamente como medios CD-R o DVD+/-R en la computadora. Sin embargo, los medios se pueden borrar nuevamente en cualquier momento.
La compilación de repuestos se agregó en la revisión 1.5 para abordar las particularidades de los medios regrabables. Esta compilación agrega una tabla de repuestos adicional para administrar los defectos que eventualmente ocurrirán en partes del disco que se reescribieron demasiadas veces. Esta tabla realiza un seguimiento de los sectores desgastados y los reasigna a sectores que funcionan. La administración de defectos de UDF no se aplica a los sistemas que ya implementan otra forma de administración de defectos, como Mount Rainier (MRW) para discos ópticos o un controlador de disco para un disco duro.
Las herramientas y unidades que no admiten totalmente la revisión 1.5 de UDF ignorarán la tabla de repuesto, lo que las llevaría a leer sectores obsoletos y desgastados, lo que provocaría la recuperación de datos dañados.
Una sobrecarga que se extiende por todo el disco reserva una parte del espacio de almacenamiento de datos, lo que limita la capacidad utilizable de un CD-RW con, por ejemplo, 650 MB de capacidad original a alrededor de 500 MB. [14]
Las especificaciones UDF [5] permiten sólo un conjunto de caracteres OSTA CS0 , que puede almacenar cualquier punto de código Unicode , excepto U+FEFF y U+FFFE. No se utilizan conjuntos de caracteres adicionales definidos en ECMA-167. [4] : 7.2
Desde la Errata DCN-5157, el rango de puntos de código se amplió a todos los puntos de código de Unicode 4.0 (o cualquier versión más nueva o anterior), que incluye caracteres del plano 1 al 16, como Emoji . DCN-5157 también recomienda normalizar las cadenas a la Forma de Normalización C. [15]
El conjunto de caracteres OSTA CS0 almacena una cadena Unicode de 16 bits "comprimida" en unidades de 8 o 16 bits, precedida por una etiqueta "compID" de un solo byte para indicar el tipo de compresión. El almacenamiento de 8 bits es funcionalmente equivalente a ISO-8859-1 , y el almacenamiento de 16 bits es UTF-16 en big endian. Los nombres de archivo de 8 bits por carácter ahorran espacio porque solo requieren la mitad del espacio por carácter, por lo que se deben usar si el nombre de archivo no contiene caracteres especiales que no se puedan representar con solo 8 bits. [16]
El algoritmo de referencia no comprueba los puntos de código prohibidos ni interpreta pares sustitutos , por lo que, al igual que NTFS, la cadena puede estar mal formada. [5] : 2.1.2, 6.4 (DCN-5157 no especifica ninguna forma específica de almacenamiento, pero UTF-16BE es el único método conocido para almacenar todo Unicode y, al mismo tiempo, es compatible con versiones anteriores de UCS-2 ). [15]
Muchos reproductores de DVD no admiten ninguna revisión de UDF que no sea la versión 1.02. Los discos creados con una revisión más reciente pueden seguir funcionando en estos reproductores si se utiliza el formato puente ISO 9660. Incluso si un sistema operativo afirma poder leer UDF 1.50, es posible que solo admita la versión normal y no necesariamente las versiones VAT o Spared UDF.
Mac OS X 10.4.5 afirma ser compatible con la Revisión 1.50 (consulte man mount_udf ), pero solo puede montar discos de la versión normal correctamente y no proporciona ningún tipo de compatibilidad con la virtualización. No puede montar discos UDF con VAT, como se vio con el problema de Sony Mavica. [17] [18] Las versiones anteriores a la 10.4.11 montan discos con Sparing Table pero no leen sus archivos correctamente. La versión 10.4.11 soluciona este problema. [19] [20]
De manera similar, Windows XP Service Pack 2 (SP2) no puede leer discos DVD-RW que utilicen las tablas de repuesto UDF 2.00 como sistema de administración de defectos. [21] Este problema se produce si el sistema de administración de defectos UDF crea una tabla de repuesto que abarca más de un sector en el disco DVD-RW. Windows XP SP2 puede reconocer que un DVD utiliza UDF, pero el Explorador de Windows muestra el contenido de un DVD como una carpeta vacía. Hay disponible una revisión para esto [22] y se incluye en el Service Pack 3. [21]
Debido a las versiones y opciones de UDF predeterminadas, una partición UDF formateada por Windows no se puede escribir en macOS. Por otro lado, una partición formateada por macOS no se puede escribir directamente en Windows, debido al requisito de una tabla de particiones MBR . Además, Linux solo admite la escritura en UDF 2.01. Un script para Linux y macOS llamado format-udf
maneja estas incompatibilidades utilizando UDF 2.01 y agregando un MBR falso; [23] para Windows, la mejor solución es usar la herramienta de línea de comandos format /FS:UDF /R:2.01
.
El resultado es una unidad que se puede usar para leer/escribir en varias familias de sistemas operativos: Windows, macOS y Linux. Este script debería poder ejecutarse en macOS o en Linux.
Se admite UDF 1.50, pero no UDF 2.0 y versiones posteriores.
Esta nota de la versión describe los cambios en los marcos de grabación de discos a partir de la versión 10.4 de OS X. El motor de creación de contenido de grabación de discos ahora admite la escritura de discos UDF 2.0 además de UDF 1.02 y 1.5.
Se admite la lectura de todas las revisiones de UDF (1.02 - 2.60) tanto en dispositivos de bloque (por ejemplo, discos duros y unidades USB) como en la mayoría de los medios ópticos. Se admite la escritura en dispositivos de bloque, DVD-RW y DVD+RW con las siguientes excepciones: (1) No se puede escribir Finder Info, Resource Fork u otros atributos extendidos en volúmenes UDF de revisión 1.02 y 1.50; (2) No se puede escribir en particiones de metadatos reflejadas.
OS X admite la lectura de las revisiones UDF 1.02 a 2.60 tanto en dispositivos de bloque como en la mayoría de los medios ópticos, y admite la escritura en dispositivos de bloque y en medios DVD-RW y DVD+RW utilizando UDF 2.00 a 2.50 (excepto las particiones de metadatos reflejadas en 2.50).
Se agregó compatibilidad con UDF para medios ópticos y dispositivos de bloque, consulte mount_udf(8). Solo lectura por ahora.
Windows 98 tiene un nuevo sistema de formato de disco universal (UDF) de solo lectura, que admite la lectura de medios formateados según la especificación UDF 1.02.
El sistema de archivos UDF de 32 bits en modo protegido de Windows 98 se implementa de acuerdo con la Revisión 1.02 de la Especificación de formato de disco universal de la Asociación de tecnología de almacenamiento óptico (OSTA). Proporciona acceso de solo lectura a medios con formato UDF, como discos DVD. El sistema de archivos UDF utiliza VCACHE y es dinámico, por lo que no requiere configuración ni asignación estática por parte del usuario.
Windows NT 5.0 también agrega UDF (Universal Disk Format). ... Las implementaciones de UDF que se incluyen tanto en Windows 98 (UDF 1.02) como en Windows NT 5.0 (UDF 1.50) son de solo lectura.
Windows 2000 cumple con la norma ISO 13346 y admite las versiones 1.02 y 1.5 de UDF. ... el controlador UDF de Windows 2000 (Udfs.sys) proporciona soporte de sólo lectura.
UDF en Windows 2000, y con las versiones 2.0 y 2.01 de UDF en Windows XP y Windows Server 2003. ... el controlador UDF de Windows (Udfs.sys) proporciona compatibilidad de solo lectura. Windows no implementa compatibilidad con otras funciones de UDF, incluidas las secuencias con nombre, las listas de control de acceso o los atributos extendidos.
admite versiones de UDF hasta la 2.60. El controlador UDF de Windows (Udfs.sys) proporciona compatibilidad de lectura y escritura cuando se utiliza UDF 2.50 y compatibilidad de solo lectura cuando se utiliza UDF 2.60. Sin embargo, Windows no implementa compatibilidad con determinadas funciones de UDF, como secuencias con nombre y listas de control de acceso.
admite versiones de UDF hasta la 2.60. El controlador UDF de Windows (Udfs.sys) proporciona compatibilidad de lectura y escritura cuando se utiliza UDF 2.50 y compatibilidad de solo lectura cuando se utiliza UDF 2.60. Sin embargo, Windows no implementa compatibilidad con determinadas funciones de UDF, como secuencias con nombre y listas de control de acceso.