Un sistema de ficheros, sistema de archivos o file system es el conjunto de procesos y normas que se llevan a cabo para el almacenamiento de un dispositivo de memoria. Este sistema le permite al usuario identificar la ubicación de los archivos y poder acceder a ellos de una forma rápida.
Cada archivo cuenta con una serie de datos independientes, cuya información debe ser organizada, por lo que los sistemas operativos acuden al uso de las carpetas o directorios, que le permitirá mantener un orden de la ruta de acceso a los archivos, y localizar la información ubicada en el disco duro.
En este artículo, te detallaremos qué es un file system o sistema de ficheros, sus características y los tipos de archivos que te encontrarás.
Características de un sistema de ficheros
Los sistemas de ficheros o sistemas de archivos funcionan como una interfaz entre el sistema operativo y los dispositivos que estén conectados a la máquina, y sean internos o externos, como por ejemplo, la memoria USB.
Dentro de las funcionalidades del sistema de ficheros se encuentra la asignación de espacio a archivos y directorios, la gestión del espacio libre del equipo, el journaling o sistema para implementar transacciones.
🔴 ¿Quieres entrar de lleno al mundo DevOps & Cloud Computing? 🔴
Descubre el DevOps & Cloud Computing Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada
👉 Prueba gratis el Bootcamp en DevOps & Cloud Computing por una semanaOtra de sus características es que funciona como un soporte para los archivos dispersos, las cuotas de disco y la ampliación del sistema de archivo.
Además, estos sistema de ficheros le ofrecen a los archivos características como:
- Convenciones para nombrarlos: es de vital importancia para mantener la organización de los datos y las opciones específicas dependerán de cada sistema operativo, por ejemplo, en el sistema de ficheros linux se establece que el nombre de archivo no exceda los 255 caracteres y no usar caracteres con significado especial como = \ ^ ~ ‘ » ` * ; – ? [ ] ( )! & ~ < >.
- Atributos de archivo: se refiere a las características de un archivo o un directorio, tales como los nombres de archivos, su tamaño, el usuario propietario, los permisos de acceso y los enlaces.
- Control de acceso: permite establecer el tipo de derecho o permiso con los que contará un determinado usuario. Esto se realiza a través de la ACL Access Control List o Lista de Control de Acceso
Tipos de sistemas de ficheros
¿Qué es un file system? Aunque usualmente se haga referencia a los sistema de ficheros de los sistemas operativos, también pueden estar enfocados en discos, red o con algún propósito especial.
Respecto a los sistemas de archivo en los sistemas operativos, cada uno cuenta con uno o más gestores de almacenamiento y su dependerá de las necesidades del usuario así por ejemplo:
Sistemas de ficheros en Linux
Linux es capaz de soportar un gran número de sistemas de ficheros que indican la manera en la que se controlan los archivos dentro de las particiones. Están organizados de forma similar siguiendo el estándar FHS o FileSystem HierachyStandard y pueden consultarse desde la línea de comandos con man 7 hier
.
Cada sistema de archivos cuenta con características y funcionalidades dependiendo de su nivel de complejidad. Veamos como funciona un sistema de archivos y cuáles existen:
- etx2: Es la continuación del sistema de archivos ext y se ha convertido en un elemento básico para las distribuciones del sistema de ficheros de linux. El sistema de archivos Ext2 es compatible con otros sistemas de ficheros grandes, admitiendo particiones de disco hasta de 4TP y ficheros con un tamaño máximo de 2GB. Tiene gran estabilidad y busca que los datos almacenados en los ficheros se almacenen en los llamados bloques de datos.
- ext3: El tercer Sistema de Archivos Extendidos es la versión actualizada de ext2 y trajo como mejoras un aumento en la velocidad, en la integridad del sistema de ficheros y de los datos, facilidad en su transición y disponibilidad.
- ext4: el fourth extended filesystem es el sistema de archivos transaccional. Incluye mejoras como el aumento del tamaño de archivos soportados, permitiendo hasta 50TiB, además de su gran soporte para almacenamiento. Ext4 también tiene la característica de los metadatos basados en el alcance y la asignación retardada.
- SWAP: Es utilizado para la partición de intercambios en el sistema operativo, y es usado para evitar la saturación de la memoria RAM.
Sistemas de ficheros en Windows
Otro tipo de sistemas son los ficheros en Windows. El sistema operativo hace uso de ciertos gestores para la gestion archivos con el objetivo de organizar los ficheros en el sistema de archivos. Utiliza herramientas como:
- NFTS: El New Technology File System o Sistema de archivos de Nueva Tecnología es el estándar de los sistemas de Windows y funciona bajo el principio de “todo en un archivo”. Los datos son registrados en la llamada tabla maestra de archivos. Este sistema reduce el tener que desfragmentar constantemente el disco.
- FAT32: El File Allocation Table hace parte del sector de arranque, cuyos archivos se almacenan en directorios de conjunto de registros de 32 bytes.
Sistemas de ficheros en MAC
El sistema operativo MAC utiliza plataformas como:
- HFS: El Hierarchical File System fue desarrollado como el reemplazo del sistema de archivos original de MAC llamado Macintosh File System. Fue originalmente creado para disquetes y discos duros y tenía por función el ordenar los archivos en el disco duro de ordenadores con MAC OS.
- HFS+ : este sistema es creado como el reemplazo o actualización del sistema de archivos HFS, e implementa características como el uso eficiente del disco duro y la optimización del sistema.
¿Cuál es el siguiente paso?
Ahora que ya conoces qué es un Sistema de ficheros, cuál es su funcionamiento, principales características y los tipos que existen, no dudes en continuar aprendiendo a través de nuestro DevOps & Cloud Computing Full Stack Bootcamp, donde en tan solo 6 meses podrás contar con todas las herramientas necesarias para convertirte en un experto acerca de estos temas y poder mejorar y agilizar tus procesos de desarrollo en el sector IT, obteniendo una ventaja frente a tus competidores.