Estructura del sistema de archivos gordo. Sistemas de archivos FAT, FAT32 y NTFS. Limitaciones del sistema de archivos FAT

El sistema de archivos FAT (File Allocation Table) recibe su nombre de una tabla simple que especifica:

Secciones direccionables directamente de un disco lógico, destinadas a colocar archivos o sus fragmentos en ellas;

Áreas libres de espacio en disco;

Áreas defectuosas del disco (estas áreas contienen áreas defectuosas y no garantizan que los datos se puedan leer y escribir sin errores).

En el sistema de archivos FAT, el espacio en disco de cualquier unidad lógica se divide en dos áreas (Fig. 6.1): área del sistema Y área de datos.

Arroz. 6.1. Estructura lógica del disco en FAT

El área del sistema de un disco lógico se crea e inicializa durante el formateo y posteriormente se actualiza cuando se trabaja con la estructura del archivo. El área de datos de un disco lógico contiene archivos normales y archivos de directorio; estos objetos forman una jerarquía subordinada al directorio raíz. Elemento de catálogo


Sistema de archivos FAT________________________________________________ 167

ga describe un objeto de archivo, que puede ser un archivo normal o un archivo de directorio. Al área de datos, a diferencia del área del sistema, se puede acceder a través de la interfaz de usuario del sistema operativo. El área del sistema consta de los siguientes componentes (ubicados uno tras otro en el espacio de direcciones lógicas):

Registro de arranque (BR);

Sectores Reservados (ResSec);

Tabla de asignación de archivos (FAT);

Directorio raíz (RDir).

Tabla de asignación de archivos

La tabla de asignación de archivos es una estructura de información muy importante. Podemos decir que es un mapa de direcciones del área de datos, que describe tanto el estado de cada sección del área de datos como su pertenencia a un objeto de archivo en particular.

Toda el área de datos se divide en los llamados racimos. Un clúster es uno o más sectores adyacentes en el espacio de direcciones del disco lógico (más precisamente, solo en el área de datos). Un clúster es la unidad direccionable más pequeña de memoria de disco asignada a un archivo (o directorio no raíz). Los clústeres se introducen para reducir la cantidad de unidades direccionables en el área de datos de un disco lógico.

Cada archivo ocupa un número entero de clústeres. En este caso, es posible que el último clúster no se utilice por completo, lo que, con un tamaño de clúster grande, puede provocar una pérdida notable de espacio en disco. En los disquetes, un clúster ocupa uno o dos sectores, y en los discos duros su tamaño depende del volumen de la partición (Tabla 6.1). En la tabla FAT, los grupos que pertenecen al mismo archivo (o archivo de directorio) están vinculados en cadenas. El sistema de archivos FAT 16 utiliza una palabra de 16 bits para especificar el número de clúster, por lo que puede tener hasta 2 10 = 65 536 clústeres (numerados del 0 al 65 535).

Tabla 6.1. Relación entre el tamaño de la partición y el tamaño del clúster en FAT16

Capacidad de partición, MB Número de sectores en el clúster Tamaño del clúster, KB

Tenga en cuenta que en Windows NT/2000/XP, las particiones del sistema de archivos FAT pueden tener un tamaño de hasta 4097 MB. En este caso, el cluster ya reunirá a 128 sectores.

El número de clúster siempre se refiere al área de datos del disco (el espacio reservado para archivos y subdirectorios). Los números del grupo corresponden a los elementos.


168__________________________________________________________ Capítulo 6, Sistemas de archivos

mentos de la tabla de asignación de archivos. El primer número de grupo válido siempre comienza con 2.

La división lógica del área de datos en grupos como una colección de sectores en lugar de utilizar sectores individuales tiene el siguiente significado:

En primer lugar, se reduce el tamaño de la propia tabla FAT; - se reduce la posible fragmentación de archivos;

El acceso a un archivo se acelera, ya que la longitud de las cadenas de fragmentos de espacio en disco asignados para él se reduce varias veces.

Sin embargo, un tamaño de clúster demasiado grande conduce a un uso ineficiente del área de datos, especialmente en el caso de una gran cantidad de archivos pequeños. Como acabamos de notar, en promedio aproximadamente la mitad del clúster se pierde por archivo. de la mesa 6.1 se deduce que con un tamaño de clúster de 32 sectores (el volumen de la partición es de 512 a 1023 MB), es decir, 16 KB, la pérdida promedio por archivo es de 8 KB, y con varios miles de archivos, las pérdidas pueden ser mayores. de 100 MB. Por lo tanto, en los sistemas de archivos modernos, los tamaños de los clústeres son limitados (normalmente de 512 bytes a 4 KB) o se ofrece la posibilidad de elegir el tamaño del clúster.

La idea de un sistema de archivos que utiliza una tabla de asignación de archivos se ilustra con bastante claridad en la figura. 6.2.

Arroz. 6.2. Ilustración del concepto básico de FAT.

La figura muestra que el archivo MYFILE.TXT se encuentra a partir del octavo grupo. En total, el archivo MYFILE.TXT ocupa 12 grupos. La cadena de conglomerados de nuestro ejemplo se puede escribir de la siguiente manera: 8, 9.0A, 0B, 15,16,17,19,

1 Por ejemplo, la cantidad de 10 000 a 15 000 archivos (o incluso más, especialmente cuando los archivos son pequeños) en una unidad lógica de 1000 MB es bastante común.


Sistema de archivos FAT169

1A, 1B, 1C, 1D. El grupo número 18 está marcado con un código especial F7 como incorrecto y no se puede utilizar para alojar datos. Al formatear, generalmente se verifica la superficie de un disco magnético y aquellos sectores en los que se produjeron errores durante la lectura de prueba se marcan en FAT como defectuosos. El grupo 1D está marcado con el código FF como el grupo final (último en la cadena) que pertenece a este archivo. Los grupos libres (desocupados) están marcados con el código 00; Cuando se asigna un nuevo grupo para escribir un archivo, se toma el primer grupo libre. Los posibles valores que se pueden asignar a los elementos de la tabla FAT se dan en la tabla. 6.2.

Tabla 6.2. Valores del elemento FAT

Descripción del valor

Clúster gratuito OOOOh

fffOh-fff6h Clúster reservado

fff7h Clúster incorrecto

fffSh-ffffhÚltimo grupo de la cadena.

0002h-ffefh Número del siguiente grupo de la cadena

Dado que los archivos en el disco se modifican (eliminan, mueven, aumentan o disminuyen), la regla mencionada de asignar el primer clúster libre para una nueva porción de datos conduce a fragmentación archivos, es decir, los datos de un archivo pueden no estar ubicados en grupos adyacentes, sino a veces en grupos muy distantes entre sí, formando cadenas complejas. Naturalmente, esto provoca una ralentización significativa en el trabajo con archivos.

Debido a que la tabla FAT se usa de manera muy intensiva durante el acceso al disco, generalmente se carga en la RAM (en búferes de E/S o caché) y permanece allí el mayor tiempo posible. Si la tabla es grande y el caché de archivos es relativamente pequeño, solo los fragmentos de la tabla a los que se accedió más recientemente se almacenan en la memoria.

Debido a la extrema importancia de la tabla FAT, generalmente se almacena en dos copias idénticas, la segunda de las cuales sigue inmediatamente a la primera. Las copias de FAT se actualizan simultáneamente, pero sólo se utiliza la primera copia. Si por alguna razón resulta destruido, se enviará una segunda copia. Por ejemplo, la utilidad ScanDisk para comprobar y restaurar la estructura de archivos del sistema operativo Windows 9x, cuando detecta una discrepancia entre las copias de seguridad primaria y FAT, ofrece restaurar la tabla principal utilizando los datos de la copia.

El directorio raíz se diferencia de un archivo de directorio normal en que, además de estar ubicado en una ubicación fija en el disco lógico, también tiene una cantidad fija de elementos. Para cada archivo y directorio, la información se almacena en el sistema de archivos de acuerdo con la estructura presentada en la Tabla. 6.3.

Para trabajar con datos en discos magnéticos en sistemas DOS que tienen el sistema de archivos FAT, es conveniente utilizar la conocida utilidad Disk Editor de


170___________________________________________ Capítulo 6. Sistemas de archivos

El kit de utilidades de Peter Norton. Tiene muchas ventajas. En primer lugar, es compacto, se coloca fácilmente en un disquete de sistema con MS DOS y está equipado con un sistema de sugerencias incorporado y la información de referencia necesaria. Al usarlo, puede guardar, modificar y restaurar el registro de inicio, restaurar la tabla FAT si está dañada y también realizar muchas otras operaciones. Las principales desventajas de este programa hoy en día son las limitaciones en el tamaño del disco y de las particiones y la falta de soporte para trabajar con sistemas de archivos tan comunes como FAT32 y NTFS. En su lugar, ahora se utiliza a menudo la utilidad Partition Magic, pero la mejor alternativa a este programa hoy en día puede considerarse la utilidad Disk Administrator de Acronis.

Tabla 6.3. Estructura de artículos del catálogo

Tamaño del campo de datos, bytes Contenido del campo

11 Nombre de archivo o directorio

1 atributos de archivo

1 campo de reserva

3 tiempo de creación

2 Fecha de creación

2 Fecha del último acceso

