Bastante complejo. Hay diferencias significativas entre los sistemas de archivos que menciona, y determinar el impacto de estas diferencias en la velocidad es, en mi humilde opinión, no trivial y depende de las operaciones que se realizarán.
Primero, descartemos la posibilidad de instalar su sistema de archivos raíz en una partición FAT o NTFS. Estos sistemas de archivos no son adecuadamente compatibles con el kernel de Linux y los permisos del sistema de archivos de Linux no funcionan correctamente en ellos, por lo que tendría muchos problemas interesantes.
Nota : FAT32 es una buena opción para medios de instalación USB, y NTFS es una buena opción en un escenario de arranque dual (con Windows) para particiones en las que desea usar para almacenar cosas personales (como su biblioteca de medios, por ejemplo) que deberían ser accesibles tanto a Ubuntu (o cualquier otro sistema Linux) como a Windows. Los sistemas Linux pueden leer (y escribir) particiones NTFS siempre que se hayan montado correctamente, pero las particiones ext * no son fáciles de leer en Windows (que yo sepa).
Los sistemas ext * fueron diseñados para ser utilizados con el kernel de Linux. Usar ext2,3 o 4 para su instalación de Ubuntu sería perfectamente sensato. Probablemente las mayores diferencias entre ellos son
- ext2 no es diario
- ext3 es diario, pero por lo demás tiene estructuras y características de datos similares a ext2
- ext4 es diario y tiene algunas características que mejoran el rendimiento, incluido un algoritmo más rápido para la asignación de bloques en comparación con los sistemas ext * anteriores, aunque tiene estructuras de datos similares.
Es importante tener en cuenta, creo, que la velocidad no es la única consideración al elegir un sistema de archivos. Ext4 tiene menos limitaciones que las versiones anteriores, lo que permite un sistema de archivos más grande, subdirectorios ilimitados, etc. Ext3 es considerado por algunos como más probado, más seguro y un poco menos propenso a perder datos. Intentaré centrarme en la velocidad aquí, mientras menciono solo las cosas más destacadas además del rendimiento.
¿Esperar lo? Journalling? 1
Un sistema de archivos de diario , en resumen, mantiene un registro de los cambios que aún no se han escrito en la parte principal del sistema de archivos. Esto se hace para que, en caso de bloqueo, sea fácil verificar la consistencia del sistema de archivos comparando el diario con lo que se ha escrito en el área principal del sistema de archivos. Esto significa que la velocidad de verificación del sistema de archivos es mucho más rápida con ext3 y ext4. Además, debido a que ext4 permite que se marquen los bloques no asignados, se puede omitir su verificación, lo que lo hace fsck
aún más rápido.
Ext4 también suma sumas al diario (lo que permite menos esperas de E / S al escribir), lo que da un ligero aumento general de la velocidad en comparación con ext3.
La comprobación de la consistencia del sistema de archivos puede no ser necesaria con mucha frecuencia, y el diario tiene un precio: más escrituras en disco. Esto no solo es malo para la vida útil de un SSD rápido, sino que también puede disminuir el rendimiento (la escritura lleva tiempo). Sin embargo, el consenso general parece ser que el diario vale la pena el costo.
Características que mejoran el rendimiento de ext4
Ext4 admite la fallocate()
llamada del sistema para preasignar espacio para un archivo. El núcleo asigna algunos bloques y los marca como inicializados sin escribir en ellos, lo que es mucho más rápido que escribir ceros en el espacio como se hizo en sistemas de archivos más antiguos.
También utiliza la asignación retrasada (o allocate-in-flush ) que agrupa las asignaciones (en lugar de realizar muchas pequeñas), lo que tiende a reducir el uso de la CPU y evitar la fragmentación.
Ext4 es compatible con versiones anteriores de ext2 y ext3, lo que significa que los sistemas de archivos ext2 y 3 se pueden montar como ext4 y disfrutar de un modesto beneficio de rendimiento, ya que se pueden usar algunas características como el nuevo algoritmo de asignación de bloques.
Otros sistemas de archivos
Ext * no son los únicos sistemas de archivos totalmente compatibles con Linux, aunque son los más conocidos y probados. Otros sistemas de archivos utilizan alternativas al diario y tienen características innovadoras que pueden afectar el rendimiento. Btrfs , por ejemplo, usa una copia en escrituramétodo para preservar la integridad del sistema de archivos en lugar de un diario. Tiene diferentes estructuras de datos para los sistemas ext *. Hasta donde sé, no se sabe que Btrfs proporcione un rendimiento general más rápido que ext4, pero se considera particularmente bueno para el almacenamiento de archivos de archivos de video de fotos, ya que es menos probable que sufran degradación. Permite verificar y limpiar la consistencia del sistema de archivos mientras está en uso, lo que puede ahorrar tiempo dependiendo de su caso de uso. En el futuro, Btrfs u otro sistema de archivos innovador puede desarrollarse aún más para superar a ext4 de manera convincente en velocidad general.
Conclusión
La mayoría de los usuarios de Ubuntu que buscan un buen rendimiento querrán seguir con ext4 por ahora ...
1 Este y otros conceptos del sistema de archivos de Linux se explican muy bien en Comprender el núcleo de Linux .