stringtranslate.com

Tabla de asignación de archivos

File Allocation Table ( FAT ) es un sistema de archivos desarrollado para computadoras personales y fue el sistema de archivos predeterminado para los sistemas operativos MS-DOS y Windows 9x . [ cita requerida ] Originalmente desarrollado en 1977 para su uso en disquetes , fue adaptado para su uso en discos duros y otros dispositivos. El aumento en la capacidad de las unidades de disco requirió cuatro variantes principales: FAT12, FAT16, FAT32 y ExFAT . FAT fue reemplazado por NTFS como el sistema de archivos predeterminado en los sistemas operativos de Microsoft a partir de Windows XP . [3] Sin embargo, FAT continúa utilizándose en flash y otras tarjetas y módulos de memoria de estado sólido (incluidas las unidades flash USB ), muchos dispositivos portátiles e integrados debido a su compatibilidad y facilidad de implementación. [4]

Usos

Histórico

FAT también se utilizó en discos duros durante las eras de DOS y Windows 9x . Microsoft introdujo NTFS con la plataforma Windows NT en 1993, pero FAT siguió siendo el estándar para el usuario doméstico hasta la introducción de Windows XP en 2001. Windows Me fue la última versión de Windows que utilizó FAT como sistema de archivos predeterminado.

Para los disquetes, FAT se ha estandarizado como ECMA -107 [5] e ISO / IEC  9293:1994 [6] (reemplazando a ISO 9293:1987 [7] ). Estos estándares cubren FAT12 y FAT16 con solo soporte para nombres de archivo cortos 8.3 ; los nombres de archivo largos con VFAT fueron parcialmente patentados. [8] Mientras que FAT12 se usa en disquetes, FAT16 y FAT32 se encuentran típicamente en los medios más grandes.

Moderno

FAT se utiliza internamente para la partición del sistema EFI en la etapa de arranque de las computadoras compatibles con EFI . [9] Los sistemas de archivos FAT ocultos también se utilizan en la partición de arranque UEFI en las PC modernas.

FAT todavía se utiliza en unidades que se espera que sean utilizadas por varios sistemas operativos, como en entornos compartidos de Windows, Linux y DOS. Microsoft Windows también viene con una herramienta preinstalada para convertir un sistema de archivos FAT en NTFS directamente sin la necesidad de reescribir todos los archivos, aunque esto no se puede revertir fácilmente. [10] El sistema de archivos FAT se utiliza en medios extraíbles como disquetes , superdisquetes , tarjetas de memoria flash o unidades flash USB . FAT es compatible con dispositivos portátiles como PDA , cámaras digitales , videocámaras , reproductores multimedia y teléfonos móviles. [ cita requerida ]

El sistema de archivos DCF adoptado por casi todas las cámaras digitales desde 1998 define un sistema de archivos lógico con nombres de archivo 8.3 y hace obligatorio el uso de FAT12, FAT16, FAT32 o exFAT para su capa física por motivos de compatibilidad. [11]

Detalles técnicos

El sistema de archivos utiliza una tabla de índices almacenada en el dispositivo para identificar cadenas de áreas de almacenamiento de datos asociadas con un archivo, la Tabla de asignación de archivos ( FAT ). La FAT se asigna estáticamente en el momento del formateo. La tabla es una lista enlazada de entradas para cada clúster , un área contigua de almacenamiento en disco. Cada entrada contiene el número del siguiente clúster en el archivo o un marcador que indica el final del archivo, espacio en disco no utilizado o áreas reservadas especiales del disco. El directorio raíz del disco contiene el número del primer clúster de cada archivo en ese directorio. El sistema operativo puede entonces recorrer la FAT, buscando el número de clúster de cada parte sucesiva del archivo de disco como una cadena de clústeres hasta que se alcanza el final del archivo. Los subdirectorios se implementan como archivos especiales que contienen las entradas de directorio de sus respectivos archivos.

Cada entrada de la lista enlazada FAT es una cantidad fija de bits: 12, 16 o 32. El tamaño máximo de un archivo o una unidad de disco al que se puede acceder es el producto del número más grande que se puede almacenar en las entradas (menos algunos valores reservados para indicar espacio no asignado o el final de una lista) y el tamaño del clúster de discos. Incluso si solo se necesita un byte de almacenamiento para ampliar un archivo, se le debe asignar un clúster completo. Como resultado, una gran cantidad de archivos pequeños puede dar como resultado que se asignen clústeres que pueden contener principalmente datos "vacíos" para cumplir con el tamaño mínimo del clúster.

Originalmente diseñado como un sistema de archivos de 8 bits, el número máximo de clústeres debe aumentar a medida que aumenta la capacidad de la unidad de disco, por lo que el número de bits utilizados para identificar cada clúster ha aumentado. Las variantes principales sucesivas del formato FAT reciben su nombre según el número de bits de los elementos de la tabla: 12 (FAT12), 16 (FAT16) y 32 (FAT32).

Variantes

Existen varias variantes del sistema de archivos FAT (por ejemplo, FAT12, FAT16 y FAT32). FAT16 hace referencia tanto al grupo original de sistemas de archivos FAT con entradas de clúster de 16 bits de ancho como a variantes posteriores. "VFAT" es una extensión opcional para nombres de archivo largos, que puede funcionar sobre cualquier sistema de archivos FAT. Los volúmenes que utilizan nombres de archivo largos VFAT también pueden ser leídos por sistemas operativos que no admitan la extensión VFAT.

FAT original de 8 bits

El sistema de archivos FAT original (o estructura FAT , como se llamó inicialmente) fue diseñado e implementado por Marc McDonald , [14] basándose en una serie de discusiones entre McDonald y Bill Gates . [14] Fue introducido con elementos de tabla de 8 bits [12] [13] [14] (y números de clúster de datos válidos hasta 0xBF[12] [13] ) en un precursor del Standalone Disk BASIC-80 de Microsoft para un sucesor basado en 8080 [nb 2] del terminal de entrada de datos NCR 7200 modelo VI , equipado con disquetes de 8 pulgadas (200 mm), en 1977 [15] o 1978. [nb 2] En 1978, Standalone Disk BASIC-80 fue portado al 8086 usando un emulador en un DEC PDP-10 , [16] ya que no había sistemas 8086 reales disponibles en ese momento. El sistema de archivos FAT también se utilizó en MDOS/MIDAS de Microsoft , [14] un sistema operativo para plataformas 8080/Z80 escrito por McDonald desde 1979. La versión Standalone Disk BASIC admitía tres FAT, [12] [13] [17] mientras que esto era un parámetro para MIDAS. Según se informa, MIDAS también estaba preparado para admitir variantes FAT de 10 bits, 12 bits y 16 bits. Mientras que el tamaño de las entradas de directorio era de 16 bytes en Standalone Disk BASIC , [12] [13] MIDAS ocupaba en cambio 32 bytes por entrada.

Tim Paterson de Seattle Computer Products (SCP) conoció por primera vez la estructura FAT de Microsoft cuando ayudó a Bob O'Rear a adaptar el puerto del emulador Standalone Disk BASIC-86 al prototipo de placa CPU S-100 bus 8086 de SCP durante una semana como invitado en Microsoft en mayo de 1979. [16] El producto final se mostró en el stand de Lifeboat Associates en la Conferencia Nacional de Computación en Nueva York [16] del 4 al 7 de junio de 1979, donde Paterson aprendió sobre la implementación FAT más sofisticada en MDOS/MIDAS [14] y McDonald habló con él sobre el diseño del sistema de archivos. [15]

FAT12

Entre abril y agosto de 1980, mientras tomaba prestado el concepto FAT para el sistema operativo 8086 de SCP, QDOS 0.10 , [16] Tim Paterson amplió los elementos de la tabla a 12 bits , [18] redujo el número de FAT a dos, redefinió la semántica de algunos de los valores de clúster reservados y modificó el diseño del disco, de modo que el directorio raíz ahora se encontraba entre la FAT y el área de datos para su implementación de FAT12 . Paterson también aumentó el límite de longitud de nombre de archivo de nueve caracteres (6.3) [12] [13] a once caracteres para admitir nombres de archivo 8.3 de estilo CP/M y bloques de control de archivos . El formato utilizado en el precursor del sistema de archivos de 8 bits de Microsoft Standalone Disk BASIC no era compatible con QDOS. Para agosto de 1980, QDOS había sido renombrado como 86-DOS . [19] A partir de 86-DOS 0.42 , el tamaño y el diseño de las entradas de directorio se cambiaron de 16 bytes a 32 bytes [20] para agregar una marca de fecha de archivo [20] y aumentar el límite teórico de tamaño de archivo más allá del límite anterior de 16 MB. [20] 86-DOS 1.00 estuvo disponible a principios de 1981. Más tarde en 1981, 86-DOS evolucionó a MS-DOS de Microsoft e IBM PC DOS . [14] [18] [21] La capacidad de leer volúmenes previamente formateados con entradas de directorio de 16 bytes [20] se eliminó con MS-DOS 1.20 .