2 reservado

2 Hora de la última modificación

2 Fecha de la última modificación

2 Número de grupo inicial en FAT

4 Tamaño de archivo

Estructura del registro de arranque de DOS

El sector que contiene el cargador del sistema DOS es el primer sector de la unidad lógica C:. Recordemos que en un disquete el gestor de arranque del sistema se encuentra en el primer sector; su dirección física es 0-0-1. El registro de arranque consta, como ya sabemos, de dos partes: bloque de parámetros del disco(Bloque de parámetros de disco, DPB) y gestor de arranque(Arranque del sistema, SB). El bloque de opciones del disco sirve para identificar los formatos físicos y lógicos de un disco lógico, y el cargador de arranque del sistema juega un papel importante en el proceso de arranque de DOS. Esta estructura de información se muestra en la tabla. 6.4.

Los primeros dos bytes del registro de arranque están ocupados por una instrucción de salto incondicional (JMP) al programa SB. El tercer byte contiene el código 90H (NOP - sin operación). El siguiente es un identificador del sistema de ocho bytes, que incluye información sobre el desarrollador y la versión del sistema operativo. A esto le sigue un bloque de parámetros del disco, y luego viene el cargador de arranque del sistema.

Para trabajar con el registro de arranque de DOS, así como con otras estructuras de información de servicio, es conveniente utilizar el programa Disco ya mencionado.


Sistema de archivos FAT________________________________________________ 171

Editor del conjunto de utilidades de Peter Norton. Al usarlo, puede guardar, modificar y restaurar el registro de inicio, así como realizar muchas otras operaciones. Trabajar con esta utilidad se describe con suficiente detalle en.

Tabla 6.4. Estructura de registro de arranque para FAT16

Desplazamiento de campo, longitud de campo, contenido del campo de designación
byte de campo de bytes

UN (0) 3 JUMP 3EH Salto incondicional para empezar

gestor de arranque

OZN (3) 8 ID del sistema

OVN (11) 2 SectSize Tamaño del sector, bytes

ONU (13) 1 ClastSize Número de sectores en el cluster

0EN(14) 2 ResSecs Número de sectores reservados

10Н (16) 1 FATcnt Número de copias FAT

11Н (17) 2 RootSize Número máximo de elementos Rdir

13Н (19) 2 TotSecs Número de sectores en el disco lógico,

si su tamaño no supera los 32 MB; de lo contrario 0000Н

15Н (21) 1 Medio Descriptor de medio

16Н(22) 2 FATsize Tamaño FAT, sectores

18Н(24) 2 TrkSecs Número de sectores por pista

1АН(26) 2 HeadCnt Número de superficies de trabajo

1СН(28) 4 HidnSecs Número de sectores ocultos

20Н (32) 4 Número de sectores en el disco lógico,

si su tamaño supera los 32 MB

24Н (36) 1 Tipo de disco lógico (UN - flexible,

80N - duro)

25Н (37) 1 Reservado

26Н (38) 1 Marcador con código 29Н

27Н (39) 4 Número de serie del volumen 1

2ВН (43) 11 Etiqueta de volumen

36Н (54) 8 Nombre del sistema de archivos

Cargador de arranque ZEN (62)

1FEH (510) 2 Firma (palabra AA55N)

1 El volumen es un único espacio de direcciones lógicas. Un volumen puede ser un disco lógico normal o varios espacios en disco.

Este sistema de archivos es utilizado por sistemas operativos como Windows NT/2000/XP. Al instalar NTFS, el disco se divide en dos partes desiguales: la primera está reservada para la MFT (tabla maestra de archivos, una tabla de archivos común), llamada zona MFT y ocupa aproximadamente el 12% del tamaño total del disco, la segunda parte es ocupado por sus propios datos. También hay una tercera zona, pero hablaremos de eso más adelante. ¿Qué clase de bestia es esta MFT? Esta es la base de NTFS. Se encuentra, como se mencionó anteriormente, en la zona MFT, es decir, al comienzo del disco. Cada entrada en MFT corresponde a un archivo y ocupa aproximadamente 1 Kb. En esencia, este es un directorio de todos los archivos ubicados en el disco. Cabe señalar que cualquier elemento de datos en NTFS se considera un archivo, incluso MFT. Los primeros 16 archivos (metarchivos) en la zona MFT son una casta especial. Contienen información de servicio, tienen una posición fija y son inaccesibles incluso para el sistema operativo. Por cierto, el primero de estos 16 es el propio archivo MFT. Existe una copia de las tres primeras entradas. Recuerde, hablé de la tercera zona, así que ahí es donde se encuentra y su posición, por así decirlo, divide el disco por la mitad. ¿Por qué se hizo esto? Sí, para estar seguros, si se pierde información en el archivo MFT, siempre puedes restaurarla, pero eso es una cuestión de técnica, como dicen. Todos los demás archivos en la zona MFT se pueden ubicar arbitrariamente. Cabe señalar que, en teoría, no hay nada en la zona MFT excepto archivos de servicio. Pero hay casos en los que no queda espacio en la parte del disco reservada para el usuario: - (y luego se reduce la zona MFT. En consecuencia, aparece espacio en la segunda mitad del disco para grabar datos. Cuando es suficiente Se libera espacio libre en esta zona, MFT: la zona se expande nuevamente y aquí aparece el problema. Los archivos normales ingresan a la zona MFT y comienzan a fragmentarse con el símbolo de nombre $ (. para quienes se dedican a la programación, se conoce el icono).

  • MFT no es más que MFT en sí
  • MFTmirr: la misma copia que está en el medio del disco
  • LogFile es un archivo de registro
  • Arranque: como su nombre indica, Su Majestad es el sector de arranque.
  • Mapa de bits: mapa del espacio libre de la partición

Etcétera. La información sobre metarchivos se encuentra en el archivo MFT. ¿Difícil? Existe tal cosa. Pero toda esta basura se inventó para aumentar la confiabilidad de NTFS y está justificada. Sigamos adelante. NTFS prácticamente no tiene restricciones en cuanto al tamaño de los discos (al menos con las tecnologías actuales de producción de discos duros). El tamaño del cluster puede variar desde 512 b hasta 64 Kb, aunque su tamaño habitual es de 4 Kb.

Hablemos ahora del catálogo. Este es un metarchivo con la notación $. . Está dividido en partes, cada una de las cuales contiene el nombre del archivo, sus atributos y un enlace al archivo MFT. Y toda la demás información ya está ahí. El directorio es un árbol binario. Intentemos descubrir qué tipo de mierda es esta. En el directorio se ubica la información sobre los datos del disco de tal manera que al buscar un archivo, el directorio se divide en dos partes y la respuesta está en qué parte contiene lo que se busca. Luego se repite la misma operación en la mitad seleccionada. Y así sucesivamente hasta encontrar el archivo deseado.

Y ahora sobre los archivos. No existen como tales. ¡Normal, sí! Existen los llamados arroyos, o en el idioma ruso normal, arroyos. Es decir, cualquier unidad de información representa varias corrientes. Un hilo son los datos en sí, es el principal. Otras secuencias son atributos de archivos. Puede adjuntar cualquier otro archivo a cualquier archivo. En pocas palabras, puede adjuntar una secuencia completamente nueva a secuencias de los mismos datos y escribir datos nuevos allí. Pero la información sobre el tamaño del archivo se toma en función del volumen de la transmisión principal. Los archivos vacíos o pequeños en el disco se muestran solo en metarchivos. Esto se hizo para ahorrar espacio en el disco. En general, cabe señalar que el concepto de archivo es mucho más profundo y amplio y es bastante difícil describir todas las propiedades. Tenga en cuenta que la longitud máxima del nombre de archivo puede alcanzar los 255 caracteres.

Además, los archivos NTFS tienen la maravillosa propiedad de estar comprimidos. Se puede comprimir cualquier archivo o incluso directorio. La operación de compresión en sí pasa desapercibida, ya que su velocidad es bastante alta. Antes del montón se utiliza la llamada compresión virtual, es decir, una parte del archivo se puede comprimir pero la otra no. La compresión se realiza en bloques. Cada bloque equivale a 16 grupos.

NTFS utiliza cifrado de datos. Por lo tanto, si demoliste el sistema y lo instalaste nuevamente, no podrás leer los archivos cifrados sin la autorización adecuada.

Ahora sobre el registro. Pero primero, definamos el concepto de transacción. Una transacción es una acción que debe realizarse en su totalidad (leerse correctamente); de lo contrario, no se realizará en absoluto. Entonces, basándose en esta basura, si hay una falla al escribir datos en el disco, no se tomarán notas sobre el nuevo archivo en los metarchivos. Y se considerará limpio el lugar donde se inició la grabación. Esto es necesario para proteger :-) de varios tipos de hemorroides. En resumen, completé la acción hasta el final (hice una grabación, falló) y no es necesario grabarla. Pero cabe señalar que la función de registro en diario preserva la funcionalidad del sistema de archivos, no sus datos.

Y finalmente, NTFS tiene dos funciones más: Enlaces simbólicos: la capacidad de crear directorios virtuales y Enlaces físicos: soporte para varios nombres para el mismo archivo. Eso es probablemente todo.

