Anda di halaman 1dari 15

El Ext3 es es un sistema de archivos con registro por diario (journaling).

Es el sistema de archivo ms 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 (Orlov es un asignador de bloques de disco originario de BSD y que se incluye en los sistemas de ficheros nativos de Linux ext3 y ext4 pues mejora el rendimento respecto al anterior gestor. Para activarlo y desactivarlo se emplean los comandos lsattr y chattr).

Ventajas Aunque su velocidad y escalabilidad es menor que sus competidores, como JFS, ReiserFS o XFS, tiene la ventaja de permitir actualizar de ext2 a ext3 sin perder los datos almacenados ni tener que formatear el disco. Tiene un menor consumo de CPU y esta considerado mas seguro que otros sistemas de ficheros en Linux dada su relativa sencillez y su mayor tiempo de prueba. El sistema de archivo ext3 agrega a ext2 lo siguiente: * Registro por diario. * ndices en rbol para directorios que ocupan mltiples bloques. * Crecimiento en lnea.

Niveles de 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 esta 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 mayora de las distribuciones de Linux. Si hay un bajn de tensin o kernel Panic cuando el fichero se est escribiendo o esta 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. Los contenidos pueden estar escritos antes o despues 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 comprobacin. Las versiones antiguas de los archivos pueden aparecer inesperadamente despues de una recuperacin de diario. La carencia de sincronizacin entre los datos y el diario es rpidamente subsanada en muchos casos. JFS usa este nivel de journaling, pero se asegura de que cualquier basura es borrada al reiniciar.

Desventajas Funcionalidad Como ext3 esta hecho para ser compatible con ext2, la mayoria de las estructuras del archivacin son similares a las del ext2. Por ello, ext3 carece de muchas caractersticas de los diseos mas recientes como las extensiones, la localizacin dinamica de los inodos, y la sublocalizacin de los bloques. Hay un limite de 31998 subdirectorios por cada directorio, que se derivan de su limite de 32 links por inodo. Ext3, como la mayora de los sistemas de archivos actuales de Linux, no puede ser chequeado por el fsck mientras el sistema de archivos esta montado para la escritura. Si se intenta chequear un sistema de ficheros que esta montado puede detectar falsos errores donde los datos no han sido volcados al disco todava, y corromper el sistema de archivos al intentar arreglar esos errores.

Desfragmentacin

No hay herramienta de desfragmentacin online para ext3 que funcione en nivel del sistema de archivos. Existe un desfragmentador offline para ext2, e2defrag, pero requiere que el sistema de archivos ext3 sea reconvertido a ext2 antes de iniciarse. Pero dependiendo de los bits encendidos en el sistema, e2defrag puede destruir datos. No sabe como tratar la mayora de las nuevas caracteristicas de ext3. Hay herramientas de usuario para desfragmentar como Shake y Defrag. Shake trabaja localizando para todo el archivo como una operacin, lo que generalmente causa que el localizador encuentre espacio continuo en el disco. Tambin intenta escribir archivos usados al mismo tiempo que otros. Defrag trabaja copiando cada archivo sobre si mismo. De todas formas solo funcionan si el sistema de archivos esta razonablemente vacio. No existe una verdadera herramienta de desfragmentacin para ext3. Como se viene diciendo, la guia de administracin de Linux dice: "Los modernos sistemas de archivos de Linux mantienen la fragmentacin al mnimo manteniendo los bloques de un archivo juntos, aunque no puedan ser guardados en sectores consecutivos. Algunos sistemas de archivos, como ext3, localizan efectivamente los bloques libres mas cercanos a otros en el archivo. Por ello no es necesario preocuparse por la fragmentacin en un sistema de Linux" Mientras ext3 es ms resistente a la fragmentacin que FAT, nada evita que los sistemas ext3 se puedan fragmentar con el tiempo. Consecuentemente el sucesor de ext3, ext4, incluye una utilidad de desfragmentacin y soporte para extensiones (regiones contiguas del fichero).

Compresin El soporte para la compresin esta disponible como un parche no oficial para ext3. Este parche es un porte directo de e2compr pero necesita un mayor desarrollo ya que todava no implementa el journaling. El actual parche es llamado e3compr. No hay comprobacin en el diario Ext3 no hace la suma de verificacin cuando esta escribiendo en el diario. Si barrier = 0 no esta habilitado como una opcin de montaje, y si el hardware esta escribiendo fuera de la orden, se corre el riesgo de una corrupcin muy amplia del sistema de archivos en caso de que haya un fallo repentino del hardware.

El Ext4 es un sistema de archivos con registro por diario (en ingls Journaling), anunciado el 10 de octubre de 2006 por Andrew Morton, como una mejora compatible de ext3. El 25 de diciembre de 2008 se public el kernel Linux 2.6.28, que elimina ya la etiqueta de "experimental" de cdigo de ext4. Las principales mejoras son: * Soporte de volmenes de hasta 1024 PiB. * Soporte aadido de extent. * Menor uso del CPU. * Mejoras en la velocidad de lectura y escritura.