FAT12 utilizaba entradas de 12 bits para las direcciones de clúster; algunos valores se reservaban para marcar el final de una cadena de clústeres, para marcar áreas inutilizables del disco o para otros fines, por lo que el número máximo de clústeres se limitaba a 4078. [22] [23] Para conservar espacio en disco, dos entradas FAT de 12 bits utilizaban tres bytes consecutivos de 8 bits en el disco, lo que requería manipulación para descomprimir los valores de 12 bits. Esto era suficiente para las unidades de disquete originales y los discos duros pequeños de hasta 32 megabytes. La versión FAT16B disponible con DOS 3.31 admitía números de sector de 32 bits y, por lo tanto, aumentaba el límite de tamaño del volumen.

Todas las estructuras de control encajaban dentro de la primera pista, para evitar el movimiento del cabezal durante las operaciones de lectura y escritura. Cualquier sector defectuoso en el área de las estructuras de control haría que el disco quedara inutilizable. La herramienta de formateo de DOS rechazaba por completo dichos discos. Los sectores defectuosos solo se permitían en el área de datos de archivo. Los clústeres que contenían sectores defectuosos se marcaban como inutilizables con el valor reservado 0xFF7en la FAT.

Mientras que el 86-DOS admitía tres formatos de disco (250,25 KB, 616 KB y 1232 KB, con identificadores FAT 0xFF y 0xFE) en unidades de disquete de 8 pulgadas (200 mm), IBM PC DOS 1.0 , lanzado con el IBM Personal Computer original en 1981, solo admitía un formato de disquete de 8 sectores con una capacidad formateada de 160 KB (identificador FAT 0xFE) para unidades de disquete de 5,25 pulgadas de una sola cara, y PC DOS 1.1 agregó soporte para un formato de doble cara0xFF con 320 KB (identificador FAT ). PC DOS 2.0 introdujo soporte para formatos de disquete de 9 sectores con 180 KB (identificador FAT 0xFC) y 360 KB (identificador FAT 0xFD).

Las entradas de directorio de 86-DOS 1.00 y PC DOS 1.0 incluían solo una fecha, la fecha de la última modificación. PC DOS 1.1 agregó la hora de la última modificación. Los atributos de archivo de PC DOS 1.x incluían un bit oculto y un bit de sistema, y ​​los seis bits restantes no estaban definidos. En ese momento, DOS no admitía subdirectorios, pero por lo general solo había unas pocas docenas de archivos en un disquete .

La PC XT fue la primera PC con un disco duro suministrado por IBM, y la PC DOS 2.0 admitía ese disco duro con FAT12 ( FAT ID 0xF8 ). La suposición fija de 8 sectores por clúster en los discos duros prácticamente limitaba el tamaño máximo de la partición a 16 MB para sectores de 512 bytes y clústeres de 4 KB.

El bloque de parámetros del BIOS ( BPB ) también se introdujo con PC DOS 2.0, y esta versión también agregó bits de solo lectura, archivo , etiqueta de volumen y atributo de directorio para subdirectorios jerárquicos. [24]

MS-DOS 3.0 introdujo soporte para disquetes de 5,25 pulgadas y 1,2 MB de alta densidad (descriptor de medio 0xF9), que en particular tenían 15 sectores por pista, por lo tanto más espacio para las FAT.

FAT12 continúa utilizándose en todos los disquetes comunes , incluidos los discos de 1,44 MB y los posteriores de 2,88 MB (byte descriptor de medio 0xF0).

FAT16 inicial

En 1984, IBM lanzó el PC AT , que requería PC DOS 3.0 para acceder a su disco duro de 20 MB. [25] [26] Microsoft introdujo MS-DOS 3.0 en paralelo. Las direcciones de clúster se incrementaron a 16 bits, lo que permitió hasta 65.526 clústeres por volumen. Sin embargo, el número máximo posible de sectores y el tamaño máximo de partición de 32 MB no cambiaron. Aunque las direcciones de clúster eran de 16 bits, este formato no era lo que hoy se entiende comúnmente como FAT16 . Un tipo de partición 0x04 indica esta forma de FAT16 con menos de 65.536 sectores (menos de 32 MB para un tamaño de sector de 512). El beneficio de FAT16 fue el uso de clústeres más pequeños, lo que hizo que el uso del disco fuera más eficiente, particularmente para grandes cantidades de archivos de solo unos pocos cientos de bytes de tamaño.

Como MS-DOS 3.0 formateaba todas las particiones de 16 MB a 32 MB en formato FAT16, un disco duro de 20 MB formateado bajo MS-DOS 3.0 no era accesible para MS-DOS 2.0. [27] MS-DOS 3.0 a MS-DOS 3.30 todavía podía acceder a particiones FAT12 de menos de 15 MB, pero requería que todas las particiones de 16 MB a 32 MB fueran FAT16, y por lo tanto no podía acceder a particiones MS-DOS 2.0 en este rango de tamaño. MS-DOS 3.31 y posteriores podían acceder nuevamente a particiones FAT12 de 16 MB a 32 MB.

FAT sectorizada lógica

Las implementaciones de FAT12 y FAT16 para MS-DOS y PC DOS no podían acceder a particiones de disco de más de 32 megabytes. Varios fabricantes desarrollaron sus propias variantes de FAT dentro de sus versiones OEM de MS-DOS. [28]

Algunos proveedores ( AST y NEC [28] ) admitieron ocho entradas de partición primaria en lugar de las cuatro estándar en su Registro de arranque maestro ( MBR ) extendido personalizado, y adaptaron MS-DOS para utilizar más de una única partición primaria.

Otros proveedores solucionaron los límites de tamaño de volumen impuestos por las entradas de sectores de 16 bits aumentando el tamaño aparente de los sectores en los que operaba el sistema de archivos. Estos sectores lógicos eran más grandes (hasta 8192 bytes) que el tamaño del sector físico (aún 512 bytes) en el disco. El BIOS DOS o BIOS del sistema combinaría entonces múltiples sectores físicos en sectores lógicos para que el sistema de archivos pudiera trabajar con ellos.

Estos cambios fueron transparentes para la implementación del sistema de archivos en el núcleo DOS. El BIOS DOS subyacente tradujo estos sectores lógicos en sectores físicos según la información de partición y la geometría física de la unidad.

El inconveniente de este enfoque fue el aumento de la memoria utilizada para el almacenamiento en búfer de sectores y el desbloqueo. Dado que las versiones anteriores de DOS no podían utilizar sectores lógicos grandes, los OEM introdujeron nuevos identificadores de partición para sus variantes FAT con el fin de ocultarlos de los problemas estándar de MS-DOS y PC DOS. Los identificadores de partición conocidos para FAT con sectores lógicos incluyen: 0x08( Commodore MS-DOS 3.x), 0x11( Leading Edge MS-DOS 3.x), 0x14(AST MS-DOS 3.x), 0x24(NEC MS-DOS 3.30 [28] ), 0x56( AT&T MS-DOS 3.x), 0xE5( Tandy MS-DOS), 0xF2( Sperry IT MS-DOS 3.x, Unisys MS-DOS 3.3 - también utilizado por Digital Research DOS Plus 2.1). [29] También se sabe que las versiones OEM como Toshiba MS-DOS, Wyse MS-DOS 3.2 y 3.3, [30] así como Zenith MS-DOS han utilizado sectores lógicos. [31]