A día de hoy, este sistema de archivos es el más común, aunque poco a poco va perdiendo posición tras el lanzamiento de Windows XP. Todos los sistemas operativos de la familia Windows a partir de Windows 95 OSR2 admiten FAT 32. Entonces, FAT 32 (Tabla de asignación de archivos) es una hoja de cálculo para la asignación de archivos. Se encuentra casi al principio del disco. Estructura del disco FAT:

    1. sectores de arranque de las particiones principal y adicional;
    2. sector de arranque del disco lógico;
    3. directorio raíz;
    4. área de datos;
    5. cilindro para realizar operaciones de lectura/escritura de diagnóstico;

La principal ventaja de FAT 32 sobre FAT 16 es que en lugar de entradas de 16 bits, se utilizan entradas de 32 bits. Esto, a su vez, aumenta el número de clústeres en la partición a 268.435.456 (en FAT - 65.536). Cuando se utiliza FAT 32, el tamaño del volumen es de 2 Tb y el tamaño de un archivo puede alcanzar los 4 Gb. Una diferencia notable entre FAT 32 y las tablas anteriores es que el directorio raíz no ocupa un espacio fijo en el disco y puede ser de cualquier tamaño.

El tamaño del clúster cuando se usa FAT 32 en una partición de 2 Gb con 5000 archivos es de 4 Kb (en FAT 16 - 32 Kb), la tabla usará hasta 524,288 registros. En este caso, la propia tabla pesará unos 2 MB.

Comparación de NTFS y FAT 32.

Bueno, vayamos a la ingrata tarea de comparar dos sistemas de archivos.

Ventajas:

    1. Velocidad de acceso rápida a archivos pequeños;
    2. El tamaño del espacio en disco hoy en día es prácticamente ilimitado;
    3. La fragmentación de archivos no afecta al sistema de archivos en sí;
    4. Alta confiabilidad del almacenamiento de datos y de la propia estructura del archivo;
    5. Alto rendimiento al trabajar con archivos grandes;

Defectos:

    1. Mayores requisitos de capacidad de RAM en comparación con FAT 32;
    2. Trabajar con catálogos de tamaño mediano resulta complicado debido a su fragmentación;
    3. Velocidad de funcionamiento más lenta en comparación con FAT 32

Ventajas:

    1. Alta velocidad;
    2. Requisito bajo de RAM;
    3. Trabajo eficaz con archivos medianos y pequeños;
    4. Menor desgaste del disco debido a menos movimientos del cabezal de lectura/escritura.

Defectos:

    1. Baja protección contra fallas del sistema;
    2. Trabajo ineficaz con archivos grandes;
    3. Limitación del volumen máximo de una partición y un archivo;
    4. Rendimiento reducido debido a la fragmentación;
    5. Rendimiento reducido al trabajar con directorios que contienen una gran cantidad de archivos;

Entonces, algunas reflexiones. Ambos sistemas de archivos almacenan datos en clústeres cuyo tamaño mínimo es 512 b. Como regla general, el tamaño habitual de un clúster es de 4 Kb. Aquí es donde probablemente terminan las similitudes. Algo sobre la fragmentación: el rendimiento de NTFS disminuye drásticamente cuando el disco está lleno entre un 80 y un 90%. Esto se debe a la fragmentación de los archivos de servicio y trabajo. Cuanto más trabaje con un disco tan ocupado, mayor será la fragmentación y menor será el rendimiento. En FAT 32, la fragmentación del área de trabajo del disco se produce en etapas anteriores. El punto aquí depende de la frecuencia con la que escribe/borra datos. Al igual que ocurre con NTFS, la fragmentación reduce enormemente el rendimiento. Ahora sobre la RAM. El volumen de la propia hoja de cálculo FAT 32 puede ocupar unos varios megabytes de RAM. Pero el almacenamiento en caché viene al rescate. Qué se escribe en el caché:

    1. Los directorios más utilizados;
    2. Datos sobre todos los archivos actualmente en uso;
    3. Datos sobre el espacio libre en disco;

¿Qué pasa con NTFS? Los directorios grandes son difíciles de almacenar en caché y pueden alcanzar un tamaño de varias decenas de megabytes. Además de MFT, además de información sobre el espacio libre en disco. Aunque cabe destacar que NTFS todavía utiliza recursos de RAM de forma bastante económica. Contamos con un exitoso sistema de almacenamiento de datos en MFT, cada registro tiene un tamaño aproximado de 1 Kb. Pero aún así, los requisitos de cantidad de RAM son mayores que los de FAT 32. En resumen, si su memoria es menor o igual a 64 Mb, entonces FAT 32 será más eficiente en términos de velocidad. La diferencia de velocidad será pequeña y, a menudo, nula. Ahora sobre el disco duro en sí. Para utilizar NTFS, se requiere Bus Mastering. ¿Qué es esto? Este es un modo especial de operación del conductor y del controlador. Cuando se utiliza BM, el intercambio se produce sin la participación del procesador. La ausencia de una VM afectará el rendimiento del sistema. Además, debido al uso de un sistema de archivos más complejo, aumenta el número de movimientos de los cabezales de lectura/escritura, lo que también afecta a la velocidad. La presencia de un caché de disco tiene un efecto igualmente positivo tanto en NTFS como en FAT 32.

Un sistema de archivos proporciona una forma de organizar un disco. Define cómo se almacenan los datos en el disco y qué tipos de información se pueden adjuntar a los archivos: nombres de archivos, permisos y otros atributos.

Windows admite tres sistemas de archivos diferentes. NTFS– el sistema de archivos más moderno. Windows usa NTFS para su disco de sistema y, de forma predeterminada, para la mayoría de los discos fijos. FAT32 Es un sistema de archivos antiguo que no es tan eficiente como NTFS y no admite un gran conjunto de funciones, pero proporciona una mayor compatibilidad con otros sistemas operativos. exFAT es un sustituto moderno de FAT32 y es compatible con más dispositivos y sistemas operativos que NTFS, pero no está tan extendido como FAT32.

Sistema de archivos NT (NTFS)

NTFS es sistema de archivos moderno, que Windows prefiere usar de forma predeterminada. Durante la instalación, Windows formatea el disco del sistema con el formato del sistema de archivos NTFS. NTFS tiene límites de tamaño de archivo y de partición tan grandes que es poco probable que los encuentre alguna vez. NTFS apareció por primera vez en la versión para consumidores de Windows XP, aunque debutó originalmente en Windows NT.

NTFS está repleto de funciones modernas que no están disponibles con FAT32 y exFAT. NTFS admite permisos de archivos por motivos de seguridad, un registro de cambios que puede ayudar a recuperarse rápidamente de errores si su computadora falla, instantáneas para copias de seguridad, cifrado, restricciones de cuota de disco, enlaces físicos y varias otras características. Muchos de ellos son críticos para el disco del sistema operativo, especialmente los permisos de archivos.

La partición del sistema de Windows debe estar en formato NTFS. Si tiene una unidad adicional con Windows y planea instalar programas en ella, es mejor formatearla también con NTFS. Y, si tiene unidades para las cuales la compatibilidad no es un problema (porque sabe que las usará en sistemas Windows), no dude en elegir NTFS.

A pesar de sus ventajas, NTFS carece de compatibilidad. Funcionará con todas las versiones más recientes de Windows, hasta Windows XP, pero tiene compatibilidad limitada con otros sistemas operativos. De forma predeterminada, Mac OS X sólo puede leer unidades NTFS, pero no escribir datos. Algunas distribuciones de Linux pueden incluir soporte para escritura NTFS, pero otras pueden ser de sólo lectura. Ninguna de las consolas Sony PlayStation es compatible con NTFS. Incluso la propia consola Xbox 360 de Microsoft no puede leer unidades NTFS que no sean Xbox One. Es incluso menos probable que otros dispositivos admitan NTFS.

Compatibilidad: Funciona con todas las versiones de Windows, pero es de solo lectura en Mac y puede ser de solo lectura en algunas distribuciones de Linux. Es probable que otros dispositivos, con la excepción de Microsoft Xbox One, no sean compatibles con NTFS.

Restricciones: Límites de tamaño de archivos y particiones poco realistas.

Uso ideal: Úselo para la unidad de su sistema Windows y otras unidades internas que solo se usarán con Windows.

Tabla de asignación de archivos 32 (FAT32)

FAT32 es el más antiguo de los tres sistemas de archivos disponibles en Windows. Se introdujo en Windows 95 y reemplazó el antiguo sistema de archivos FAT16 utilizado en MS-DOS y Windows 3.

La antigüedad del sistema de archivos FAT32 tiene sus ventajas y desventajas. La gran ventaja es que FAT32 es el estándar de facto. Las unidades flash listas para usar suelen tener un sistema de archivos FAT32 para una máxima compatibilidad no solo con las computadoras modernas, sino también con otros dispositivos como consolas de juegos y cualquier dispositivo con un puerto USB.

Sin embargo, sus limitaciones también están relacionadas con la edad. Los archivos individuales en una unidad FAT32 no pueden tener más de 4 GB; este es el máximo. La partición FAT32 también debe ser inferior a 8 TB. Estos son los límites a los que se han acercado los dispositivos de los usuarios modernos.

