Articulo de referencia

Estructura del puntero de inodo

Ejemplo de estructura La estructura de puntero de inodo es una estructura adoptada por el inodo de un archivo en los sistemas de archivos Unix versión 6 y 7 , así como en el Sis...

Ejemplo de estructura

La estructura de puntero de inodo es una estructura adoptada por el inodo de un archivo en los sistemas de archivos Unix versión 6 y 7 , así como en el Sistema de Archivos Unix (UFS), para listar las direcciones de los bloques de datos de un archivo . También la adoptan muchos sistemas de archivos relacionados, incluido el sistema de archivos ext3 , popular entre los usuarios de Linux.

Estructura

En el sistema de archivos utilizado en la versión 6 de Unix , un inodo contiene ocho punteros: [ 1 ]

  • 8 punteros directos que apuntan directamente a bloques de un archivo con ocho o menos bloques;
  • 8 punteros indirectos simples (que apuntan a un bloque de punteros directos) para archivos con más de ocho bloques.

En el sistema de archivos utilizado en la versión 7 de Unix , un inodo contiene trece punteros: [ 2 ]

  • 10 punteros directos que apuntan directamente a bloques de un archivo con ocho bloques o menos;
  • 1 puntero indirecto simple (que apunta a un bloque de punteros directos)
  • 1 puntero doblemente indirecto (que apunta a un bloque de punteros indirectos simples)
  • 1 puntero triplemente indirecto (que apunta a un bloque de punteros doblemente indirectos)

En el sistema de archivos Unix , un inodo contiene quince punteros: [ 3 ]

  • 12 punteros directos que apuntan directamente a bloques de datos del archivo.
  • 1 puntero indirecto simple (que apunta a un bloque de punteros directos)
  • 1 puntero doblemente indirecto (que apunta a un bloque de punteros indirectos simples)
  • 1 puntero triplemente indirecto (que apunta a un bloque de punteros doblemente indirectos)

Los niveles de indirección indican la cantidad de punteros que deben seguirse antes de llegar a los datos reales del archivo.

Características principales

Tamaño de bloque lógico fijo

La estructura se ilustra parcialmente en el diagrama que acompaña a este artículo. Esta estructura permite que los inodos describan archivos muy grandes en sistemas de archivos con un tamaño de bloque lógico fijo. Un aspecto fundamental del mecanismo es que los bloques de direcciones (también llamados bloques indirectos ) se asignan solo cuando son necesarios. Por ejemplo, en el sistema de archivos Unix , un archivo de 12 bloques se describiría utilizando únicamente el inodo, ya que sus bloques caben dentro del número de punteros directos disponibles. Sin embargo, un archivo de 13 bloques necesita un bloque indirecto para contener la decimotercera dirección.

Facilidad para localizar los datos

La estructura de punteros de inodo no solo permite asignar archivos fácilmente a bloques no contiguos, sino que también facilita la localización de datos en una ubicación específica dentro de un archivo. Esto es posible gracias a que el tamaño del bloque lógico es fijo. Por ejemplo, si cada bloque tiene un tamaño de 8 kB, los datos del archivo ubicados entre los bloques 112 kB y 120 kB serían apuntados por el tercer puntero del primer bloque indirecto (suponiendo doce punteros directos en la estructura de punteros de inodo).

Bloques indirectos

A diferencia de los inodos, cuyo número es fijo y se ubican en una parte específica del sistema de archivos, los bloques indirectos pueden tener cualquier número y se ubican en la misma parte del sistema de archivos que los bloques de datos. El número de punteros en los bloques indirectos depende del tamaño del bloque y del tamaño de los punteros. Por ejemplo, con un tamaño de bloque de 512 bytes y punteros de bloque de 4 bytes, cada bloque indirecto puede contener 128 (512 / 4) punteros.

Referencias

  1. Ritchie, Dennis M. ; Thompson, Ken (julio de 1974). "El sistema de tiempo compartido UNIX" (PDF) . Communications of the ACM . 17 (7): 369.
  2. Ritchie, Dennis M. ; Thompson, Ken . "El sistema de tiempo compartido UNIX" (PDF) .
  3. "La estructura de los grupos de cilindros del sistema de archivos UFS" . Guía de administración del sistema .