Si bien no son estándar ni óptimas, estas variantes de FAT son perfectamente válidas de acuerdo con las especificaciones del sistema de archivos en sí. [ cita requerida ] Por lo tanto, incluso si los problemas predeterminados de MS-DOS y PC DOS no pudieran resolverlos, la mayoría de estas variantes FAT12 y FAT16 específicas del proveedor pueden montarse mediante implementaciones de sistemas de archivos más flexibles en sistemas operativos como DR-DOS, simplemente cambiando el ID de la partición a uno de los tipos reconocidos. [nb 3] Además, si ya no necesitan ser reconocidas por sus sistemas operativos originales, las particiones existentes se pueden "convertir" en volúmenes FAT12 y FAT16 más compatibles con las versiones de MS-DOS/PC DOS 4.0–6.3, que no admiten tamaños de sector diferentes de 512 bytes, [32] cambiando a un BPB con entrada de 32 bits para el número de sectores, como se introdujo desde DOS 3.31 (ver FAT16B a continuación), manteniendo el tamaño del clúster y reduciendo el tamaño del sector lógico en el BPB a 512 bytes, mientras que al mismo tiempo se aumentan los recuentos de sectores lógicos por clúster, sectores lógicos reservados, sectores lógicos totales y sectores lógicos por FAT por el mismo factor.

Un desarrollo paralelo en MS-DOS / PC DOS que permitió un aumento en el tamaño máximo posible de FAT fue la introducción de múltiples particiones FAT en un disco duro. Para permitir el uso de más particiones FAT de manera compatible, se introdujo un nuevo tipo de partición en PC DOS 3.2 (1986), la partición extendida (EBR), [14] que es un contenedor para una partición adicional llamada unidad lógica . Desde PC DOS 3.3 (abril de 1987), existe otra partición extendida opcional que contiene la siguiente unidad lógica , y así sucesivamente. El MBR de un disco duro puede definir hasta cuatro particiones primarias, o una partición extendida además de hasta tres particiones primarias.

FAT16 final

En noviembre de 1987, Compaq Personal Computer DOS 3.31 (una versión OEM modificada de MS-DOS 3.3 lanzada por Compaq con sus máquinas) introdujo lo que hoy se conoce simplemente como el formato FAT16 , con la expansión del conteo de sectores de disco de 16 bits a 32 bits en el BPB. Aunque los cambios en el disco fueron menores, todo el controlador de disco DOS tuvo que convertirse para usar números de sector de 32 bits, una tarea complicada por el hecho de que estaba escrito en lenguaje ensamblador de 16 bits . El resultado inicialmente se llamó DOS 3.31 Large File System . La herramienta de MicrosoftDSKPROBE se refiere al tipo 0x06como BigFAT , [34] mientras que algunas versiones anteriores de FDISKlo describían como BIGDOS . Técnicamente, se conoce como FAT16B .

Como las versiones anteriores de DOS no estaban diseñadas para manejar más de 65.535 sectores, fue necesario introducir un nuevo tipo de partición para este formato con el fin de ocultarlo de las versiones anteriores a la 3.31 de DOS. La forma original de FAT16 (con menos de 65.536 sectores) tenía un tipo de partición 0x04 . Para manejar discos más grandes que esto, 0x06se introdujo el tipo para indicar 65.536 o más sectores. Además de esto, el controlador de disco también se amplió para manejar más de 65.535 sectores. La única otra diferencia entre el FAT16 original y el nuevo formato FAT16B es el uso de un formato BPB más nuevo con entrada de sector de 32 bits. Por lo tanto, los sistemas operativos más nuevos que admiten el formato FAT16B también pueden manejar el formato FAT16 original sin ningún cambio necesario.

Si es necesario crear particiones con herramientas modernas para versiones anteriores a DOS 3.31, los únicos criterios teóricamente necesarios son un número de sectores inferior a 65536 y el uso del antiguo identificador de partición ( 0x04). Sin embargo, en la práctica, el tipo 0x01y 0x04las particiones primarias no deberían estar ubicadas físicamente fuera de los primeros 32 MB del disco, debido a otras restricciones en MS-DOS 2.x, que no podían manejarlas de otra manera.

En 1988, la mejora de FAT16B se hizo más disponible a través de DR DOS  3.31, PC DOS 4.0, OS/2  1.1 y MS-DOS 4.0. El límite en el tamaño de la partición fue dictado por el recuento de 8 bits con signo de sectores por clúster, que originalmente tenía un valor máximo de potencia de dos de 64. Con el tamaño de sector de disco duro estándar de 512 bytes, esto da un tamaño de clúster máximo de 32 KB, fijando así el límite "definitivo" para el tamaño de partición FAT16 en 2 GB para el tamaño de sector 512. En los medios magneto-ópticos , que pueden tener sectores de 1 o 2 KB en lugar de 0,5 KB, este límite de tamaño es proporcionalmente mayor.

Mucho más tarde, Windows NT aumentó el tamaño máximo del clúster a 64 KB, al considerar el recuento de sectores por clúster como no firmado. Sin embargo, el formato resultante no era compatible con ninguna otra implementación de FAT de la época y generaba una mayor fragmentación interna . Windows 98 , SE y ME también admitían la lectura y escritura de esta variante, pero sus utilidades de disco no funcionaban con ella y algunos servicios FCB no están disponibles para dichos volúmenes. Esto contribuye a una situación de compatibilidad confusa.

Antes de 1995, las versiones de DOS accedían al disco únicamente a través del direccionamiento CHS . Cuando Windows 95 (MS-DOS 7.0) introdujo el acceso al disco LBA , las particiones podían empezar a ubicarse físicamente fuera de los primeros 8 GB de este disco y, por lo tanto, fuera del alcance del esquema de direccionamiento CHS tradicional. Por lo tanto, las particiones ubicadas parcial o totalmente más allá de la barrera CHS tenían que ocultarse de los sistemas operativos no habilitados para LBA utilizando el nuevo tipo de partición 0x0Een la tabla de particiones. Las particiones FAT16 que utilizan este tipo de partición también se denominan FAT16X . [35] La única diferencia, en comparación con las particiones FAT16 anteriores, es el hecho de que algunas entradas de geometría relacionadas con CHS en el registro BPB, a saber, el número de sectores por pista y el número de cabezales, pueden no contener valores o contener valores engañosos y no deben usarse.

La cantidad de entradas de directorio raíz disponibles para FAT12 y FAT16 se determina cuando se formatea el volumen y se almacena en un campo de 16 bits. Para una cantidad RDEy un tamaño de sector determinados SS, la cantidad RDSde sectores de directorio raíz es RDS = ceil((RDE × 32) / SS)y RDEnormalmente se elige para llenar estos sectores, es decir, RDE × 32 = RDS × SS. Los medios FAT12 y FAT16 suelen utilizar 512 entradas de directorio raíz en medios que no son disquetes. Algunas herramientas de terceros, como mkdosfs, permiten al usuario configurar este parámetro. [36]

FAT32

Para superar el límite de tamaño de volumen de FAT16, y al mismo tiempo permitir que el código de modo real de DOS manejara el formato, Microsoft diseñó una nueva versión del sistema de archivos, FAT32 , que admitía un mayor número de clústeres posibles, pero podía reutilizar la mayor parte del código existente, de modo que la huella de memoria convencional se incrementó en menos de 5 KB en DOS. [37] Los valores de clúster se representan mediante números de 32 bits , de los cuales 28 bits se utilizan para almacenar el número de clúster.

Tamaños máximos

El sector de arranque FAT32 utiliza un campo de 32 bits para el recuento de sectores, lo que limita el tamaño máximo del volumen FAT32 a 2  terabytes con un tamaño de sector de 512  bytes . El tamaño máximo del volumen FAT32 es de 16 TB con un tamaño de sector de 4096 bytes. [38] [39] La herramienta de formato de disco de shell de Windows incorporada en Windows NT solo admite arbitrariamente tamaños de volumen de hasta 32 GB, [nb 4] pero Windows admite la lectura y escritura en volúmenes FAT32 más grandes preexistentes, y estos se pueden crear con el símbolo del sistema , PowerShell o herramientas de terceros, [41] o formateando el volumen en un sistema que no sea Windows o en un sistema Windows 9x con soporte FAT32 y luego transfiriéndolo al sistema Windows NT. Después de 30 años, Microsoft aumentó FAT32 de 32 GB a 2 TB. [42]

El tamaño máximo posible de un archivo en un volumen FAT32 es de 4  GB menos 1 byte, o 4.294.967.295 (2 32  − 1) bytes. Este límite es consecuencia de la entrada de longitud de archivo de 4 bytes en la tabla de directorios y también afectaría a particiones FAT16 relativamente grandes habilitadas por un tamaño de sector suficiente.