FAT32 es adecuado para unidades flash USB y otros medios externos, especialmente si sabes que lo usarás en otra PC que no sea Windows. Este sistema de archivos carece de los permisos y otras características de seguridad integradas en el sistema de archivos NTFS más moderno. Además, las versiones modernas de Windows ya no se pueden instalar en una unidad formateada con FAT32; deben instalarse en unidades formateadas con NTFS.

Compatibilidad: Funciona con todas las versiones de Windows, Mac y Linux, consolas de juegos y casi cualquier dispositivo con puerto USB.

Restricciones: El tamaño máximo de archivo es 4 GB, el tamaño máximo de partición es 8 TB.

Uso ideal: Úselo en unidades extraíbles donde necesite la máxima compatibilidad con una amplia gama de dispositivos, a menos que esté usando archivos de 4 GB o más.

Tabla de asignación de archivos extendida (exFAT)

sistema de archivos exFAT se introdujo en 2006 y se agregó a versiones anteriores de Windows con actualizaciones para Windows XP y Windows Vista. exFAT es Sistema de archivos optimizado para Flash– diseñado para mantener la compatibilidad con FAT32, pero sin las funciones adicionales de NTFS y sin las limitaciones de FAT32.

Al igual que NTFS, exFAT tiene límites de tamaño de partición y archivos muy grandes, lo que le permite almacenar archivos mucho más grandes que los 4 GB permitidos por FAT32.

Aunque exFAT no coincide exactamente con la compatibilidad de FAT32, es más compatible que NTFS. Incluso Mac OS ofrece soporte exFAT completo para lectura y escritura. Se puede acceder a los discos exFAT en Linux después de instalar el software adecuado. Es un poco más complicado con otros dispositivos: PlayStation 4 admite exFAT; PlayStation 3 no es compatible; Xbox One lo admite, pero Xbox 360 no.

Compatibilidad: Funciona con todas las versiones de Windows y versiones modernas de Mac X, pero requiere software adicional en Linux. Más dispositivos admiten exFAT, pero algunos, especialmente los más antiguos, solo funcionan con FAT32.

Restricciones: Límites de tamaño de archivos y particiones poco realistas.

Uso ideal: Úselo cuando necesite almacenar archivos grandes y cuando necesite una amplia compatibilidad. Suponiendo que todos los dispositivos que desee utilizar admitan exFAT, debe formatear su dispositivo con exFAT en lugar de FAT32.

NTFS es ideal para unidades internas, mientras que exFAT suele ser ideal para unidades flash. Sin embargo, a veces es posible que necesites formatear tu disco externo con FAT32 si exFAT no es compatible con el dispositivo con el que deseas usarlo.

En FAT, los nombres de los archivos están en formato 8.3 y constan únicamente de caracteres ASCII. VFAT ha agregado soporte para nombres de archivos largos (hasta 255 caracteres). Nombre de archivo largo, LFN) en codificación UTF-16LE, con LFN almacenados simultáneamente con nombres 8.3, denominados retrospectivamente SFN. Nombre de archivo corto). Los LFN no distinguen entre mayúsculas y minúsculas al realizar búsquedas; sin embargo, a diferencia de los SFN, que se almacenan en mayúsculas, los LFN conservan las mayúsculas y minúsculas especificadas cuando se creó el archivo.

Estructura del sistema FAT

En el sistema de archivos FAT, los sectores de disco contiguos se combinan en unidades llamadas clústeres. El número de sectores en un clúster es igual a una potencia de dos (ver más abajo). Se asigna un número entero de clústeres (al menos uno) para almacenar datos de archivos, por lo que, por ejemplo, si el tamaño del archivo es de 40 bytes y el tamaño del clúster es de 4 KB, solo el 1% del espacio asignado estará realmente ocupado. por información del archivo. Para evitar este tipo de situaciones, es aconsejable reducir el tamaño de los clústeres, reducir la cantidad de información de direcciones y aumentar la velocidad de las operaciones con archivos, y viceversa. En la práctica, se opta por algún compromiso. Dado que es posible que la capacidad del disco no se exprese en un número entero de grupos, generalmente al final del volumen se encuentran los llamados. sectores excedentes: un "resto" de menos del tamaño de un clúster que el sistema operativo no puede asignar para almacenar información.

El espacio del volumen FAT32 se divide lógicamente en tres áreas contiguas:

  • Área reservada. Contiene estructuras de servicio que pertenecen al registro de inicio de la partición (Partition Boot Record - PBR, para distinguirlo del Master Boot Record - el registro de inicio maestro del disco; PBR a menudo también se denomina incorrectamente sector de inicio) y se utilizan al inicializar el volumen;
  • Un área de una tabla FAT que contiene una matriz de punteros de índice ("celdas") correspondientes a los grupos del área de datos. Normalmente hay dos copias de la tabla FAT en el disco por motivos de confiabilidad;
  • El área de datos donde se registra el contenido real de los archivos, es decir, el texto de los archivos de texto, la imagen codificada de los archivos de imágenes, el sonido digitalizado de los archivos de audio, etc., así como los llamados. Metadatos: información sobre los nombres de archivos y carpetas, sus atributos, tiempos de creación y modificación, tamaños y ubicación en el disco.

FAT12 y FAT16 también asignan específicamente el área del directorio raíz. Tiene una posición fija (inmediatamente después del último elemento de la tabla FAT) y un tamaño fijo en sectores.

Si un grupo pertenece a un archivo, entonces la celda correspondiente contiene el número del siguiente grupo del mismo archivo. Si la celda corresponde al último grupo del archivo, entonces contiene un valor especial (FFFF 16 para FAT16). De esta forma se construye una cadena de grupos de archivos. Los grupos no utilizados en la tabla corresponden a ceros. Los grupos "malos" (que están excluidos del procesamiento, por ejemplo, debido a la ilegibilidad del área correspondiente del dispositivo) también corresponden a un código especial.

Cuando se elimina un archivo, el primer carácter del nombre se reemplaza con un código especial E5 16 y la cadena de grupos de archivos en la tabla de asignación se restablece a cero. Dado que la información sobre el tamaño del archivo (que se encuentra en el directorio al lado del nombre del archivo) permanece intacta, si los grupos de archivos se ubicaron secuencialmente en el disco y no fueron sobrescritos con nueva información, es posible restaurar el archivo eliminado.

Entrada de arranque

La primera estructura de volumen FAT se llama BPB. Bloque de parámetros de BIOS ) y está ubicado en un área reservada, en el sector cero. Esta estructura contiene información que identifica el tipo de sistema de archivos y las características físicas del medio de almacenamiento (disquete o partición del disco duro).

Bloque de parámetros del BIOS

BPB estaba esencialmente ausente del FAT que servía a MS-DOS 1.x, ya que en ese momento solo había dos tipos diferentes de volúmenes: disquetes de 360 ​​KB de cinco pulgadas y de doble cara, con el formato de volumen determinado por el primer byte del área FAT. BPB se introdujo en MS-DOS 2.x a principios de 1983 como una estructura de sector de arranque obligatoria que en adelante determinaría el formato del volumen; El antiguo esquema de determinación por el primer byte de FAT ha perdido apoyo. También en MS-DOS 2.0, se introdujo una jerarquía de archivos y carpetas (antes, todos los archivos se almacenaban en el directorio raíz).

La estructura BPB en MS-DOS 2.x contenía un campo de "número total de sectores" de 16 bits, lo que significaba que esta versión de FAT era fundamentalmente inaplicable para volúmenes superiores a 2 16 = 65 536 sectores, es decir, más de 32 MB. con un tamaño de sector estándar de 512 bytes. En MS-DOS 4.0 (1988), el campo BPB anterior se amplió a 32 bits, lo que significó que el tamaño del volumen teórico aumentó a 232 = 4.294.967.296 sectores, o 2 TB con un sector de 512 bytes.

La siguiente modificación de BPB apareció con Windows 95 OSR2, que introdujo FAT32 (en agosto de 1996). Se ha eliminado el límite de dos gigabytes en el tamaño del volumen; en teoría, un volumen FAT32 puede tener un tamaño de hasta 8 TB. Sin embargo, el tamaño de cada archivo individual no puede exceder los 4 GB. El bloque de parámetros BIOS FAT32, a efectos de compatibilidad con versiones anteriores de FAT, repite el BPB FAT16 hasta el campo BPB_TotSec32 inclusive, seguido de diferencias.

El "sector de arranque" FAT32 consta en realidad de tres sectores de 512 bytes: los sectores 0, 1 y 2. Cada uno de ellos contiene la firma 0xAA55 en la dirección 0x1FE, es decir, en los dos últimos bytes si el tamaño del sector es de 512 bytes. Si el tamaño del sector es superior a 512 bytes, entonces la firma está contenida tanto en la dirección 0x1FE como en los dos últimos bytes del sector cero, es decir, está duplicada.

FSInfo

