3 meneos
102 clics

¿Cómo funcionan los sistemas de archivos FAT?

¿Os habéis preguntado alguna vez porque un fichero de texto con un solo caracter ocupa varios Kb de espacio en disco? ¿Cómo hacen los ordenadores para grabar archivos, leerlos y borrarlos? ¿Y cómo hacen los aparatos electrónicos como las cámaras de fotos para guardar las imágenes en archivos? En este artículo se presenta la arquitectura de los sistemas de archivos FAT orientado al diseño de equipos electrónicos con tarjetas MMC, también llamadas tarjetas SD o tarjetas multimedia

negativos: 6   usuarios: 2   anónimos: 1  
compartir:  twitter  facebook  tuenti  
  1. #1   Esto es más antiguo que el sol. ¿FAT? Si eso ya sólo se usa residualmente...
    15  votos: 0   link
    el 23-11-2011 09:47 UTC por --29907-- --29907--
  2. #2   #1 No tan residualmente. Las tarjetas de memoria suelen estar formateadas en FAT. Y la muchos GPS, teléfonos, tabletas...
    15  votos: 0   link
    el 23-11-2011 09:52 UTC por tollendo tollendo
  3. #3   #2 Pero es por costumbre... Es un sistema de archivos que se dirige a la extinción. (Esto es opinión personal, no pretende ser dogma de fe).
    15  votos: 0   link
    el 23-11-2011 09:53 UTC por --29907-- --29907--
  4. #4   #1 Es una arquitectura muy sencilla para guardar datos de forma ordenada cuando no hay lugar para grandes capacidades de almacenamiento, por ejemplo en sistemas embebidos. Sistemas que crecen cada día más pues donde antes no había lógica ni programación, como en lavadoras, neumáticos, cerraduras, etc... Hoy hay complejos sistemas electrónicos basados en microcontrolador, con necesidad de guardar datos, etc.
    ¿En extinción?... Si no eres capaz de ver más allá de un PC...
    9  votos: 0   link
    el 23-11-2011 09:57 UTC por Nidala Nidala
  5. #5   #4 Trabajo en el mundo de los sistemas embebidos...
    15  votos: 0   link
    el 23-11-2011 09:57 UTC por --29907-- --29907--
  6. #6   Bueno, sabes tanto que no voy a discutir, tan solo comentarte un dato: FAT32 tiene millón y medio de búsquedas mensuales en Google, alguien lo usará...
    9  votos: 0   link
    el 23-11-2011 10:32 UTC por Nidala Nidala
  7. #7   #1 #3 No es tanto por costumbre sino por obligación. Si quieres que tu dispositivo de almacenamiento pueda ser usado por Windows tienes dos opciones: usar uno de los sistemas de archivos soportados de forma nativa por Windows o suministrar un "driver" para Windows que implemente tu sistema de ficheros.

    Si escogemos la primera opción, tenemos disponibles la siguiente lista de sistemas de ficheros:

    1º FAT, en sus tres dialectos: FAT12, FAT16 y FAT32. Tiene la ventaja de que su uso casi no requiere licencias, excepto si queremos usar la extensión VFAT de conversión de nombres 8+3 a nombres largos de 255 caracteres, y eso es discutible (y tal vez ya haya caducado).

    2º NTFS, que es extremadamente complicado de implementar, además de ser muy, pero que muy lento.

    3º ISO9660, que es el empleado en los CD's y DVD's y es sólo de lectura.

    4º UDF, empleado principalmente en CD-RW y DVD-RW. Existen diferentes niveles de soporte según las diferentes versiones de Windows.

    5º exFAT: es una extensión de la FAT desarrollada por Microsoft y que requiere instalación de software extra en la mayoría de las versiones de Windows, además de pagar licencia a Microsoft por su uso.

    De esta forma, en realidad sólo tienes dos sistemas de ficheros factibles: FAT y UDF, y el FAT es tan sencillo de implementar que se puede usar desde cualquier cosa. Además de estar soportado por cualquier sistema operativo desarrollado los últimos 15 años.
    6  votos: 0   link
    el 23-11-2011 12:22 UTC por Ed_Hunter Ed_Hunter
  8. #8   #7 Ext2 como FS y añadir una pequeña particion con EXT2FSD para instalar en cualquier Windwos.
    10  votos: 0   link
    el 23-11-2011 12:24 UTC por andertxu andertxu
  9. #9   #8 Ya, pero ¿en qué sistema de ficheros pones el EXT2FSD? ¿podría usarse aunque el usuario no tenga permisos de administrador? ¿Funciona EXT2FSD en todos los Windows? ¿y para MacOS? Además con esto pierdes espacio de disco.

    Todo esto sin tener en cuenta que ext2 es también más complicado de implementar que FAT.
    6  votos: 0   link
    el 23-11-2011 12:45 UTC por Ed_Hunter Ed_Hunter
  10. #10   Como bien apuntáis, la pérdida de espacio es vital. En este sentido en pequeños equipos con memorias NVRAM o flash de unos cuantos Kb, se usa incluso FAT12. En fin, me han fundido a negativos con la de noticias y blogs chorra que hay por aquí, espero de todos modos que os haya gustado el artículo y el blog.
    9  votos: 0   link
    el 23-11-2011 13:08 UTC por Nidala Nidala
  11. #11   #9 "Todo esto sin tener en cuenta que ext2 es también más complicado de implementar que FAT"

    ¿Seguro? pues como programador permiteme que discrepe.

    www.fifi.org/doc/e2fslibs/html-info/libext2fs_toc.html

    "Además pierdes espacio de disco"

    Mira el tamaño de las direcciones de asignación de cluster en FAT a ver si luego piensas lo mismo.

    ¿Podría usarse aunque el usuario no tenga permisos de administrador?

    Se supone que lo has programado tu, por lo tanto ya te encargarás de indicar en que directorios el usuario puede grabar (en caso de que lo montes como una unidad usb), en caso contrario si se utiliza directamente desde el sistema embedido tampoco te tienes que preocupar.


    ¿Funciona EXT2FSD en todos los Windows?
    Windows 2000, xp, 2003, Vista, Win7 (X86, AMD64)

    ¿y para MacOS?
    fuse-ext2
    9  votos: 0   link
    el 23-11-2011 15:48 UTC por albandy albandy
  12. #12   #11 Me refiero a implementar en dispositivos empotrados, requieren una CPU más potente que para implementar una FAT porque requiere hacer más cálculos para encontrar los sectores. No es lo mismo recorrer una tabla que un i-tree.

    En cuanto a la perdida de disco me refería al espacio dedicado a incorporar el EXT2FSD para que el Windows pueda acceder a la partición ext2. Lo mismo me refería a los permisos administrativos, ¿puede un usuario sin privilegios administrativos instalar EXT2FSD en su Windows y montar la partición ext2?.

    En cualquier caso, esta opción es la que en mi comentario original indicaba como segunda opción: usar un sistema de ficheros cualquiera no soportado y suministrar el driver para Windows. Si descartamos esta opción, por los problemas de tener que suministrar el driver y los problemas de instalarlo, la mejor opción restante es usar FAT.

    Además existen mejores opciones a ext2, como por ejemplo YAFFS2, UBIFS, LogFS, etc. especialmente diseñados para memorias tipo flash.
    6  votos: 0   link
    el 23-11-2011 16:42 UTC por Ed_Hunter Ed_Hunter
  13. #13   #12 Exacto, la capacidad del micro también es determinante, la implementación del sistema de archivos del artículo, por ejemplo, se hizo con un micro MSP430F149, el cual tiene solo 2Kb de RAM. ¿Por qué usar este micro? Por que un requisito era que el equipo durase 2 años con un par de baterías AA.
    9  votos: 0   link
    el 23-11-2011 17:20 UTC por Nidala Nidala
comentarios cerrados

menéame