Diferencia entre revisiones de «Introducción a Sistemas Operativos y al Kernel 2.6 de Linux/Capítulo 12 - Manejo de Archivos»

Contenido eliminado Contenido añadido
Sin resumen de edición
(Sin diferencias)

Revisión del 06:59 2 abr 2006

<-- Volver a la página principal

Manejo de Archivos

En este capítulo aprenderemos:

  • Acceso y organización de Archivos
  • Directorios
  • Compartir archivos
  • Bloqueando registros
  • Manejador secundario de información
  • El kernel de Linux y los Sistemas de Archivos Virtuales

Introducción

Para la mayoría de las aplicaciones y para el usuario final un archivo es uno de los elementos centrales de un ordenador. Un programa es almacenado como un archivo y es ejecutado desde ese archivo. Un programa graba la información que va a ser utilizada en el futuro por algún otro usuario o programa en un archivo. Los archivos y sus estructuras son, por lo tanto, de gran importancia en nuestro estudio.

Sistemas de Archivos

Un sistema de archivos es la estructura y el medio en el cual se almacenan los archivos. Debido a su importancia, es necesario que un sistema operativo tenga la capacidad de leer, escribir, acceder y mantener la integridad de un sistema de archivos. Un sistema de archivos provee al usuario con una abstracción que le permitirá creear con facilidad coleciones de datos llamados archivos. Estas colecciones deberan tener los siguientes requisitos o propiedades:

  • Existencia a largo tiempo: Los archivos deberán ser almacenados sobre una unidad de almacenamiento y deberán permanecer allí aun cuando el usuario apague el ordenador
  • Deberan tener la capacidad de ser compartidos : Los archivos tendrán nombres que los identifique y deberán poseer permisos de acceso los cuales permitiran el compartimiento controlado entre procesos.
  • Deberán poseer una estructura definida : Dependiendo del tipo de sistema de archivos, un archivo deberá poseer una estructura definida y conveniente; permitiendo que los archivos puedan ser organizados en orden jerárquico o en cualquier otro orden para reflejar su relación con otros archivos.

El sistema de archivos como hemos dicho, posee una abtracción que permite realizar varias operaciones sobre los archivos. Entre estas operaciones tenemos:

  • Crear un archivo: El usuario o un proceso podrá crear un nuevo archivo el cual tomará una posición dentro de la estructura del sistema de archivos
  • Borrar un archivo: Un archivo podrá ser borrado de la estructura.
  • Abrir un archivo: Un proceso podrá abrir un archivo permitiendo el acceso a la información contenida por dicho archivo. El proceso podrá ejecutar varias funciones sobre la información del archivo como leer, escribir, reemplazar, etc.
  • Cerrar un archivo : Un proceso puede cerrar el archivo dejando atrás los privilegios de acceder a dicho archivo.
  • Leer : Un proceso podrá leer parte de la información contenida en un archivo
  • Escribir: Un proceso podrá añadir o reemplazar información en un archivo.

Los sistemas de archivos también mantienen una estructura de atributos asociada con cada uno de los archivos la cual provee información sobre la situación actual de un archivo, quien es su dueño, el tamaño del archivo, cuando fue creado, cuando fue modificado, privilegios de acceso, entre otros.

La estructura de un archivo

Un archivo está compuesto de campos y registros.

Los campos son la estructura de datos más básica. Un campo contiene un solo valor como el nombre de un empleado, una fecha, etc. Los campos se caracterízan por el tamaño del tipo de dato (Por ejemplo: el tamaño de una cadena de letras, un decimal, etc). Dependiendo del diseño de la estructura de archivos, un campo puede tener un tamaño definido o un tamaño variable. En el caso de que el campo tenga un tamaño variable, un campo consiste de dos o tres sub-campos que almacenan: el valor que va a ser almacenado, el nombre del campo, y a veces el tamaño de dicho valor.

La unión de varios campos que se relacionan entre si se lo conoce como un registro. Un registro puede ser tratado como una unidad por alguna aplicación. Por ejemplo el registro de un empleado puede contener ciertos campos que contienen información como el nombre del empleado, apellido, dirección domiciliaria, posicion, etc. Un registro al igual que un campo puede ser de tamaño fijo o variable

La unión de varios registros conforman un archivo. Un archivo es considerado por programas y programas como una entidad