El registro de arranque de una partición FAT32 contiene una estructura llamada FSInfo, utilizado para almacenar la cantidad de clústeres libres en el volumen. FSInfo, por regla general, ocupa el sector 1 (ver el campo BPB_FSInfo) y tiene la siguiente estructura (direcciones relativas al comienzo del sector):

  • FSI_LeadSig. La firma de 4 bytes 0x41615252 indica que el sector se utiliza para la estructura FSInfo.
  • FSI_Reservado1. El intervalo del 4º al 483º byte del sector, inclusive, se pone a cero.
  • FSI_StrucSig. Otra firma se encuentra en la dirección 0x1E4 y contiene el valor 0x61417272.
  • FSI_Free_Count. El campo de cuatro bytes en la dirección 0x1E8 contiene el último valor del número de clústeres libres en el volumen conocido por el sistema. Un valor de 0xFFFFFFFF significa que se desconoce el número de clústeres libres y se debe calcular.
  • FSI_Nxt_Free. El campo de cuatro bytes en la dirección 0x1EC contiene el número de clúster a partir del cual debe comenzar la búsqueda de clústeres libres en la tabla de punteros de índice. Normalmente, este campo contiene el número del último clúster FAT asignado para almacenar el archivo. El valor 0xFFFFFFFF significa que la búsqueda de un clúster libre debe realizarse desde el principio de la tabla FAT, es decir, desde el segundo clúster.
  • FSI_Reservado2. Campo reservado de 12 bytes en la dirección 0x1F0.
  • FSI_TrailSig. Firma 0xAA550000: últimos 4 bytes del sector FSInfo.

El objetivo de introducir FSInfo es optimizar el funcionamiento del sistema, ya que en FAT32 la tabla de punteros de índice puede tener un tamaño significativo y su escaneo byte a byte puede llevar un tiempo considerable. Sin embargo, los valores de los campos FSI_Free_Count y FSI_Nxt_Free pueden no ser correctos y se debe verificar su idoneidad. Además, ni siquiera se actualizan en la copia de seguridad de FSInfo, que suele estar situada en el sector 7.

Determinar el tipo de volumen FAT

La determinación del tipo FAT de un volumen (es decir, la elección entre FAT12, FAT16 y FAT32) la realiza el sistema operativo en función del número de clústeres del volumen, que a su vez se determina a partir de los campos BPB. En primer lugar, se calcula el número de sectores del directorio raíz:

RootDirSectors = (BPB_RootEntCnt * 32) / BPB_BytsPerSec

DataSec = TotSec - (BPB_ResvdSecCnt + (BPB_NumFATs * FATSz) + RootDirSectors)

Finalmente, se determina el número de grupos de áreas de datos:

CountofClusters = DataSec / BPB_SecPerClus

Según el número de clústeres, existe una clara correspondencia con el sistema de archivos:

  • Conteo de grupos< 4085 - FAT12
  • Número de grupos = 4085 ÷ 65524 - FAT16
  • Conteo de clústeres > 65524 - FAT32

Según la especificación oficial, esta es la única forma válida de determinar el tipo de FAT. La creación artificial de un volumen que viole las reglas de cumplimiento especificadas hará que Windows lo procese incorrectamente. Sin embargo, se recomienda evitar los valores de CountofClusters cercanos a los críticos (4085 y 65525) para poder determinar correctamente el tipo de sistema de archivos mediante cualquier controlador, a menudo escrito incorrectamente.

Con el tiempo, FAT comenzó a usarse ampliamente en varios dispositivos por compatibilidad entre DOS, Windows, OS/2, Linux. Microsoft no ha mostrado ninguna intención de obligarlos a conceder licencias [ especificar] .

En febrero de 2009, Microsoft demandó a TomTom, un fabricante de sistemas de navegación para automóviles basados ​​en Linux, alegando infracción de patente.

Notas

  1. http://cd.textfiles.com/megademo2/INFO/OS2_HPFS.TXT
  2. www.microsoft.com/mscorp/ip/tech/fathist.asp en archive.org
  3. Especificación del sistema de archivos FAT32 de Microsoft Extensible Firmware Initiative 1.03. Microsoft (6 de diciembre de 2000). - Documento en formato Microsoft Word, 268 Kb. Archivado
  4. ¿Qué pasa con VFAT? . Archivo TechNet. Microsoft (15 de octubre de 1999). Archivado desde el original el 22 de agosto de 2011. Consultado el 5 de abril de 2010.
  5. La extensión del sistema de archivos VFAT no debe confundirse con el controlador del sistema de archivos del mismo nombre, que apareció en Windows para Trabajo en Grupo 3.11 y está diseñado para manejar llamadas a funciones de MS-DOS (INT 21h) en modo protegido (consulte: KB126746: Historial de versiones de Windows para trabajo en grupo. VERSIÓN 3.11 → Funciones fuera de la red. Microsoft (14 de noviembre de 2003). Archivado desde el original el 22 de agosto de 2011. Consultado el 5 de abril de 2010.)
  6. El Tribunal Federal de Patentes declara nula y sin efecto la patente FAT de Microsoft (inglés). heise en línea. Heise Zeitschriften Verlag (2 de marzo de 2007). Archivado
  7. Brian Kahin. Microsoft agita al mundo con las patentes FAT. El Huffington Post (10 de marzo de 2009). Archivado desde el original el 22 de agosto de 2011. Consultado el 10 de marzo de 2009.
  8. Ryan Pablo. La demanda de Microsoft por las patentes FAT podría abrir la caja de Pandora del OSS (inglés). Ars Técnica. Publicaciones Condé Nast (25 de febrero de 2009). Archivado
  9. Glyn Moody.(Inglés) . ComputerworldReino Unido. IDG (5 de marzo de 2009). Archivado desde el original el 22 de agosto de 2011. Consultado el 9 de marzo de 2009.
  10. Steven J. Vaughan-Nichols. Empresas de Linux firman pactos de protección de patentes de Microsoft (inglés). Blogs de ComputerWorld. IDG (5 de marzo de 2009). Archivado desde el original el 22 de agosto de 2011. Consultado el 9 de marzo de 2009.
  11. Erica Ogg. TomTom contraataca a Microsoft en una disputa sobre patentes. CNet (19 de marzo de 2009). Archivado desde el original el 22 de agosto de 2011. Consultado el 20 de marzo de 2009.

Campo de golf

  • Estándar FAT ECMA-107 (inglés)

Introducción

2.1 sistema FAT16

2.2 sistema FAT32

2.3 Comparación de FAT16 y FAT32

3.1 sistema NTFS

3.2 Comparación de NTFS y FAT32

Conclusión

Referencias

Introducción

Actualmente, en promedio, se graban varias decenas de miles de archivos en un disco. ¿Cómo clasificar toda esta diversidad para abordar con precisión el expediente? El propósito del sistema de archivos es una solución eficaz a este problema.

El sistema de archivos, desde el punto de vista del usuario, es el "espacio" en el que se ubican los archivos. Y como término científico, es una forma de almacenar y organizar el acceso a los datos en un soporte de información o sección del mismo. La presencia de un sistema de archivos le permite determinar cómo se llama el archivo y dónde se encuentra. Dado que en las computadoras compatibles con IBM PC la información se almacena principalmente en discos, los sistemas de archivos utilizados en ellas determinan la organización de los datos en los discos (más precisamente, en los discos lógicos). Examinaremos el sistema de archivos FAT.

sistema de archivos ntfs gordo

1. Historia de creación y características generales del sistema de archivos FAT

El sistema de archivos FAT (File Allocation Table) fue desarrollado por Bill Gates y Mark McDonald en 1977 y se utilizó originalmente en el sistema operativo 86-DOS. Para lograr la portabilidad de los programas del sistema operativo CP/M a 86-DOS, se mantuvieron las restricciones previamente aceptadas sobre los nombres de archivos. Posteriormente, Microsoft adquirió 86-DOS y se convirtió en la base de MS-DOS 1.0, lanzado en agosto de 1981. FAT fue diseñado para funcionar con disquetes de menos de 1 MB e inicialmente no brindaba soporte para discos duros. Actualmente, FAT admite archivos y particiones de hasta 2 GB de tamaño.

FAT utiliza las siguientes convenciones de nomenclatura de archivos:

el nombre debe comenzar con una letra o número y puede contener cualquier carácter ASCII excepto espacios y los caracteres "/\ :; |=,^*?

El nombre no tiene más de 8 caracteres, seguido de un punto y una extensión opcional de hasta 3 caracteres.

El caso de los caracteres en los nombres de archivos no se distingue y no se conserva.

La estructura de la partición FAT se muestra en la Tabla 1.1. El bloque de parámetros del BIOS contiene la información necesaria del BIOS sobre las características físicas del disco duro. El sistema de archivos FAT no puede controlar cada sector por separado, por lo que agrupa los sectores adyacentes en grupos. Esto reduce la cantidad total de unidades de almacenamiento de las que el sistema de archivos debe realizar un seguimiento. El tamaño del clúster en FAT es una potencia de dos y está determinado por el tamaño del volumen al formatear el disco (Tabla 1.2). Un clúster representa la cantidad mínima de espacio que puede ocupar un archivo. Esto da como resultado que se desperdicie parte del espacio en disco. El sistema operativo incluye varias utilidades (DoubleSpace, DriveSpace) diseñadas para compactar datos en el disco.

Mesa 1.1 - Estructura de partición FAT

Sector de arranque Bloque de parámetros BIOS (BPB) FATFAT (copia) Directorio raíz Área de archivos