Al igual que FAT12 y FAT16, FAT32 no incluye soporte integrado directo para nombres de archivos largos, pero los volúmenes FAT32 pueden contener opcionalmente nombres de archivos largos VFAT además de nombres de archivos cortos exactamente de la misma manera en que los nombres de archivos largos VFAT se han implementado opcionalmente para los volúmenes FAT12 y FAT16.

Desarrollo

FAT32 se introdujo con Windows 95 OSR2 (MS-DOS 7.1) en 1996, aunque era necesario formatear para poder usarlo y DriveSpace 3 (la versión que venía con Windows 95 OSR2 y Windows 98) nunca lo admitió. Windows 98 introdujo una utilidad para convertir discos duros existentes de FAT16 a FAT32 sin pérdida de datos.

En la línea Windows NT, el soporte nativo para FAT32 llegó en Windows 2000. Winternals , una empresa que posteriormente fue adquirida por Microsoft, puso a disposición un controlador FAT32 gratuito para Windows NT 4.0 . Ya no es posible adquirir el controlador de fuentes oficiales. Desde 1998, el controlador DRFAT32 de Caldera, que se carga dinámicamente, se puede utilizar para habilitar el soporte FAT32 en DR-DOS. [43] [44] La primera versión de DR-DOS que admitió de forma nativa el acceso FAT32 y LBA fue OEM DR-DOS 7.04 en 1999. Ese mismo año, IMS introdujo el soporte nativo de FAT32 con REAL/32 7.90, y el sistema operativo IBM 4690 añadió soporte de FAT32 con la versión 2. [45] Ahead Software proporcionó otro controlador FAT32.EXE cargable dinámicamente para DR-DOS 7.03 con Nero Burning ROM en 2004. IBM introdujo el soporte nativo de FAT32 con OEM PC DOS 7.1 en 1999.

Se han reservado dos tipos de particiones para las particiones FAT32, 0x0By 0x0C. El último tipo también se denomina FAT32X para indicar el uso del acceso al disco LBA en lugar de CHS. [43] [46] [47] [48] [49] En dichas particiones, las entradas de geometría relacionadas con CHS, es decir, las direcciones de sector CHS en el MBR, así como el número de sectores por pista y el número de cabezales en el registro EBPB, pueden no contener valores o contener valores engañosos y no deben usarse. [50] [48] [49]

Extensiones

Atributos extendidos

OS/2 depende en gran medida de los atributos extendidos (EA) y los almacena en un archivo oculto llamado " EA␠DATA.␠SF" en el directorio raíz del volumen FAT12 o FAT16. Este archivo está indexado por dos bytes previamente reservados en la entrada de directorio del archivo (o directorio) en el desplazamiento 0x14. [51] En el formato FAT32, estos bytes contienen los 16 bits superiores del número de clúster inicial del archivo o directorio, lo que hace imposible almacenar EA de OS/2 en FAT32 utilizando este método.

Sin embargo, el controlador de sistema de archivos instalable (IFS) FAT32 de terceros FAT32.IFS versión 0.70 y superior de Henk Kelder & Netlabs para OS/2, eComStation y ArcaOS almacena atributos extendidos en archivos adicionales con nombres de archivo que tienen la cadena " ␠EA.␠SF" adjunta al nombre de archivo regular del archivo al que pertenecen. El controlador también utiliza el byte en el desplazamiento 0x0Cen las entradas de directorio para almacenar un byte de marca especial que indica la presencia de atributos extendidos para ayudar a acelerar las cosas. [52] [53] (Esta extensión es críticamente incompatible con el método FAT32+ para almacenar archivos mayores a 4 GB menos 1 en volúmenes FAT32). [33]

Se puede acceder a los atributos extendidos a través del escritorio Workplace Shell , mediante scripts REXX y muchas utilidades de línea de comandos y GUI del sistema (como 4OS2 ). [54]

Para adaptarse a su subsistema OS/2 , Windows NT admite el manejo de atributos extendidos en HPFS , NTFS , FAT12 y FAT16. Almacena EA en FAT12, FAT16 y HPFS utilizando exactamente el mismo esquema que OS/2, pero no admite ningún otro tipo de ADS como los que se guardan en volúmenes NTFS. Al intentar copiar un archivo con cualquier ADS que no sea un EA desde un volumen NTFS a un volumen FAT o HPFS, aparece un mensaje de advertencia con los nombres de los ADS que se perderán. No admite el método FAT32.IFS para almacenar EA en volúmenes FAT32.

Windows 2000 en adelante actúa exactamente como Windows NT, excepto que ignora los EA al copiar a FAT32 sin ninguna advertencia (pero muestra la advertencia para otros ADS, como "Macintosh Finder Info" y "Macintosh Resource Fork").

CygwinEA␠DATA.␠SF también utiliza archivos " ".

Nombres de archivos largos

Uno de los objetivos de los diseñadores de Windows 95 en cuanto a la experiencia del usuario era la capacidad de utilizar nombres de archivo largos (LFN, de hasta 255 unidades de código UTF-16 ), [nb 1] además de los nombres de archivo clásicos de 8.3 (SFN). Para lograr compatibilidad con versiones anteriores y posteriores , los LFN se implementaron como una extensión opcional sobre las estructuras de sistema de archivos FAT existentes, utilizando una solución alternativa en la forma en que se disponen las entradas de directorio.

Este método transparente para almacenar nombres de archivos largos en los sistemas de archivos FAT existentes sin alterar sus estructuras de datos se conoce habitualmente como VFAT (por "Virtual FAT") , en honor al controlador de dispositivo virtual de Windows 95. [nb 5]

Los sistemas operativos no compatibles con VFAT aún pueden acceder a los archivos bajo su alias de nombre de archivo corto sin restricciones; sin embargo, los nombres de archivo largos asociados pueden perderse cuando los archivos con nombres de archivo largos se copian en sistemas operativos que no admiten VFAT.

En Windows NT, el soporte para nombres de archivo largos VFAT comenzó con la versión 3.5 .

Linux ofrece un controlador de sistema de archivos VFAT para trabajar con volúmenes FAT con nombres de archivo largos VFAT. Durante algún tiempo, estuvo disponible un controlador UVFAT para brindar compatibilidad combinada con permisos de estilo UMSDOS con nombres de archivo largos VFAT.

OS/2 agregó compatibilidad con nombres de archivo largos a FAT mediante atributos extendidos (EA) antes de la introducción de VFAT. Por lo tanto, los nombres de archivo largos de VFAT son invisibles para OS/2 y los nombres de archivo largos de EA son invisibles para Windows; por lo tanto, los usuarios experimentados de ambos sistemas operativos tendrían que cambiar el nombre de los archivos manualmente.

Human68K admitía hasta 18,3 nombres de archivos y caracteres Kanji ( Shift JIS ) en una variante del sistema de archivos FAT propietario.

Para soportar aplicaciones Java , la versión 2 del sistema operativo IBM 4690 basado en FlexOS introdujo su propia arquitectura de sistema de archivos virtual (VFS) para almacenar nombres de archivos largos en el sistema de archivos FAT de manera compatible con versiones anteriores. Si está habilitado, los nombres de archivos virtuales (VFN) están disponibles bajo letras de unidad lógicas separadas, mientras que los nombres de archivos reales (RFN) permanecen disponibles bajo las letras de unidad originales. [55]

Bifurcaciones y flujos de datos alternativos

El sistema de archivos FAT en sí no está diseñado para soportar flujos de datos alternativos (ADS), pero algunos sistemas operativos que dependen en gran medida de ellos han ideado varios métodos para manejarlos en volúmenes FAT. Dichos métodos almacenan la información adicional en archivos y directorios adicionales ( Mac OS y macOS clásicos ) o dan una nueva semántica a campos no utilizados anteriormente de las estructuras de datos en disco FAT ( OS/2 y Windows NT ).

Mac OS que utiliza PC Exchange almacena sus distintas fechas, atributos de archivo y nombres de archivo largos en un archivo oculto llamado " FINDER.DAT", y los forks de recursos (un ADS común de Mac OS) en un subdirectorio llamado " RESOURCE.FRK", en cada directorio donde se utilizan. A partir de PC Exchange 2.1, almacenan los nombres de archivo largos de Mac OS como nombres de archivo largos FAT estándar y convierten los nombres de archivo FAT de más de 31 caracteres en nombres de archivo únicos de 31 caracteres, que luego pueden hacerse visibles para las aplicaciones de Macintosh.