Mejoras Sistema de archivos de gran tamao El sistema de archivos ext4 es capaz de trabajar con volmenes de hasta 1 exbibyte y ficheros de tamao de hasta 16 TiB. Extents Los extents han sido introducidos para reemplazar al tradicional esquema de bloques usado por los sistemas de archivos ext2/3. Un extent es un conjunto de bloques fsicos contiguos, mejorando el rendimiento al trabajar con ficheros de gran tamao y reduciendo la fragmentacin. Un extent simple en ext4 es capaz de mapear hasta 128MiB de espacio contiguo con un tamao de bloque igual a 4KiB. Compatibilidad hacia adelante y hacia atrs El sistema de archivos ext3 es compatible adelante con ext4, siendo posible montar un sistema de archivos ext3 como ext4 y usarlo transparentemente. Del mismo modo ext4 es parcialmente compatible hacia atrs con ext3 ya que puede ser montado como una particin ext3 con la excepcin de que si la particin ext4 usa extents, se pierde esta posibilidad. Extents estn configurados por defecto desde la versin del kernel 2.6.23. Anteriormente, esta opcin requera ser activada explcitamente (por ejemplo mount /dev/sda1 /mnt/point -t ext4dev -o extents).

Asignacin persistente de espacio El sistema de archivos ext4 permite la reserva de espacio en disco para un fichero. La actual metodologa consiste en rellenar el fichero en el disco con ceros en el momento de su creacin. Esta tcnica no es ya necesaria con ext4, ya que una nueva llamada del sistema "preallocate()" ha sido aadida al kernel Linux para uso de los sistemas de archivos que permitan esta funcin. El espacio reservado para estos ficheros quedar garantizado y con mucha probabilidad ser contiguo. Esta funcin tiene tiles aplicaciones en streaming y bases de datos.
Asignacin retrasada de espacio Ext4 hace uso de una tcnica de mejora de rendimiento llamada Allocateon-flush, tambin conocida como reserva de memoria retrasada. Consiste en retrasar la reserva de bloques de memoria hasta que la informacin est a punto de ser escrita en el disco, a diferencia de otros sistemas de archivos, los cuales reservan los bloques necesarios antes de ese paso. Esto mejora el rendimiento y reduce la fragmentacin al mejorar las decisiones de reserva de memoria basada en el tamao real del fichero.

Lmite de 32000 subdirectorios superado En ext3 el nivel de profundidad en subdirectorios permitido estaba limitado a 32000. Este lmite ha sido aumentado a 64000 en ext4, permitiendo incluso ir ms all de este lmite (haciendo uso de "dir_nlink". Para permitir un rendimiento continuo, dada la posibilidad de directorios mucho ms grandes, htree est activado por defecto en ext4. Esta funcin est implementada desde la versin 2.6.23. htree est tambin disponible en ext3 cuando la funcin dir_index est activada.

Journal checksumming ext4 usa checksums en el registro para mejorar la fiabilidad, puesto que el journal es uno de los ficheros ms utilizados en el disco. Esta funcin tiene un efecto colateral beneficioso: permite de forma segura evitar una lectura/escritura de disco durante el proceso de registro en el journal, mejorando el rendimiento ligeramente. La tcnica del journal checksumming est inspirada en la investigacin de la Universidad de Wisconsin en sistemas de archivos IRON (Seccin 6, bajo el nombre "checksums de transacciones".
Desfragmentacin online Incluso haciendo uso de diversas tcnicas para evitar la fragmentacin, un sistema de larga duracin tiende a fragmentarse con el tiempo. Ext4 dispondr de una herramienta que permite desfragmentar ficheros individuales o sistemas de ficheros enteros.

Chequeo del sistema de ficheros ms rpido En ext4, los grupos de bloques no asignados y secciones de la tabla de inodos estn marcados como tales. Esto permite a e2fsck saltrselos completamente en los chequeos y en gran medida reduce el tiempo requerido para chequear un sistema de archivos del tamao para el que ext4 est preparado. Esta funcin est implementada desde la versin 2.6.24 del kernel Linux. Asignador multibloque Ext4 asigna mltiples bloques para un fichero en una sola operacin, lo cual reduce la fragmentacin al intentar elegir bloques contiguos en el disco. El asignador multibloque est activo cuando se usa 0_DIRECT o si la asignacin retrasada est activa. Esto permite al fichero tener diversos bloques "sucios" solicitados para escritura al mismo tiempo, a diferencia del actual mecanismo del kernel de solicitud de envo de cada bloque al sistema de archivos de manera separada para su asignacin. Timestamps mejorados Puesto que los ordenadores se tornan en general cada vez ms rpidos y que Linux est pasando a ser cada vez ms usado en aplicaciones crticas, la granularidad de los timestamps basados en segundos se est volviendo insuficiente. Para resolver esto, ext4 tendr timestamps medidos en nanosegundos. sta funcin est actualmente implementada en la versin 2.6.23 del kernel. Adicionalmente se han aadido 2 bits del timestamp extendido a los bits ms significativos del campo de segundos de los timestamps para retrasar casi 500 aos el problema del ao 2038.

Anda mungkin juga menyukai