FAT debe su nombre a la tabla de asignación de archivos del mismo nombre. La tabla de asignación de archivos almacena información sobre los clústeres de un disco lógico. Cada grupo en FAT tiene una entrada separada que indica si está libre, ocupado por datos de archivos o marcado como fallido (dañado). Si el clúster está ocupado por un archivo, la dirección del clúster que contiene la siguiente parte del archivo se indica en la entrada correspondiente en la tabla de asignación de archivos. Debido a esto, FAT se denomina sistema de archivos de lista vinculada. La versión original de FAT, desarrollada para DOS 1.00, utilizaba una tabla de asignación de archivos de 12 bits y admitía particiones de hasta 16 MB (DOS le permite crear un máximo de dos particiones FAT). Para admitir discos duros de más de 32 MB, el ancho de bits FAT se aumentó a 16 bits y el tamaño del clúster se aumentó a 64 sectores (32 KB). Dado que a cada clúster se le puede asignar un número único de 16 bits, FAT admite un máximo de 216, o 65 536, clústeres en un solo volumen.

Tabla 1.2 - Tamaños de los conglomerados

Tamaño de partición Tamaño de clúster Tipo FAT< 16 Мб4 КбFAT1216 Мб - 127 Мб2 КбFAT16128 Мб - 255 Мб4 КбFAT16256 Мб - 511 Мб8 КбFAT16512 Мб - 1023 Мб16 КбFAT161 Гб - 2 Гб32 КбFAT16

Debido a que el registro de inicio es demasiado pequeño para almacenar el algoritmo de búsqueda de archivos del sistema en el disco, los archivos del sistema deben estar en una ubicación específica para que el registro de inicio los encuentre. La posición fija de los archivos del sistema al comienzo del área de datos impone un límite estricto al tamaño del directorio raíz y a la tabla de asignación de archivos. Como resultado, el número total de archivos y subdirectorios en el directorio raíz de una unidad FAT está limitado a 512.

Cada archivo y subdirectorio en FAT está asociado con un elemento de directorio de 32 bytes que contiene el nombre del archivo, sus atributos (archivo, oculto, sistema y solo lectura). ), fecha y hora de creación (o últimos cambios realizados), así como otra información (Tabla 1.3).

Tabla 1.3 - Elementos del catálogo

El sistema de archivos FAT siempre llena el espacio libre en el disco de forma secuencial de principio a fin. Al crear un archivo nuevo o aumentar uno existente, busca el primer grupo libre en la tabla de asignación de archivos. Si durante la operación se eliminaron algunos archivos y otros cambiaron de tamaño, los grupos vacíos resultantes se dispersarán por todo el disco. Si los grupos que contienen los datos del archivo no están ubicados en una fila, entonces el archivo se fragmenta. Los archivos muy fragmentados reducen significativamente la eficiencia, ya que los cabezales de lectura/escritura tendrán que moverse de un área del disco a otra cuando busquen el siguiente registro de archivo. Los sistemas operativos que admiten FAT suelen incluir utilidades especiales de desfragmentación de disco diseñadas para mejorar el rendimiento de las operaciones con archivos.

Otra desventaja de FAT es que su rendimiento depende en gran medida de la cantidad de archivos almacenados en un directorio. Si hay una gran cantidad de archivos (alrededor de mil), la operación de leer la lista de archivos en un directorio puede tardar varios minutos. Esto se debe a que en FAT el directorio tiene una estructura lineal y desordenada, y los nombres de los archivos en los directorios están en el orden en que fueron creados. Como resultado, cuantas más entradas haya en el directorio, más lento funcionarán los programas, ya que al buscar un archivo es necesario revisar todas las entradas del directorio secuencialmente. Dado que FAT se diseñó originalmente para el sistema operativo DOS de usuario único, no permite almacenar información como información del propietario o permisos de acceso a archivos/directorios. Es el sistema de archivos más común y es compatible hasta cierto punto con la mayoría de los sistemas operativos modernos. . Debido a su versatilidad, FAT se puede utilizar en volúmenes compatibles con diferentes sistemas operativos.

Aunque no existe ningún obstáculo para utilizar cualquier otro sistema de archivos al formatear disquetes, la mayoría de los sistemas operativos utilizan FAT por motivos de compatibilidad. Esto puede explicarse en parte por el hecho de que una estructura FAT simple requiere menos espacio para almacenar datos generales que otros sistemas. Las ventajas de otros sistemas de archivos sólo se notan cuando se utilizan en medios de más de 100 MB.

Cabe señalar que FAT es un sistema de archivos simple que no evita la corrupción de archivos debido a un apagado anormal de la computadora. Los sistemas operativos que admiten FAT incluyen utilidades especiales que verifican la estructura y corrigen inconsistencias en el sistema de archivos.

2. Características de los sistemas de archivos FAT16 y FAT32 y su comparación

.1 sistema FAT16

El sistema de archivos FAT 16 es el principal para los sistemas operativos DOS, Windows 95⁄98⁄Me, Windows NT⁄2000⁄XP y también es compatible con la mayoría de los demás sistemas. FAT 16 es un sistema de archivos simple diseñado para unidades pequeñas y estructuras de directorios simples. El nombre proviene del nombre del método de organización de archivos: Tabla de asignación de archivos. Esta tabla se encuentra al principio del disco. El número 16 significa que el sistema de archivos es de 16 bits; se utilizan 16 bits para direccionar clústeres. El sistema operativo utiliza la tabla de asignación de archivos para localizar un archivo y determinar los grupos que ocupa ese archivo en el disco duro. Además, la tabla registra información sobre clusters libres y defectuosos. Para que sea más fácil entender el sistema de archivos FAT16, imagine el índice de un libro y cómo trabaja con este índice, así es exactamente como funciona el sistema operativo con FAT 16;

Para leer un archivo, el sistema operativo debe buscar el nombre del archivo para una entrada en la carpeta y leer el primer número de grupo del archivo. El primer grupo representa el comienzo del archivo. Luego debe leer el elemento FAT correspondiente al primer grupo del archivo. Si el elemento contiene una etiqueta, la última de la cadena, entonces no es necesario buscar nada más: todo el archivo cabe en un grupo. Si el grupo no es el último, entonces el elemento de la tabla contiene el número del siguiente grupo. El contenido del siguiente grupo debe leerse después del primero. Cuando se encuentra el último clúster de la cadena, si el archivo no ocupa todo el clúster, es necesario cortar los bytes adicionales del clúster. Los bytes adicionales se recortan según la longitud del archivo almacenado en la entrada de la carpeta.

Para escribir un archivo, el sistema operativo debe realizar la siguiente secuencia de acciones. Se crea una descripción de archivo en una entrada de carpeta libre, luego se busca una entrada FAT libre y se coloca un enlace en la entrada de carpeta. El primer grupo descrito por el elemento FAT encontrado está ocupado. Este elemento FAT contiene el número del siguiente grupo o el signo del último grupo de la cadena.

El sistema operativo actúa de tal manera que recopila cadenas de grupos vecinos en cantidades cada vez mayores. Está claro que acceder a clústeres ubicados secuencialmente será mucho más rápido que acceder a clústeres dispersos aleatoriamente en el disco. En este caso, se ignoran los grupos que ya están ocupados y marcados en FAT como defectuosos.

En el sistema de archivos FAT16, se asignan 16 bits para el número de clúster. Por lo tanto, el número máximo de clústeres es 65525 y el tamaño máximo del clúster es 128 sectores. En este caso, el tamaño máximo de particiones o discos en FAT16 es de 4,2 gigabytes. Al formatear lógicamente un disco o una partición, el sistema operativo intenta utilizar el tamaño mínimo del clúster para que el número resultante de clústeres no supere los 65525. Obviamente, cuanto mayor sea el tamaño de la partición, mayor debe ser el tamaño del clúster. Muchos sistemas operativos no funcionan correctamente con un tamaño de clúster de 128 sectores. Como resultado, el tamaño máximo de una partición FAT16 se reduce a 2 gigabytes. Normalmente, cuanto mayor sea el tamaño del clúster, mayor será el desperdicio de espacio en disco. Esto se debe al hecho de que el último grupo ocupado por el archivo sólo está parcialmente lleno. Por ejemplo, si se escribe un archivo de 17 KB en una partición con un tamaño de clúster de 16 KB, entonces este archivo ocupará dos clústeres: el primer clúster estará completamente lleno y solo se escribirá 1 KB de datos en el segundo clúster, dejando los 15 KB de espacio restantes en el segundo clúster están vacíos y no estarán disponibles para escribir en otros archivos. Si se escribe una gran cantidad de archivos pequeños en discos grandes, la pérdida de espacio en disco será significativa. La siguiente tabla 2.1 proporciona información sobre la posible pérdida de espacio en disco para diferentes tamaños de partición.

Mesa 2.1.1 - Desperdicio de espacio en disco

Tamaño de particiónTamaño de clústerPérdida de espacio en disco127 MB2 KB2%128-255 MB4 KB4%256-511 MB8 KB10%512-1023 MB16 KB25%1024-2047 MB32 KB40%2048-4096 MB64 KB50%

Hay dos formas posibles de reducir el desperdicio de espacio en disco. La primera es dividir el espacio en disco en particiones pequeñas con un tamaño de clúster pequeño. El segundo es utilizar el sistema de archivos FAT32.<#"center">2.2 sistema FAT32