macOS almacena bifurcaciones de recursos y metadatos (atributos de archivo, otros ADS) usando el formato AppleDouble en un archivo oculto con un nombre construido a partir del nombre del archivo del propietario prefijado con " ._", y Finder almacena algunos metadatos de carpetas y archivos en un archivo oculto llamado " .DS_Store" (pero tenga en cuenta que Finder usa .DS_Storeincluso el sistema de archivos nativo de macOS, HFS+ ).

Permisos y nombres de archivos de UMSDOS

Las primeras distribuciones de Linux también admitían un formato conocido como UMSDOS , una variante de FAT con atributos de archivo Unix (como el nombre de archivo largo y los permisos de acceso) almacenados en un archivo separado llamado " --linux-.---". UMSDOS cayó en desuso después del lanzamiento de VFAT y no está habilitado de forma predeterminada en Linux desde la versión 2.5.7 en adelante. [56] Durante algún tiempo, Linux también proporcionó soporte combinado para permisos de estilo UMSDOS y nombres de archivo largos de VFAT a través de UVFAT .

GRASA+

En 2007, el borrador abierto FAT+ propuso cómo almacenar archivos más grandes de hasta 256 GB menos 1 byte, o 274.877.906.943 (2 38  − 1) bytes, en volúmenes FAT32 ligeramente modificados y compatibles con versiones anteriores, [33] pero impone un riesgo de que las herramientas de disco o las implementaciones FAT32 que no conozcan esta extensión puedan truncar o eliminar archivos que excedan el límite de tamaño de archivo FAT32 normal. El soporte para FAT32+ y FAT16+ está limitado a algunas versiones de DR-DOS y no está disponible en los sistemas operativos principales. [57] (Esta extensión es críticamente incompatible con la /EASopción del método FAT32.IFS para almacenar atributos extendidos de OS/2 en volúmenes FAT32).

Derivados

Turbo GRASA

En su sistema de archivos NetWare ( NWFS ), Novell implementó una variante muy modificada de un sistema de archivos FAT para el sistema operativo NetWare . Para archivos más grandes, utilizó una función de rendimiento denominada Turbo FAT .

FATX

FATX es una familia de sistemas de archivos diseñados para los discos duros y tarjetas de memoria de la consola de videojuegos Xbox de Microsoft , [58] [59] introducidos en 2001.

Si bien se asemejan a las mismas ideas de diseño básicas que FAT16 y FAT32, las estructuras en disco FATX16 y FATX32 son simplificadas, pero fundamentalmente incompatibles con los sistemas de archivos FAT16 y FAT32 normales, lo que hace imposible que los controladores del sistema de archivos FAT normal monten dichos volúmenes.

El sector de superbloque no arrancable tiene un tamaño de 4 KB y contiene una estructura similar a la de un BPB de 18 bytes, completamente diferente de los BPB normales . Los clústeres suelen tener un tamaño de 16 KB y solo hay una copia del FAT en la Xbox. Las entradas de directorio tienen un tamaño de 64 bytes en lugar de los 32 bytes normales . Los archivos pueden tener nombres de archivo de hasta 42 caracteres utilizando el conjunto de caracteres OEM y tener un tamaño de hasta 4 GB menos 1 byte. Las marcas de tiempo en el disco contienen las fechas y horas de creación, modificación y acceso, pero difieren de FAT: en FAT, la época es 1980 ; en FATX, la época es 2000. En la Xbox 360 , la época es 1980. [60]

exFAT

exFAT es un sistema de archivos introducido con Windows Embedded CE 6.0 en noviembre de 2006 y llevado a la familia Windows NT con Vista Service Pack 1 y Windows XP Service Pack 3 (o instalación separada de Windows XP Update KB955704). Se basa libremente en la arquitectura de tabla de asignación de archivos, pero es incompatible, propietario y está protegido por patentes. [61]

exFAT está pensado para usarse en unidades flash y tarjetas de memoria como SDXC y Memory Stick XC , donde se utiliza FAT32. Los proveedores suelen formatear previamente las tarjetas SDXC con este formato. Su principal beneficio es que supera el límite de tamaño de archivo de 4 GB, ya que las referencias de tamaño de archivo se almacenan con ocho bytes en lugar de cuatro, lo que aumenta el límite a 2 64  − 1 bytes.

Las utilidades de formato de línea de comandos y GUI de Microsoft lo ofrecen como una alternativa a NTFS (y, para particiones más pequeñas, a FAT16B y FAT32). El tipo de partición MBR es (el mismo que se usa para IFS , HPFS y NTFS). La información de geometría lógica ubicada en el VBR se almacena en un formato que no se parece a ningún tipo de BPB.0x07

A principios de 2010, el sistema de archivos fue sometido a ingeniería inversa por el SANS Institute . [62] El 28 de agosto de 2019, Microsoft publicó la especificación técnica de exFAT para que pueda usarse en el kernel de Linux y otros sistemas operativos. [63]

Patentes

A mediados de los años 1990, Microsoft solicitó y obtuvo una serie de patentes para partes clave del sistema de archivos FAT. Las cuatro corresponden a extensiones de nombre de archivo largo para FAT que se vieron por primera vez en Windows 95 : patente estadounidense 5.579.517, [64] patente estadounidense 5.745.902, [65] patente estadounidense 5.758.352, [66] patente estadounidense 6.286.013 (todas vencidas desde 2013). [67]

El 3 de diciembre de 2003, Microsoft anunció [68] que ofrecería licencias para el uso de su especificación FAT y "propiedad intelectual asociada", a un costo de regalías de 0,25 dólares estadounidenses por unidad vendida, con una regalía máxima de 250.000 dólares estadounidenses por acuerdo de licencia. [69] Para este fin, Microsoft citó cuatro patentes sobre el sistema de archivos FAT como base de sus reclamos de propiedad intelectual.

En la especificación EFI FAT32, [9] Microsoft otorga específicamente una serie de derechos que muchos lectores han interpretado como permiso para que los proveedores de sistemas operativos implementen FAT. [70] Las patentes que no son de Microsoft y que afectan a FAT incluyen: la patente estadounidense 5.367.671, específica para los atributos de objeto extendidos de OS/2 (vencida en 2011). [71]

Desafíos y demandas judiciales

En 2004, la Public Patent Foundation (PUBPAT) presentó pruebas a la Oficina de Patentes y Marcas de los Estados Unidos (USPTO) cuestionando la validez de la patente estadounidense 5.579.517, [64] incluidas referencias a la técnica anterior de Xerox e IBM. [72] La USPTO abrió una investigación y concluyó rechazando todas las reivindicaciones de la patente. [73] Al año siguiente, la USPTO anunció además que, tras el proceso de reexaminación, afirmó el rechazo de la patente 517 y, además, encontró que la patente estadounidense 5.758.352 [66] era inválida debido a que la patente tenía cesionarios incorrectos.

Sin embargo, en 2006, la USPTO dictaminó que las características de la implementación del sistema FAT por parte de Microsoft eran "novedosas y no obvias", revirtiendo ambas decisiones anteriores y dejando las patentes válidas. [74]

En febrero de 2009, Microsoft presentó una demanda por infracción de patentes contra TomTom alegando que los productos del fabricante de dispositivos infringen patentes relacionadas con los nombres de archivo largos VFAT. Como algunos productos de TomTom se basan en Linux , esta fue la primera vez que Microsoft intentó hacer cumplir sus patentes contra la plataforma Linux. [75] La demanda se resolvió extrajudicialmente el mes siguiente con un acuerdo por el que se le daría a Microsoft acceso a cuatro de las patentes de TomTom, que TomTom dejaría de brindar soporte para los nombres de archivo largos VFAT de sus productos y que, a cambio, Microsoft no emprendería acciones legales contra TomTom durante los cinco años de duración del acuerdo de conciliación. [76]

En octubre de 2010, Microsoft presentó una demanda por infracción de patentes contra Motorola alegando que varias patentes (incluidas dos de las patentes VFAT) no tenían licencia para su uso en el sistema operativo Android . [77] También presentaron una queja ante la ITC . [78] Los desarrolladores de software de código abierto han diseñado métodos destinados a eludir las patentes de Microsoft. [79] [80]

