ScholarGate
Asistente

Sistemas de Archivos

Un sistema de archivos es el componente del sistema operativo que organiza los datos persistentes en archivos y directorios con nombre en dispositivos de almacenamiento, gestionando cómo se disponen, localizan, protegen y mantienen consistentes los datos.

Encontrar tema con PaperMindPróximamenteFind papers & topics
Tools & resources
Descargar diapositivas
Learn & explore
VídeoPróximamente

Definition

Un sistema de archivos es el método y las estructuras de datos que utiliza un sistema operativo para almacenar, organizar, nombrar, recuperar y proteger datos persistentes en un dispositivo de almacenamiento, presentando archivos y directorios a las aplicaciones mientras gestiona la disposición y la consistencia en el dispositivo.

Scope

Este tema abarca la abstracción e interfaz de archivos, las estructuras de directorios, los métodos de asignación (contiguos, enlazados, indexados) y la gestión del espacio libre, las estructuras de metadatos como los inodos, el registro por diario (journaling) y la consistencia ante fallos, y la caché de búfer. Trata cómo el sistema operativo convierte el almacenamiento en bruto en un espacio de nombres fiable y con nombre. Excluye los propios dispositivos de almacenamiento físico (dispositivos de almacenamiento secundario) y la gestión de la memoria principal del sistema operativo (gestión de memoria).

Core questions

  • ¿Cómo se nombran los archivos, se organizan en directorios y se accede a ellos?
  • ¿Cómo se asignan y localizan los datos de un archivo en el dispositivo de almacenamiento?
  • ¿Qué metadatos mantiene el sistema de archivos y cómo se gestiona el espacio libre?
  • ¿Cómo se mantiene la consistencia del sistema de archivos ante fallos?

Key concepts

  • abstracción e interfaz de archivos
  • directorios y espacios de nombres
  • inodos y metadatos
  • métodos de asignación (contiguos, enlazados, indexados)
  • gestión del espacio libre
  • registro por diario (journaling) y consistencia ante fallos
  • caché de búfer
  • control de acceso y permisos

Key theories

Consistencia ante fallos
Dado que un fallo puede interrumpir actualizaciones de varios pasos, los sistemas de archivos utilizan técnicas como el registro por diario (journaling) (registrando los cambios previstos antes de aplicarlos) o la copia en escritura (copy-on-write) para asegurar que, después de un fallo, el sistema de archivos pueda restaurarse a un estado consistente.

Mechanisms

Un sistema de archivos mapea el flujo de bytes lógico de cada archivo a bloques en el dispositivo, registrando el mapeo y los atributos en estructuras de metadatos como inodos y directorios. Los métodos de asignación determinan cómo se asignan y rastrean los bloques, y las estructuras de espacio libre registran los bloques disponibles. Una caché de búfer mantiene los bloques utilizados recientemente en la memoria, y el registro por diario (journaling) o la copia en escritura (copy-on-write) aseguran que las actualizaciones interrumpidas dejen el sistema de archivos en un estado recuperable y consistente.

Clinical relevance

Los sistemas de archivos son la forma en que se almacenan y recuperan casi todos los datos persistentes, por lo que su rendimiento y fiabilidad son críticos para las bases de datos, las aplicaciones y los usuarios por igual. Las decisiones de diseño en torno a los metadatos, el almacenamiento en caché y la consistencia ante fallos determinan la durabilidad y la recuperación después de los fallos, y los sistemas de archivos ampliamente utilizados como ext4, NTFS y ZFS encarnan décadas de estas compensaciones.

History

Los sistemas de archivos jerárquicos con directorios y el modelo de inodos fueron establecidos por UNIX alrededor de 1970. El Berkeley Fast File System mejoró la disposición y el rendimiento, y los diseños basados en registro por diario (journaling) y estructurados por registros en la década de 1990 abordaron la consistencia ante fallos y el rendimiento de escritura. Los sistemas de archivos de copia en escritura (copy-on-write) como ZFS y Btrfs integraron posteriormente sumas de comprobación y instantáneas para una mayor integridad.

Debates

Registro por diario (journaling) versus copia en escritura (copy-on-write) para la consistencia
El registro por diario (journaling) registra los cambios previstos antes de aplicarlos, mientras que la copia en escritura (copy-on-write) escribe nuevos datos en ubicaciones nuevas y cambia atómicamente los punteros; cada uno ofrece consistencia ante fallos con diferentes compensaciones de rendimiento, espacio e integridad, y ambos se utilizan en sistemas modernos.

Key figures

  • Ken Thompson
  • Dennis Ritchie
  • Marshall Kirk McKusick
  • Abraham Silberschatz

Related topics

Seminal works

  • silberschatz2018
  • tanenbaum2014os

Frequently asked questions

¿Qué es un inodo?
Un inodo es una estructura de metadatos que describe un archivo: su tamaño, propiedad y permisos, marcas de tiempo y punteros a los bloques de almacenamiento que contienen sus datos. Los directorios mapean nombres legibles por humanos a inodos, separando el nombre de un archivo de su representación en el dispositivo.
¿Cómo protege el registro por diario (journaling) contra los fallos?
Antes de modificar las estructuras del sistema de archivos, un sistema de archivos con registro por diario (journaling) registra los cambios previstos en un registro. Si un fallo interrumpe la actualización, al reiniciar el sistema reproduce o descarta los cambios registrados, restaurando un estado consistente en lugar de dejar el sistema de archivos corrupto.

Methods for this concept

Related concepts