El sistema de archivos FAT32 es un sistema de archivos más nuevo basado en el formato FAT y es compatible con Windows 95 OSR2, Windows 98 y Windows Millennium Edition. FAT32 utiliza ID de clúster de 32 bits, pero reserva los 4 bits más significativos, por lo que el tamaño efectivo de ID de clúster es de 28 bits. Dado que el tamaño máximo de los clústeres FAT32 es de 32 KB, FAT32 puede, en teoría, manejar volúmenes de 8 terabytes. Windows 2000 limita el tamaño de los nuevos volúmenes FAT32 a 32 GB, aunque admite volúmenes FAT32 más grandes existentes (creados en otros sistemas operativos). La mayor cantidad de clústeres admitidos por FAT32 le permite administrar discos de manera más eficiente que FAT 16. FAT32 puede usar clústeres de 512 bytes para volúmenes de hasta 128 MB de tamaño.

El sistema de archivos FAT 32 se utiliza como sistema de archivos predeterminado en Windows 98. Este sistema operativo viene con un programa especial para convertir un disco de FAT 16 a FAT 32. Windows NT y Windows 2000 también pueden usar el sistema de archivos FAT y, por lo tanto, puede iniciar su computadora desde un disco DOS y tener acceso completo a todos los archivos. . Sin embargo, algunas de las características más avanzadas de Windows NT y Windows 2000 las proporciona su propio sistema de archivos NTFS (NT File System). NTFS le permite crear particiones de disco de hasta 2 TB (como FAT 32), pero además, tiene funciones integradas de compresión de archivos, seguridad y auditoría necesarias cuando se trabaja en un entorno de red. Y en Windows 2000, se implementa soporte para el sistema de archivos FAT 32. La instalación del sistema operativo Windows NT comienza en un disco FAT, pero a petición del usuario, al final de la instalación, los datos del disco se pueden convertir. al formato NTFS.

Puedes hacer esto más tarde usando la utilidad Convertir. exe suministrado con el sistema operativo. Una partición de disco convertida a NTFS se vuelve inaccesible para otros sistemas operativos. Para volver a DOS, Windows 3.1 o Windows 9x, debe eliminar la partición NTFS y crear una partición FAT en su lugar. Windows 2000 se puede instalar en un disco con los sistemas de archivos FAT 32 y NTFS.

Las capacidades de los sistemas de archivos FAT32 son mucho más amplias que las de FAT16. Su característica más importante es que admite discos de hasta 2047 GB y funciona con clústeres más pequeños, lo que reduce significativamente la cantidad de espacio en disco no utilizado. Por ejemplo, un disco duro de 2 GB en FAT16 usa clústeres de 32 KB, mientras que FAT32 usa clústeres de 4 KB. Para mantener la compatibilidad con programas, redes y controladores de dispositivos existentes siempre que sea posible, FAT32 se implementa con cambios mínimos en la arquitectura, las API, las estructuras de datos internas y el formato del disco. Pero dado que los elementos de la tabla FAT32 ahora tienen un tamaño de cuatro bytes, muchas API y estructuras de datos internas y en disco han tenido que revisarse o ampliarse. Ciertas API en unidades FAT32 están bloqueadas para evitar que las utilidades de disco heredadas dañen el contenido de las unidades FAT32. La mayoría de los programas no se verán afectados por estos cambios. Las herramientas y controladores existentes funcionarán en unidades FAT32. Sin embargo, es necesario modificar los controladores de dispositivos de bloques de MS-DOS (como Aspidisk.sys) y las utilidades de disco para que admitan FAT32. Todas las utilidades de disco proporcionadas por Microsoft (Format, Fdisk, Defrag y ScanDisk para modo real y protegido) se han rediseñado para ser totalmente compatibles con FAT32. Además, Microsoft está ayudando a los principales proveedores de controladores de dispositivos y utilidades de disco a modificar sus productos para que admitan FAT32. FAT32 es más eficiente que FAT16 cuando se trabaja con discos más grandes y no requiere dividirlos en particiones de 2 GB. Windows 98 necesariamente admite FAT16, ya que este sistema de archivos en particular es compatible con otros sistemas operativos, incluidos los de terceros. En modo real MS-DOS y en modo seguro de Windows 98, el sistema de archivos FAT32 es significativamente más lento que FAT16. Por lo tanto, al ejecutar programas en modo MS DOS, es recomendable incluir Autoexec. comando de archivo bat o PIF para descargar Smartdrv. exe, que acelerará las operaciones del disco. Algunos programas heredados diseñados para la especificación FAT16 pueden proporcionar información incorrecta sobre la cantidad de espacio libre o total en disco si es más de 2 GB. Windows 98 proporciona nuevas API para MS-DOS y Win32 que le permiten determinar correctamente estas métricas.

.3 Comparación de FAT16 y FAT32

Tabla 2.3.1 - Comparación de los sistemas de archivos FAT16 y FAT32

FAT16FAT32Implementado y utilizado por la mayoría de los sistemas operativos (MS-DOS, Windows 98, Windows NT, OS/2, UNIX). Actualmente sólo se admite en Windows 95 OSR2 y Windows 98. Muy eficaz para unidades lógicas de menos de 256 MB. No funciona con discos de menos de 512 MB. Admite la compresión de disco, por ejemplo utilizando el algoritmo DriveSpace. No admite la compresión de disco. Procesa un máximo de 65.525 clústeres, cuyo tamaño depende del tamaño del disco lógico. Dado que el tamaño máximo del clúster es de 32 KB, FAT16 puede funcionar con unidades lógicas que no superen los 2 GB. Capaz de trabajar con discos lógicos de hasta 2.047 GB con un tamaño de clúster máximo de 32 KB.

La longitud máxima de archivo posible en FAT32 es 4 GB menos 2 bytes. Las aplicaciones Win32 pueden abrir archivos de esta longitud sin un procesamiento especial. Otras aplicaciones deben usar la interrupción Int 21h, función 716C (FAT32) con el indicador abierto configurado en EXTEND-SIZE (1000h).

En el sistema de archivos FAT32, se asignan 4 bytes para cada grupo en la tabla de asignación de archivos, mientras que en FAT16 - 2 y en FAT12 - 1.5.

Los 4 bits más significativos de un elemento de tabla FAT32 de 32 bits están reservados y no participan en la formación del número de clúster. Los programas que leen directamente la tabla FAT32 deben enmascarar estos bits y protegerlos para que no cambien cuando se escriben nuevos valores.

Así, FAT32 tiene las siguientes ventajas sobre implementaciones anteriores del sistema de archivos FAT:

admite discos de hasta 2 TB;

organiza el espacio en disco de manera más eficiente. FAT32 utiliza clústeres más pequeños (4 KB para discos de hasta 8 GB), lo que ahorra hasta un 10-15 % de espacio en discos grandes en comparación con FAT;

el directorio raíz FAT 32, como todos los demás directorios, ahora es ilimitado, consta de una cadena de clústeres y puede ubicarse en cualquier lugar del disco;

tiene mayor confiabilidad: FAT32 puede mover el directorio raíz y trabajar con una copia de seguridad FAT; además, el registro de inicio en las unidades FAT32 se ha ampliado para incluir una copia de seguridad de las estructuras de datos críticas, lo que significa que las unidades FAT32 son menos sensibles a la aparición de áreas defectuosas individuales que los volúmenes de FAT existentes;

Los programas se cargan un 50% más rápido.

Tabla 2.3.2 - Comparación de tamaños de conglomerados

Tamaño del disco Tamaño del clúster en FAT16, KB Tamaño del clúster en FAT32, KB256 MB-511 MB8 No compatible512 MB - 1023 MB1641024 MB - 2 GB3242 GB - 8 GBNo compatible48 GB-16 GBNo compatible816 GB-32 GBNo compatible 16Más de 32 GBNo compatible32

3. Sistema de archivos alternativo NTFS y su comparación con FAT32

3.1 sistema NTFS

(New Technology File System) es el sistema de archivos preferido cuando se trabaja con Windows NT, ya que fue diseñado específicamente para este sistema. Windows NT incluye una utilidad de conversión que convierte volúmenes FAT y HPFS en volúmenes NTFS. NTFS ha ampliado significativamente las capacidades para controlar el acceso a archivos y directorios individuales, introdujo una gran cantidad de atributos, implementó tolerancia a fallas, compresión dinámica de archivos y soporte para los requisitos del estándar POSIX. NTFS permite nombres de archivos de hasta 255 caracteres y utiliza el mismo algoritmo para generar un nombre corto que VFAT. NTFS tiene la capacidad de autorrecuperarse en caso de una falla del sistema operativo o del hardware, de modo que el volumen del disco permanezca disponible y la estructura del directorio no se vea interrumpida.

Cada archivo en un volumen NTFS está representado por una entrada en un archivo especial: la MFT (Tabla maestra de archivos). NTFS reserva las primeras 16 entradas de la tabla, de aproximadamente 1 MB de tamaño, para información especial. La primera entrada de la tabla describe la propia tabla del archivo principal. A esto le sigue la entrada espejo MFT. Si el primer registro MFT está dañado, NTFS lee el segundo registro para encontrar un archivo MFT espejo cuyo primer registro sea idéntico al primer registro MFT. La ubicación de los segmentos de datos MFT y el archivo MFT espejo se almacena en el sector de arranque. Una copia del sector de arranque se encuentra en el centro lógico del disco. La tercera entrada de MFT contiene un archivo de registro utilizado para la recuperación de archivos. Las entradas decimoséptima y posteriores de la tabla de archivos maestros son utilizadas por los archivos y directorios reales del volumen.