En 2013, la patente EP0618540 “espacio de nombres común para nombres de archivos largos y cortos” (vencida en 2014 [81] ) fue invalidada en Alemania. [82] Tras retirarse el recurso, esta sentencia quedó firme el 28 de octubre de 2015. [83]

Véase también

Notas

  1. ^ abcdef Desde Windows 2000 , Microsoft Windows utiliza UTF-16 en lugar de UCS-2 para el "Unicode" interno . En UTF-16, un "carácter" (punto de código) puede ocupar dos unidades de código.
  2. ^ ab Las fuentes difieren en lo que respecta al primer terminal de entrada de datos NCR que integraba soporte para el sistema de archivos FAT. Según Stephen Manes y Paul Andrews, "Gates", el desarrollo fue para un NCR 8200 a finales de 1977, clasificado incorrectamente como una actualización basada en disquete del NCR 7200 , que había sido lanzado en 1975-11 ( modelo I y IV ) y estaba construido alrededor de un procesador Intel 8080 de 8 bits, pero estaba basado únicamente en casete. Sin embargo, el NCR Century 8200 era un miniordenador de 16 bits, al que se podían conectar varios terminales de entrada de datos. Marc McDonald incluso recordaba un NCR 8500 , un mainframe de la serie Criterion, que también puede descartarse. Anunciada en 1977-10 para su distribución en 1978-02, NCR también presentó la serie NCR I-8100 , que incluía los modelos NCR I-8130 y NCR I-8150 basados ​​en 8080 de sistemas para pequeñas empresas con disquetes duales. Otras fuentes indican que la propia serie NCR 7200 o la serie sucesora eran la plataforma de destino real. NCR Basic Plus 6 (basado en Microsoft Extended BASIC-80 ) estuvo disponible para el modelo VI NCR 7200 basado en casete en el primer trimestre de 1977. La serie NCR 7500 se lanzó en 1978, basada en un hardware 8080 similar, pero que ahora incluía los modelos NCR 7520 y 7530 con disquetes de 8 pulgadas. NCR Basic +6 , un precursor o adaptación de Standalone Disk BASIC-80, estaba disponible para ellos al menos desde 1979. Una fuente afirma que existía una variante especial del modelo NCR 7200 con dos disquetes de 8 pulgadas y Microsoft BASIC y que fue importada por NCR Sydney a Australia al menos.
  3. ^ DR-DOS puede arrancar desde medios sectorizados lógicos FAT12/FAT16 con tamaños de sector lógico de hasta 1024 bytes.
  4. ^ Esta fue una decisión tomada por el desarrollador en cuestión, quien asumió que su decisión sería revisada más adelante, algo que nunca sucedió. [40]
  5. ^ Un controlador llamado VFAT apareció antes de Windows 95 , en Windows para trabajo en grupo 3.11, pero esta versión anterior sólo se usaba para implementar el acceso a archivos de 32 bits y no admitía nombres de archivo largos .

