1 / 14

Diseño de sistemas de archivos

Diseño de sistemas de archivos. Sistemas FAT.

chas
Download Presentation

Diseño de sistemas de archivos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Diseño de sistemas de archivos

  2. Sistemas FAT • son los sistemas de fichero utilizados en DOS y primeras versiones Windows de Microsoft.  La característica principal (a la que deben su nombre), es que el estado de cada unidad de información del dispositivo, está reflejado en un catálogo denominado tabla de situación de ficheros FAT ("FileAllocationTable").  Esta tabla es muy importante porque es el índice del contenido del disco.  Cualquier error aquí puede convertir la unidad en inutilizable, razón por la que está duplicada.  Ambas copias ocupan lugares consecutivos en los primeros sectores del disco.  Justamente a continuación del primero, el VBS ("VolumeBoot Sector" que tiene un mapa con la geometría del volumen (en ocasiones hay un espacio entre el VBS y las FAT).

  3. No hace falta decir que en unidades de gran capacidad, la tabla es necesariamente muy grande.  Generalmente se carga en memoria para agilizar los procesos, ya que es de uso constante y cualquier operación de lectura/escritura tiene que utilizarla.  En consecuencia, se han ingeniado métodos para que estos índices ocupen el menor espacio posible.

  4. Tablas FAT • Los sistemas FAT y muchos otros, utilizan un método de grabación que agrupa varios sectores en una misma unidad ("Allocationunit") también llamada cluster, traducida al español como unidad de asignación, a la que ya hemos hecho referencia. Esta es la menor unidad de grabación lógica que utiliza el Sistema en la unidad, de forma que un fichero se grabará siempre utilizando un número entero de clusters. • Todos los sistemas FAT han utilizado tamaños de cluster dependientes del tamaño de la unidad. En los disquetes ha sido de 1 o 2 sectores por cluster, es decir, 512 o 1024 bytes .  El primer disco duro de 10 MB del IBM PC-XT utilizaba cluster de 8 sectores.

  5. NTFS • Windows NT fue diseñado desde el principio para ser un sistema operativo de red y multitarea que rompiese definitivamente cualquier nexo con sus ancestros MS-DOS, para lo que se diseñó un nuevo sistema de ficheros partiendo de un diseño radicalmente nuevo. • El sistema resultante, denominado NTFS ("New TechnologyFileSystem") es un sistema muy robusto que permite compresión de ficheros uno a uno;  un protocolo de autorización de uso y de atributos de fichero muy desarrollado;  sistema de operación basado en transacciones; soporte RAID [2];  posibilidad de juntar las capacidades de dos unidades en un volumen único ("Disk striping") y muchas otras mejoras, como es la capacidad de anotar clusters malos ("Hot fixing") en run-time.

  6. ext3 • ext3 (third extended filesystem o "tercer sistema de archivos extendido") es un sistema de archivos con registro por diario (journaling). Es el sistema de archivo más usado en distribuciones Linux, aunque en la actualidad está siendo remplazado por su sucesor, ext4. • La principal diferencia con ext2 es el registro por diario. Un sistema de archivos ext3 puede ser montado y usado como un sistema de archivos ext2. Otra diferencia importante es que ext3 utiliza un árbol binario balanceado (árbol AVL) e incorpora el asignador de bloques de disco Orlov.

  7. Niveles del Journaling • Hay tres niveles posibles de Journaling (registro por diario) • Diario (riesgo bajo) Los metadatos y los ficheros de contenido son copiados al diario antes de ser llevados al sistema de archivos principal. Como el diario está en el disco continuamente puede mejorar el rendimiento en ciertas ocasiones. En otras ocasiones el rendimiento es peor porque los datos deben ser escritos dos veces, una al diario y otra a la parte principal del sistema de archivos. Pedido (riesgo medio) Solo los metadatos son registrados en el diario, los contenidos no, pero está asegurado que el contenido del archivo es escrito en el disco antes de que el metadato asociado se marque como transcrito en el diario. Es el sistema por defecto en la mayoría de las distribuciones de Linux. Si hay un bajón de tensión o kernelPaniccuando el fichero se está escribiendo o está empezando, el diario indicará que el nuevo archivo o el intento no ha sido pasado, por lo que sera purgado por el proceso de limpiado Reescritura (riesgo alto) Solo los metadatos son registrados en el diario, el contenido de los archivos no.

  8. Los contenidos pueden estar escritos antes o después de que el diario se actualice. Como resultado, los archivos modificados correctamente antes de una ruptura pueden volverse corruptos. Por ejemplo, un archivo pendiente de ser marcado en el diario como mayor de lo que actualmente es, convirtiendo en basura al final de la comprobación. Las versiones antiguas de los archivos pueden aparecer inesperadamente después de una recuperación de diario. La carencia de sincronización entre los datos y el diario es rápidamente subsanada en muchos casos. JFS usa este nivel de journaling, pero se asegura de que cualquier basura es borrada al reiniciar

  9. XFS • XFS es un sistema de archivos de 64 bits con journaling de alto rendimiento creado por SGI (antiguamente SiliconGraphics Inc.) para su implementación de UNIX llamada IRI. En mayo del 2000, SGI liberó XFS bajo una licencia de código abierto. • XFS se incorporó a Linux a partir de la versión 2.4.25, cuando Marcelo Tosatti (responsable de la rama 2.4) lo consideró lo suficientemente estable para incorporarlo en la rama principal de desarrollo del kernel. Los programas de instalación de las distribuciones de SuSE, Gentoo, Mandriva, Slackware, FedoraCore, Ubuntu y Debian ofrecen XFS como un sistema de archivos más. En FreeBSD el soporte para solo-lectura de XFS se añadió a partir de Diciembre de 2005 y en Junio de 2006 un soporte experimental de escritura fue incorporado a FreeBSD-7.0-CURRENT.

  10. Capacidad • XFS soporta un sistema de archivos de hasta 9 exabytes, aunque esto puede variar dependiendo de los límites impuestos por el sistema operativo En sistemas Linux de 32 bits, el límite es 16 terabytes. • Registro de Bitácora (Journaling) • XFS provee soporte para llevar un registro (journaling), donde los cambios al sistema de archivos primero son escritos a un diario o journal antes de que se actualicen los datos del disco. El journal es un buffer circular de bloques del disco que no son parte del sistema de archivos. En XFS el registro (journal) contiene entradas 'lógicas' que describen a un alto nivel las operaciones que se están realizando, al contrario de otros sistemas de archivo con un registro (journal) 'físico', que guardan una copia de los bloques modificados durante cada transacción. Las actualizaciones del registro (journal) se realizan asincrónicamente para evitar una baja en el rendimiento. En el caso de una caída repentina del sistema, las operaciones inmediatamente anteriores a la caída pueden ser terminadas, garantizando así la consistencia del sistema. La recuperación se realiza automáticamente a la hora del montaje del sistema de archivos y la velocidad de recuperación es independiente del tamaño del sistema de archivos. Incluso si alguna información que fuese modificada inmediatamente antes de la caída del sistema no fuese escrita al disco, XFS se encarga de borrar todos los bloques de datos sin escribir, eliminando así cualquier compromiso de seguridad.

  11. Grupos de asignación • Los sistemas de archivos XFS están particionados internamente en grupos de asignación, que son regiones lineares de igual tamaño dentro del sistema de archivos. Los archivos y los directorios pueden crear grupos de asignación. Cada grupo gestiona sus inodos y su espacio libre de forma independiente, proporcionando escalabilidad y paralelismo — múltiples hilos pueden realizar operaciones de E/S simultáneamente en el mismo sistema de archivos. • LVM • Es posible aumentar la capacidad de sistemas de ficheros XFS: xfsgrowfs es ideal para particiones LVM

  12. exFAT • exFAT (Extended FileAllocationTable) es un sistema de archivos especialmente adaptado para memorias flash presentado con Windows EmbeddedCE 6.0. exFAT se utiliza cuando el sistema de archivos NTFS no es factible debido a la sobrecarga de las estructuras de datos. • En el nuevo Microsoft Windows 7, en el administrador de discos ya permite realizar el formato en exFAT, sin necesidad de actualizar el sistema. • Mac OS X Snow Leopard 10.6.5 da soporte completo para exFAT desde el 10 de Noviembre de 2010.

  13. Ventajas • Límite teórico para el tamaño de fichero de 264bytes (16 Exbibytes), límite aumentado desde 232 bytes (4 Gibibytes). • Tamaño de cluster de hasta 2255 bytes, límite implementado de 32MB. • Mejoras en el rendimiento de la asignación de espacio libre gracias a la introducción de un free spacebitmap. • Soporte para más de 1000 ficheros en un solo directorio. • Soporte para listas de control de acces. • Soporte para Transaction-Safe FAT FileSystem (TFAT) (función activada opcionalmente en WinCE). • En Windows 7, la funcionReadyBoost mejora su capacidad, al eliminarse el limite de archivos de 4Gb del sistema FAT.

  14. Desventajas • Los dispositivos formateados en exFAT no pueden utilizar la característica ReadyBoost de Windows Vista. • En Windows XP y Windows Server 2003, se debe tener instalado al menos en Service Pack 2 para poder instalar la actualización de compatibilidad con exFAT. • En Windows Vista se debe instalar en Service Pack 1 para añadir compatibilidad con exFAT. • Los dispositivos que usan el formato de archivos exFAT no pueden se leídos por versiones anteriores a Windows XP, ni por versiones de DOS o OS/2. Algunos Sistemas Operativos independientes de Microsoft, como Linux, solo tienen soporte para la lectura de exFAT, no estando aun disponible la escritura • Hay soporte Completo de ExFaT para linux.

More Related