Sistemas de ficheros/Conceptos básicos

Antes de intentar comprender los sistemas de ficheros en si, es necesario entender algunos conceptos básicos sobre la materia.

Sistema de ficheros

editar

Conjunto de algoritmos y estructuras auxiliares que nos van a permitir de manera sencilla y transparente acceder nuestros datos en dispositivos de almacenamiento (por ejemplo: un disco duro, un cdrom, un disquete, un pendrive, etcétera).

Sector

editar

Unidad de almacenamiento en disco. Es el tamaño real en que el disco almacena los datos. No se pueden realizar lecturas o escrituras en un disco menores de este tamaño (normalmente 512 bytes).

Bloque/Clúster

editar

Unidad de almacenamiento del sistema de ficheros. Es el tamaño lógico con el que trabaja el sistema de ficheros. No se pueden realizar lecturas o escrituras en un sistema de ficheros menores de este tamaño. El tamaño de bloque o clúster es configurable en la mayoria de los sistemas de ficheros. Bloques o clusters grandes dan un mejor rendimiento para ficheros de gran tamaño, pero desperdician mucho espacio para ficheros de pequeño tamaño.

Estructura de datos que almacena información sobre un objeto del sistema de ficheros (por ejemplo: un fichero regular, un enlace, un directorio, etcétera). Dependiendo del sistema de ficheros la información almacenada en los inodos sera diferente, pero la finalidad sera siempre la misma, representar un elemento de nuestro sistema de ficheros.

Es una estructura que almacena información sobre el estado de los clústers en los sitemas de tipo FAT.

Sector de arranque

editar

Zona del dispositivo/partición reservada para el arranque del sistema operativo. Normalmente se reserva al principio un espacio para el sector de arranque, pero hay casos especiales como NTFS que guarda además un copia de seguridad del mismo o XFS que no incorpora este espacio para arranque.

SuperBloque

editar

Estructura de datos que almacena información sobre todo el sistema de ficheros. Nos da información global sobre todo el sistema de ficheros ademas de contener información imprescindible para su correcto funcionamiento.

Trashing

editar

Ineficiencia producida en un sistema de ficheros debido al excesivo movimiento de los cabezales del disco duro.

Journaling (Bitacora)

editar

Sistema de control de las operaciones del sistema de ficheros. Al poner en marcha el sistema de ficheros, deshace las operaciones que no hubieran sido completadas para evitar problemas de coherencia en caso de que la partición o dispositivo haya sido desconectada incorrectamente.

Permisos POSIX

editar

Sistema de permisos estandar en sistemas Unix. Divide los permisos de cada fichero en tres niveles, dueño, grupo y resto, aplicandole a cada usuario el nivel correspondiente. Para cada nivel existen 3 tipos de permiso, lectura, escritura y ejecucion.

ACL's (Listas de control de acceso)

editar

Listas de Control de Acceso, nos permiten establecer permisos con una precicion mayor. Nos van a permitir establecer los permisos de un objeto a un usuario para una acción.

Extents

editar

Una referencia a un conjunto de datos especifiando direccion y número de bytes. Nos va a permitir representar conjuntos muy grandes de datos con entradas poco mayores que una direccion, en cambio, con direcciones de memoria, es necesario una direccion por bloque.

Capa de abstracción del kernel Linux para los sistemas de ficheros. El kernel de linux nos da esta capa de abstración para hacer mas fácil y mas óptimo el acceso a disco. Integra sus propios buffers de lectura y escritura y algunas otras funcionalidades interesantes.

Enlace

editar

Un enlace es a ojos de los usuarios un fichero normal y corriente, pero a ojos del sistema operativo es un apuntador a otro fichero. Dicho de otro modo, cuando accedemos a un enlace, estamos accediendo a un fichero que se encuentra en otro lugar. Existen dos tipos de enlaces: duros y blandos. Un enlace duro es realmente el fichero apuntado. Esto es, no apunta al otro fichero, sino que es el mismo fichero, pero puede que con otro nombre. Un enlace blando en un apuntador; es un fichero que almacena la ruta del fichero apuntado. El uso de enlaces es transparente al usuario. Los accesos directos de los sistemas MS Windows son similares a los enlaces en otros sistemas de ficheros.