Referencias

  1. ^ ab "File Systems". Microsoft TechNet . 2001. Archivado desde el original el 12 de agosto de 2011. Consultado el 31 de julio de 2011 .
  2. ^ abcde Microsoft (15 de noviembre de 2006). Archivo CONFIG.TXT del CD-ROM de Windows 95 Archivado el 31 de julio de 2020 en Wayback Machine Artículo 135481, Revisión: 1.1, recuperado el 22 de diciembre de 2011: "Para cada disco duro, especifica si se debe registrar la fecha en la que se accedió por última vez a los archivos. Las fechas de último acceso se desactivan para todas las unidades cuando el equipo se inicia en modo seguro y no se mantienen para los disquetes de forma predeterminada. Sintaxis: ACCDATE=drive1+|- [drive2+|-]..."
  3. ^ "Comparación de los sistemas de archivos NTFS y FAT". Microsoft. Archivado desde el original el 20 de junio de 2016. Consultado el 27 de enero de 2014 .
  4. ^ "Una breve introducción a los formatos FAT (File Allocation Table)" www.wizcode.com . Archivado desde el original el 25 de septiembre de 2015 . Consultado el 24 de septiembre de 2015 .
  5. ^ "Volumen y estructura de archivos de cartuchos de disco para intercambio de información". Norma ECMA-107 (2.ª ed., junio de 1995) . ECMA . 1995. Archivado desde el original el 7 de octubre de 2018. Consultado el 30 de julio de 2011 .
  6. ^ "Tecnología de la información – Estructura de volumen y archivo de cartuchos de disco para intercambio de información". ISO/IEC 9293:1994 . Catálogo ISO . 1994. Archivado desde el original el 2012-01-17 . Consultado el 2012-01-06 .
  7. ^ "Procesamiento de información – Estructura de volumen y archivo de cartuchos de disco flexibles para intercambio de información". ISO 9293:1987 . Catálogo ISO . 1987. Archivado desde el original el 2012-01-17 . Consultado el 2012-01-06 .
  8. ^ Reynolds, Aaron R .; Adler, Dennis R.; Lipe, Ralph A.; Pedrizetti, Ray D.; Parsons, Jeffrey T.; Arun, Rasipuram V. (26 de mayo de 1998). "Espacio de nombre común para nombres de archivo largos y cortos". Patente de EE. UU. 5758352. Consultado el 19 de enero de 2012 .[ enlace muerto ]
  9. ^ ab "Especificación del sistema de archivos FAT32 de Microsoft Extensible Firmware Initiative, FAT: descripción general del formato en disco". Microsoft . 2011-03-30. Archivado desde el original el 2021-07-23 . Consultado el 2018-12-21 .
  10. ^ "Cómo convertir una unidad de FAT32 a NTFS sin perder datos". WindowsLoop . 2021-07-11. Archivado desde el original el 2021-08-08 . Consultado el 2021-08-08 .
  11. ^ JEIDA/JEITA/CIPA (2010). "Estándar de la Asociación de productos de imagen y cámaras, CIPA DC-009-Translation-2010, Regla de diseño para el sistema de archivos de cámaras: DCF versión 2.0 (edición 2010)" (PDF) . Archivado desde el original (PDF) el 30 de septiembre de 2013. Consultado el 13 de abril de 2011 .
  12. ^ abcdefghij Xerox BASIC-80 – basic-80 reference manual (PDF) . 5.0. Microsoft , Xerox . 1979. 610P70641. Archivado (PDF) desde el original el 2016-03-04 . Consultado el 2014-06-02 .(NB. Para Microsoft (disco independiente/disco/extendido/8K) BASIC-80, (disco independiente/extendido) BASIC-86, compilador BASIC, versión 5.0)
  13. ^ abcdefghij Manual de referencia de MICROSOFT BASIC-80 versión 5.0 / Adenda del intérprete y compilador de BASIC-80 versión 5.1 (PDF) . 5.1. Microsoft . 1979. Archivado (PDF) desde el original el 2016-03-04 . Consultado el 2014-06-02 .(NB. Para Microsoft (disco independiente/disco/extendido/8K) BASIC-80, (disco independiente/extendido) BASIC-86, compilador BASIC, versión 5.1)
  14. ^ abcdefg Duncan, Ray; Bostwick, Steve; Burgoyne, Keith (1988). The MS-DOS Encyclopedia: versiones 1.0 a 3.2 (edición completamente reelaborada). Redmond, Washington, EE. UU.: Microsoft Press . ISBN 1-55615-049-0. LCCN  87-21452. OCLC  16581341.(xix+1570 páginas; 26 cm) (NB: Esta edición fue publicada en 1988 después de una extensa reelaboración de la primera edición retirada de 1986 por un equipo diferente de autores. [1] Archivado el 14 de octubre de 2018 en Wayback Machine .)
  15. ^ ab Manes, Stephen; Andrews, Paul (1993). Gates: Cómo el magnate de Microsoft reinventó una industria y se convirtió en el hombre más rico de Estados Unidos . Doubleday. ISBN 0-385-42075-7.
  16. ^ abcd Hunter, David (1983). «Tim Paterson: las raíces del DOS». Softalk para IBM Personal Computer (marzo de 1983). Archivado desde el original el 6 de septiembre de 2019. Consultado el 2 de junio de 2014 .
  17. ^ Schulman, Andrew; Brown, Ralf D .; Maxey, David; Michels, Raymond J.; Kyle, Jim (1994) [noviembre de 1993]. Undocumented DOS: A programmer's guide to reserved MS-DOS functions and data structures - extended to include MS-DOS 6, Novell DOS and Windows 3.1 (2.ª ed.). Reading, Massachusetts: Addison Wesley . pág. 11. ISBN. 0-201-63287-X.(xviii+856+vi páginas, disquete de 3,5") Erratas: [2][3]
  18. ^ ab Paterson, Tim (30 de septiembre de 2007). "Diseño de DOS". DosMan Drivel . Archivado desde el original el 20 de enero de 2013. Consultado el 4 de julio de 2011 .
  19. ^ Seattle Computer Products (agosto de 1980). "86-DOS - SISTEMA OPERATIVO 8086 - $95". Byte (Anuncio). Vol. 5, no. 8. BYTE Publications Inc. p. 173. ISSN  0360-5280. CODEN  BYTEDJ . Consultado el 18 de agosto de 2013 .[4] Archivado el 1 de febrero de 2020 en Wayback Machine . (NB: El anuncio de SCP ya llama al producto 86-DOS , pero no menciona un número de versión específico. Se sabe que la versión 0.3 ya se llamaba 86-DOS, por lo que el cambio de nombre debe haber tenido lugar para la versión 0.2 o inmediatamente después en agosto de 1980).
  20. ^ abcd Seattle Computer Products (1981). «Apéndice SCP 86-DOS 1.0» (PDF) . Archivado (PDF) desde el original el 2012-10-03 . Consultado el 2013-03-10 .
  21. ^ Wallace, James; Erickson, Jim; (1992); Disco duro: Bill Gates y la creación del imperio Microsoft , John Wiley & Sons, ISBN 0-471-56886-4 
  22. ^ Norton, Peter ; (1986); Dentro del IBM PC, revisado y ampliado , Brady, ISBN 0-89303-583-1 , pág. 157 
  23. ^ Jenkinson, Brian; Sammes, AJ (2000). Informática forense: guía para profesionales (serie para profesionales) . Berlín: Springer. pág. 157. ISBN 1-85233-299-9... sólo se pueden direccionar 2^12 (es decir, 4096) unidades de asignación o clústeres. De hecho, el número es menor que esto, ya que 000h y 001h no se utilizan y FF0h a FFFh se reservan o se utilizan para otros fines, lo que deja 002h a FEFh (2 a 4079) como el rango de clústeres posibles.
  24. ^ Paterson, Tim (1983). "An Inside Look at MS-DOS". Byte . Archivado desde el original el 20 de julio de 2011 . Consultado el 18 de julio de 2011 . La numeración comienza con 2; los dos primeros números, 0 y 1, están reservados.
  25. ^ IBM (1984). Carta de anuncio de IBM PC DOS 3.0 .
  26. ^ IBM (1985). Referencia técnica de IBM PC DOS . Primera edición, P/N 6024181, de febrero de 1985.
  27. ^ "Artículo de Microsoft Knowledge Base: "Resumen de particionamiento de MS-DOS"". Archivado desde el original el 2018-06-12 . Consultado el 2018-06-02 .
  28. ^ abc FYI – Instalación de DR DOS en particiones NEC DOS 3.3, Novell, 1993-01-05, FYI.M.1101, archivado desde el original el 2016-03-04 , consultado el 2014-08-12
  29. ^ Brouwer, Andries. «Lista de identificadores de particiones para PC». Archivado desde el original el 23 de abril de 2019. Consultado el 11 de enero de 2012 .
  30. ^ "Q78407: Las particiones Wyse DOS 3.3 son incompatibles con MS-DOS 5.x y 6.x". Microsoft. 17 de diciembre de 2000.[ enlace roto ] URL alternativa
  31. ^ "Q68176: Actualización de sistemas anteriores a la versión 4.0 con unidades lógicas > 32 MB". Microsoft. 17 de diciembre de 2000.[ enlace roto ] URL alternativa
  32. ^ Brouwer, Andries. "Propiedades de las tablas de particiones". Archivado desde el original el 23 de abril de 2019. Consultado el 11 de enero de 2012 .
  33. ^ abcd Kuhnt, Udo; Georgiev, Luchezar I.; Davis, Jeremy (2007). «FAT+ draft revision 2» (2.ª ed.). Archivado desde el original (FATPLUS.TXT) el 19 de febrero de 2015. Consultado el 5 de agosto de 2015 .
  34. ^ "Descripción general de Dskprobe: recuperación de datos". Microsoft TechNet . 28 de marzo de 2003. Archivado desde el original el 3 de julio de 2011. Consultado el 3 de agosto de 2011 .
  35. ^ "Errores al crear archivos o carpetas en el directorio raíz". Ayuda y soporte técnico de Microsoft. 16 de diciembre de 2004. Archivado desde el original el 31 de julio de 2020. Consultado el 14 de octubre de 2006 .
  36. ^ "Página de manual de mkdosfs". Archivado desde el original el 7 de octubre de 2006. Consultado el 21 de noviembre de 2006 .
  37. ^ "Kit de recursos de Windows 98 – Capítulo 10 – Discos y sistemas de archivos". Microsoft TechNet . 1998. Archivado desde el original el 2012-05-01 . Consultado el 2012-07-16 .
  38. ^ "Limitaciones del sistema de archivos FAT32". Microsoft Knowledge Base . 2007-03-26. Archivado desde el original el 2020-07-31 . Consultado el 2011-08-21 . Los clústeres no pueden tener 64 kilobytes ( KB ) o más
  39. ^ "Limitaciones del sistema de archivos FAT32 en Windows XP". Microsoft Knowledge Base . 2007-12-01. Archivado desde el original el 2020-07-31 . Consultado el 2011-08-21 .
  40. ^ "Explicado: El razonamiento detrás del límite de 32 GB del formato de Windows en FAT32".
  41. ^ Glenn, Walter (20 de julio de 2017). "Cómo formatear unidades USB de más de 32 GB con FAT32 en Windows". How-To Geek . Archivado desde el original el 26 de enero de 2021 . Consultado el 26 de enero de 2021 .
  42. ^ Roshan Ashraf Shaikh (16 de agosto de 2024). "La versión preliminar de Windows 11 muestra que el tamaño de la partición FAT32 aumentó a 2 TB después de 30 años". Tom's Hardware . Consultado el 23 de agosto de 2024 .
  43. ^ ab README.TXT – Disco de arranque Caldera DR-DOS FAT32 habilitado (DRFAT32) . Caldera, Inc. 24 de julio de 1998.
  44. ^ DRFAT32.SYS R1.00 INT 13h Interfaz para redirector FAT32 , Caldera, Inc., 11 de septiembre de 1998
  45. ^ IBM; Guía del usuario del sistema operativo 4690 versión 5.2 , documento IBM SC30-4134-01, 2008-01-10 ([5])
  46. ^ Karpowitz, Christina (23 de septiembre de 1998). "PowerQuest PartitionMagic 4.0 ya está disponible". PowerQuest . Archivado desde el original el 8 de febrero de 1999 . Consultado el 17 de abril de 2015 .
  47. ^ Livingston, Brian (28 de octubre de 1998). «FAT-32X puede funcionar de forma diferente a FAT-32 en discos duros de gran tamaño». InfoWorld . Vol. 20, núm. 43. Archivado desde el original el 12 de noviembre de 2015 . Consultado el 17 de abril de 2015 .
  48. ^ ab Duitz, Neal (17 de julio de 2001). "¿Alguien puede explicar FAT32X?". Preguntas frecuentes privadas de Win98, Programa de vista previa para consumidores de Windows 98. Archivado desde el original el 13 de junio de 2004. Consultado el 17 de abril de 2015 .
  49. ^ de Costanzo, Lance (14 de mayo de 1998). «FAT32X». Archivado desde el original el 21 de mayo de 1998. Consultado el 17 de abril de 2015 .
  50. ^ Steinberg, David (1998-05-01). "¿Qué es una partición FAT32X?". Consejo técnico/Preguntas frecuentes . Soporte técnico de PowerQuest . Archivado desde el original el 2015-09-21 . Consultado el 2015-04-17 .
  51. ^ Eager, Bob; Tavi Systems (28 de octubre de 2000); Implementación de atributos extendidos en el sistema de archivos FAT ([6] Archivado el 13 de junio de 2006 en Wayback Machine )
  52. ^ Kelder, Henk; (2003); FAT32.TXT para FAT32.IFS versión 0.9.13 . ([7] Archivado el 11 de mayo de 2013 en Wayback Machine ): "Este byte [...] no se modifica mientras se ejecuta Windows 95 ni tampoco [sic] por SCANDISK o DEFRAG. [...] Si otro programa establece el valor en 0x00para un archivo que tiene EAs , estos EAs ya no se encontrarán utilizando únicamente llamadas DosFindFirst/Next. Las otras llamadas de OS/2 para recuperar EAs (DosQueryPathInfo, DosQueryFileInfo y DosEnumAttribute) no dependen de este byte. También podría ocurrir lo opuesto. [...] En esta situación, solo se reducirá el rendimiento de los escaneos de directorios. Ambas situaciones [...] se corrigen con CHKDSK ".
  53. ^ Kelder, Henk; FAT32.TXT para FAT32.IFS versión 0.74 ( "@Macarlo, Inc". Archivado desde el original el 30 de marzo de 2012 . Consultado el 14 de enero de 2012 .). Comentario: Esta versión anterior del archivo README todavía analiza los valores antiguos 0xEAy 0xECmágicos.
  54. ^ Eager, Bob (28 de octubre de 2000). "Implementación de atributos extendidos en el sistema de archivos FAT". Páginas de Tavi OS/2 . Archivado desde el original el 13 de junio de 2006. Consultado el 14 de octubre de 2006 .
  55. ^ IBM; Guía de programación del sistema operativo 4690 versión 5.2 , documento IBM SC30-4137-01, 2007-12-06 ([8])
  56. ^ "Notas de la versión v2.5.7". Archivos del núcleo de Linux. 12 de marzo de 2002. Archivado desde el original el 15 de abril de 2006. Consultado el 14 de octubre de 2006 .
  57. ^ Kuhnt, Udo (21 de julio de 2011). "Proyecto de mejora de DR-DOS/OpenDOS". Archivado desde el original el 6 de julio de 2016. Consultado el 20 de abril de 2015 .
  58. ^ "Especificación FATX". Wiki de free60. Archivado desde el original el 26 de julio de 2018. Consultado el 16 de agosto de 2011 .
  59. ^ de Quincey, Andrew; Murray-Pitts, Lucien (2008-08-29). "Particionado de Xbox y detalles del sistema de archivos". 0.13. Proyecto Xbox-Linux. Archivado desde el original el 2010-06-17 . Consultado el 2014-05-25 .
  60. ^ Steil, Michael (2008-02-26) [2003]. «Diferencias entre Xbox FATX y MS-DOS FAT». Proyecto Xbox-Linux. Archivado desde el original el 2010-06-17 . Consultado el 2014-05-25 .
  61. ^ Microsoft. «Programa de licencias de propiedad intelectual del sistema de archivos exFAT». Microsoft . Archivado desde el original el 7 de mayo de 2013. Consultado el 23 de abril de 2013 .
  62. ^ "Ingeniería inversa del sistema de archivos exFAT de Microsoft | SANS Institute". Archivado desde el original el 21 de abril de 2021. Consultado el 20 de marzo de 2021 .
  63. ^ "¿exFAT en el núcleo Linux? ¡Sí!". Blog de código abierto de Microsoft . 28 de agosto de 2019. Archivado desde el original el 1 de septiembre de 2019. Consultado el 6 de octubre de 2019 .
  64. ^ ab US 5579517, Reynolds, Aaron R.; Adler, Dennis R. y Lipe, Ralph A. et al., "Espacio de nombres común para nombres de archivos largos y cortos", publicado en 1996 
  65. ^ US 5745902, Miller, Thomas J. y Kimura, Gary D., "Método y sistema para acceder a un archivo utilizando nombres de archivo que tienen diferentes formatos de nombre de archivo", publicado en 1998 
  66. ^ ab US 5758352, Reynolds, Aaron R.; Adler, Dennis R. y Lipe, Ralph A. et al., "Espacio de nombre común para nombres de archivo largos y cortos", publicado en 1998 
  67. ^ US 6286013, Reynolds, Aaron R.; Adler, Dennis R. y Lipe, Ralph A. et al., "Método y sistema para proporcionar un espacio de nombre común para nombres de archivos largos y cortos en un sistema operativo", publicado en 1996 
  68. ^ Microsoft.com Archivado el 22 de agosto de 2009 en Wayback Machine.
  69. ^ "Sistema de archivos FAT". Licencias de propiedad intelectual . Microsoft. Archivado desde el original el 21 de septiembre de 2016.
  70. ^ Garrett, Matthew (19 de enero de 2012). "EFI y Linux: el futuro ya está aquí y es terrible". linux.conf.au . YouTube. Archivado desde el original el 2021-11-02 . Consultado el 12 de enero de 2014 .
  71. ^ US 5367671, Feigenbaum, Barry A. y Miro, Felix, "Sistema para acceder a datos de atributos de objetos extendidos (EA) a través de enlaces de nombre de archivo o identificador de EA en tablas de rutas", publicado en 1994 
  72. ^ Ravicher, Daniel B. (15 de abril de 2004). "Solicitud de PUBPAT para la reexaminación de la patente FAT de Microsoft" (PDF) . Public Patent Foundation. Archivado (PDF) desde el original el 7 de junio de 2013. Consultado el 12 de enero de 2014 .
  73. ^ USPTO (30 de septiembre de 2004). "Acción de la Oficina de Patentes que rechaza la patente FAT de Microsoft" (PDF) . Fundación de Patentes Públicas. Archivado (PDF) desde el original el 26 de mayo de 2013. Consultado el 12 de enero de 2014 .
  74. ^ Broache, Anne (10 de enero de 2006). "Se confirma la patente del sistema de archivos de Microsoft". CNET News. Archivado desde el original el 3 de mayo de 2016. Consultado el 7 de abril de 2016 .
  75. ^ Paul, Ryan (25 de febrero de 2009). "La demanda de Microsoft por las patentes de FAT podría abrir la caja de Pandora del OSS". arstechnica.com. Archivado desde el original el 27 de febrero de 2009. Consultado el 28 de febrero de 2009 .
  76. ^ Fried, Ina (30 de marzo de 2009). "Microsoft y TomTom resuelven una disputa sobre patentes". cnet.com. Archivado desde el original el 5 de agosto de 2009. Consultado el 22 de agosto de 2009 .
  77. ^ "Demanda por patente de Microsoft Motorola". 1 de octubre de 2010. Archivado desde el original el 6 de octubre de 2010. Consultado el 2 de octubre de 2010 .
  78. ^ Protalinski, Emil (1 de octubre de 2010). "Microsoft demanda a Motorola por infracción de patentes de Android". arstechnica.com. Archivado desde el original el 2 de octubre de 2010. Consultado el 2 de octubre de 2010 .
  79. ^ Paul, Ryan (2009-07-02). "Nuevo parche para Linux podría eludir las patentes FAT de Microsoft". ArsTechnica.com. Archivado desde el original el 2013-11-01 . Consultado el 2013-10-30 .
  80. ^ Brown, Eric (2 de julio de 2009). "¿Puede el parche FAT evitar demandas contra Microsoft?". DesktopLinux.Com. Archivado desde el original el 31 de enero de 2013. Consultado el 23 de agosto de 2009 .
  81. ^ [9], "Espacio de nombres común para nombres de archivo largos y cortos", publicado el 31 de marzo de 1994 "EP0618540B1 - Espacio de nombres común para nombres de archivo largos y cortos - Google Patents". Archivado desde el original el 28 de marzo de 2020. Consultado el 7 de mayo de 2021 .  {{cite web}}: CS1 maint: bot: estado de URL original desconocido ( enlace )
  82. ^ Müller, Florian (5 de diciembre de 2013). «El Tribunal Federal de Patentes de Alemania invalida la patente FAT de Microsoft, el tribunal de apelaciones puede estar en desacuerdo». Patentes FOSS. Archivado desde el original el 4 de enero de 2014. Consultado el 12 de enero de 2014 .
  83. ^ Labesius, Stefan (28 de mayo de 2017). "Bundespatentgericht erklärt VFAT-Patent erneut für nichtig". ifrOSS. Archivado desde el original el 2019-08-02 . Consultado el 2 de agosto de 2019 .

Enlaces externos