El registro de transacciones (archivo de registro) registra todas las operaciones que afectan la estructura del volumen, incluida la creación de archivos y cualquier comando que cambie la estructura del directorio. El registro de transacciones se utiliza para recuperar un volumen NTFS después de una falla del sistema. La entrada del directorio raíz contiene una lista de archivos y directorios almacenados en el directorio raíz.

El esquema de asignación de volumen se almacena en un archivo de mapa de bits. El atributo de datos de este archivo contiene un mapa de bits, cada bit del cual representa un grupo del volumen e indica si el grupo está libre u ocupado por algún archivo. También admite un archivo de grupo defectuoso para registrar áreas defectuosas en el volumen y un archivo de volumen. , que contiene el nombre del volumen, la versión NTFS y un bit que se establece cuando el volumen se daña. Finalmente, hay un archivo que contiene una tabla de definición de atributos, que especifica los tipos de atributos admitidos en el volumen y si pueden indexarse, restaurarse mediante una restauración del sistema, etc., asigna espacio en clústeres y utiliza numeración de 64 bits para ellos. lo que hace posible tener 264 clusters, cada uno de hasta 64 KB de tamaño. Al igual que con FAT, el tamaño del clúster puede variar, pero no necesariamente aumenta en proporción al tamaño del disco. Los tamaños de clúster predeterminados al formatear una partición se muestran en la Tabla 3.1.

Tamaño de particiónTamaño de clúster< 512 Мб512 байт513 Мб - 1024 Мб (1 Гб) 1 Кб1 Гб - 2 Гб2 Кб2 Гб - 4 Гб4 Кб4 Гб - 8 Гб8 Кб8 Гб - 16 Гб16 Кб16 Гб - 32 Гб32 Кб>32 GB64 KB le permite almacenar archivos de hasta 16 exabytes (264 bytes) de tamaño y tiene compactación de archivos en tiempo real incorporada. La compresión es uno de los atributos de un archivo o directorio y, como cualquier atributo, se puede eliminar o instalar en cualquier momento (la compresión es posible en particiones con un tamaño de clúster de no más de 4 KB). Al comprimir un archivo, a diferencia de los esquemas de compactación utilizados en FAT, se utiliza la compactación archivo por archivo, por lo que el daño a una pequeña sección del disco no provoca la pérdida de información en otros archivos.

Para reducir la fragmentación, NTFS siempre intenta almacenar archivos en bloques contiguos. Este sistema utiliza una estructura de directorios de árbol B similar al sistema de archivos HPFS de alto rendimiento, en lugar de la estructura de lista enlazada utilizada en FAT. Esto hace que la búsqueda de archivos en un directorio sea más rápida porque los nombres de los archivos se almacenan ordenados en orden lexicográfico y se diseñó como un sistema de archivos recuperable que utiliza un modelo de procesamiento de transacciones. Cada operación de E/S que modifica un archivo en un volumen NTFS es considerada una transacción por el sistema y puede ejecutarse como un bloque indivisible. Cuando un usuario modifica un archivo, el servicio de archivos de registro registra toda la información necesaria para repetir o revertir la transacción. Si la transacción se completa con éxito, el archivo se modifica. De lo contrario, NTFS revierte la transacción.

A pesar de la presencia de protección contra el acceso no autorizado a los datos, NTFS no proporciona la confidencialidad necesaria de la información almacenada. Para obtener acceso a los archivos, simplemente inicie la computadora en DOS desde un disquete y use algún controlador NTFS de terceros para este sistema.

A partir de Windows NT 5.0 (el nuevo nombre de Windows 2000), Microsoft admite el nuevo sistema de archivos NTFS 5.0. La nueva versión de NTFS introdujo atributos de archivo adicionales; Junto al derecho de acceso, se ha introducido el concepto de denegación de acceso, que permite, por ejemplo, cuando un usuario hereda derechos de grupo sobre un archivo, prohibirle modificar su contenido. El nuevo sistema también permite:

introducir restricciones (cuotas) sobre la cantidad de espacio en disco proporcionado a los usuarios;

asigne cualquier directorio (tanto en la computadora local como en la remota) a un subdirectorio en el disco local.

Una característica interesante de la nueva versión de Windows NT es el cifrado dinámico de archivos y directorios, que aumenta la confiabilidad del almacenamiento de información. Windows NT 5.0 incluye un sistema de cifrado de archivos (EFS), que utiliza algoritmos de cifrado de clave compartida. Si el atributo de cifrado se establece para un archivo, cuando un programa de usuario accede al archivo para escribirlo o leerlo, el archivo se codifica y decodifica de forma transparente para el programa.

.2 Comparación de NTFS y FAT32

Ventajas:

Velocidad de acceso rápida a archivos pequeños;

El tamaño del espacio en disco hoy en día es prácticamente ilimitado;

La fragmentación de archivos no afecta al sistema de archivos en sí;

Alta confiabilidad del almacenamiento de datos y de la propia estructura del archivo;

Alto rendimiento al trabajar con archivos grandes;

Defectos:

Mayores requisitos de RAM en comparación con FAT 32;

Trabajar con directorios de tamaño mediano resulta complicado debido a su fragmentación;

Velocidad de funcionamiento más lenta en comparación con FAT 3232

Ventajas:

Alta velocidad;

Requisito de RAM bajo;

Trabajo eficiente con archivos medianos y pequeños;

Menor desgaste del disco debido a menos movimientos del cabezal de lectura/escritura.

Defectos:

Baja protección contra fallas del sistema;

Trabajo ineficaz con archivos grandes;

Limitación del volumen máximo de una partición y un archivo;

Rendimiento reducido debido a la fragmentación;

Rendimiento reducido al trabajar con directorios que contienen una gran cantidad de archivos;

Entonces, ambos sistemas de archivos almacenan datos en clústeres cuyo tamaño mínimo es 512 b. Como regla general, el tamaño habitual de un clúster es de 4 Kb. Aquí es donde probablemente terminan las similitudes. Algo sobre la fragmentación: el rendimiento de NTFS disminuye drásticamente cuando el disco está lleno entre un 80 y un 90%. Esto se debe a la fragmentación de los archivos de servicio y trabajo. Cuanto más trabaje con un disco tan ocupado, mayor será la fragmentación y menor será el rendimiento. En FAT 32, la fragmentación del área de trabajo del disco se produce en etapas anteriores. El punto aquí depende de la frecuencia con la que escribe/borra datos. Al igual que ocurre con NTFS, la fragmentación reduce enormemente el rendimiento. Ahora sobre la RAM. El volumen de la propia hoja de cálculo FAT 32 puede ocupar unos varios megabytes de RAM. Pero el almacenamiento en caché viene al rescate. Qué se escribe en el caché:

Directorios más utilizados;

Datos sobre todos los archivos actualmente en uso;

Datos sobre espacio libre en disco;

¿Qué pasa con NTFS? Los directorios grandes son difíciles de almacenar en caché y pueden alcanzar un tamaño de varias decenas de megabytes. Además de MFT, además de información sobre el espacio libre en disco. Aunque cabe destacar que NTFS todavía utiliza recursos de RAM de forma bastante económica. Contamos con un exitoso sistema de almacenamiento de datos en MFT, cada registro tiene un tamaño aproximado de 1 Kb. Pero aún así, los requisitos de cantidad de RAM son mayores que los de FAT 32. En resumen, si su memoria es menor o igual a 64 Mb, entonces FAT 32 será más eficiente en términos de velocidad. La diferencia de velocidad será pequeña y, a menudo, nula. Ahora sobre el disco duro en sí. Para utilizar NTFS, se requiere Bus Mastering. ¿Qué es esto? Este es un modo especial de operación del conductor y del controlador. Cuando se utiliza BM, el intercambio se produce sin la participación del procesador. La ausencia de una VM afectará el rendimiento del sistema. Además, debido al uso de un sistema de archivos más complejo, aumenta el número de movimientos de los cabezales de lectura/escritura, lo que también afecta a la velocidad. La presencia de un caché de disco tiene un efecto igualmente positivo tanto en NTFS como en FAT 32.

Conclusión

Las ventajas de FAT son una baja sobrecarga de almacenamiento de datos y una compatibilidad total con una gran cantidad de sistemas operativos y plataformas de hardware. Este sistema de archivos todavía se utiliza para formatear disquetes, donde el gran volumen de partición admitido por otros sistemas de archivos no influye, y la baja sobrecarga permite el uso económico de un pequeño volumen de disquete (NTFS requiere más espacio para almacenar datos, lo que es completamente inaceptable para disquetes).

El alcance de FAT32 es en realidad mucho más limitado: este sistema de archivos debe usarse si va a acceder a particiones utilizando tanto Windows 9x como Windows 2000/XP. Pero dado que la relevancia de Windows 9x hoy prácticamente ha desaparecido, el uso de este sistema de archivos no resulta de especial interés.

Referencias

1. http://yura. Puslapiai. lt/archiv/per/fat.html




Arriba