fat32, organización y arquitectura de las computadoras

12
FAT32 Equipo #3

Upload: juan-novelo

Post on 06-Jul-2015

742 views

Category:

Documents


0 download

DESCRIPTION

Breve sobre el formato FAT32

TRANSCRIPT

Page 1: FAT32, Organización y Arquitectura de las Computadoras

FAT32

Equipo #3

Page 2: FAT32, Organización y Arquitectura de las Computadoras

FAT32

Aunque el VFAT era un sistema inteligente, no afrontaba las limitaciones de FAT16. Como resultado, surgió un nuevo sistema de archivos en Windows 95 OSR2 (el cual no sólo contaba con una mejor administración FAT como fue el caso de VFAT). Este sistema de archivos, denominado FAT32 utiliza valores de 32 bits para las entradas FAT. Sólo se utilizan 28 bits, ya que 4 bits se reservan para su uso en el futuro.

Page 3: FAT32, Organización y Arquitectura de las Computadoras

FAT32

Cuando surgió el sistema de archivos FAT32, el máximo número de clústers por partición aumentó de 65535 a 268.435.455 (228-1). Por lo tanto, FAT32 permite particiones mucho más grandes (hasta 8 terabytes). Aunque en teoría, el tamaño máximo de una partición FAT32 es de 8 TB, Microsoft lo redujo, voluntariamente, a 32 GB en los sistemas 9x de Windows para promover NTFS. Ya que una partición FAT32 puede contener muchos clústers más que una partición FAT16, es posible reducir significativamente el tamaño de los clústers y, así, limitar también el espacio desperdiciado del disco. Por ejemplo, con una partición de 2 GB, es posible usar clústers de 4KB con sistemas FAT32 (en lugar de clústers de 32KB con sistemas FAT16), que reducen el espacio desperdiciado por un factor de 8.

Page 4: FAT32, Organización y Arquitectura de las Computadoras

FAT32

El intercambio radica en que FAT32 no es compatible con las versiones de Windows previas al OEM Service Release 2. Un sistema que arranque con una versión anterior simplemente no verá este tipo de particiones. Asimismo, las utilidades de administración de un disco de 16 bits, como ser versiones antiguas de Norton Utilities, ya no funcionarán correctamente. En términos de realización, el uso de un sistema FAT32 en lugar de un sistema FAT16 tendrá como resultado una mejora, de aproximadamente 5%, en el rendimiento.

Page 5: FAT32, Organización y Arquitectura de las Computadoras

Comparación de cluster

Tamaño del clúster

Sistema de archivos FAT16

Sistema de archivos FAT32 (en teoría)

512 bytes 32 MB 64 MB1 KB 64 MB 128 MB2 KB 128 MB 256 MB4 KB 256 MB 8 GB

(1 TB)8 KB 512 MB 16 GB

(2 TB)16 KB 1 GB 32 GB

(4 TB)32 KB 2 GB 2 GB

(8 TB)

Page 6: FAT32, Organización y Arquitectura de las Computadoras

Ventajas y desventajas

Page 7: FAT32, Organización y Arquitectura de las Computadoras

FAT32

Para que un sistema operativo reconozca una unidad de almacenamiento con el sistema de archivos FAT32, en el primer sector lógico tienen que encontrarse una serie de datos sobre la unidad. Este sector se denomina sector de arranque, Boot Sector, o sector cero. Tras este sector hay un espacio reservado, típicamente de 32 sectores.

Page 8: FAT32, Organización y Arquitectura de las Computadoras

El sector cero

Los discos con sistema de archivos FAT32 tienen información útil en el sector cero para trabajar con ellos. Esta información se encuentra almacenada en campos definidos por el estándar de Microsoft y su contenido se explica a continuación.

BS_jmpBoot (Bytes del 0 al 2): Salto a la rutina de arranque. Normalmente un disco no tendrá otra rutina de arranque que la de escribir “Retire disco y presione una tecla” o similares, salvo que sea uno de los denominados discos de arranque.

BS_OEMName (Del byte 3 al 10): Es sólo un string. Los sistemas operativos Microsoft Windows escriben “MSDOS5.0”, pese a que en su documento FAT: General Overview of On-Disk Format indican que el string “MSWIN4.1” es el recomendado para una mayor compatibilidad.

BPB_BytsPerSec (Bytes 11 y 12): Indica el número de bytes por sector. Lo deseado para máxima compatibilidad es 512.

Page 9: FAT32, Organización y Arquitectura de las Computadoras

El sector cero

BPB_SecPerClus (Byte 13): Indica el número de sectores contenidos en un cluster. Sus valores legales son potencias de dos. El valor del número de bytes por cluster (BPB_BytsPerSec * BPB_SecPerClus)

no debe ser mayor que 32 Kb.

Dependiendo del tamaño del disco se utilizará un valor u otro, por ejemplo, en FAT32:

64 Mb: un cluster será un sector.

128 Mb: un cluster serán dos sectores.

256 Mb: un cluster serán cuatro sectores.

32 Gb: un cluster serán treinta y dos sectores

Page 10: FAT32, Organización y Arquitectura de las Computadoras

FAT32

BPB_RsvdSecCnt (Bytes 14 y 15): Indica el número de sectores reservados del volumen, comenzando por el primer sector del volumen. Este campo no puede ser cero. Para volúmenes FAT12 y FAT16 este campo no puede tener otro valor que uno. En sistemas FAT32, típicamente es 32.

BPB_NumFATs (Byte 16): Número de tablas FAT en el volumen. Este campo típicamente contiene dos para cualquier tipo de volumen FAT. Su utilidad es guardar una copia de seguridad de las cadenas de clusters para posibilitar las recuperaciones de datos.

BPB_RootEntCnt (Bytes 17 y 18): Contiene el número de entradas de 32 bytes al directorio raíz. Su valor multiplicado por 32 debe ser múltiplo de BPB_BytsPerSec. Para una máxima compatibilidad, los sistemas FAT16 suelen usar el valor 512. En sistemas FAT32, su valor puede ser cero porque el directorio raíz se estructura como un fichero y se direcciona en la tabla FAT.

BPB_TotSec16 (Bytes 19 y 20): Número de sectores del volumen. Si es cero, es porque el valor es mayor o igual que 0×10000, entonces BPB_TotSec32 debe ser distinto de cero.

Page 11: FAT32, Organización y Arquitectura de las Computadoras

Cómo se escribe un fichero en un sistema de archivos FAT 32

Un archivo en FAT32 tiene, junto con sus atributos y nombre, el número del primer cluster de dicho archivo. Tras leer dicho cluster, en adelante ultimoClusterProcesado; se deberá averiguar cuál es el siguiente cluster libre en disco, en adelante siguienteCluster. Para calcular siguienteCluster hay que tener en cuenta que ultimoClusterProcesado, aunque no esté marcado como ocupado lo está, debiendo por ello ignorarlo en este cómputo. Una vez concluido ultimoClusterProcesado y calculado siguienteCluster, se escribe en la posición de FAT correspondiente a ultimoClusterProcesado el número que apunte a siguienteCluster y así sucesivamente.

Cuando una cadena de clusters acaba, se marca fin de cadena de clusters haciendo siguienteCluster = 0xFFFFFFF8, indicando que no hay siguiente cluster, si la cadena de clusters se refiriese a un directorio la marca es 0x0FFFFFFF.

Page 12: FAT32, Organización y Arquitectura de las Computadoras

Estas y otras marcas de interés en la FAT se listan a

continuación: