Operaciones sobre archivos

El sistema tiene la capacidad de realizar seis operaciones básicas con los archivos las cuales son: crear, escribir, leer, reubicar, borrar y truncar.

Introducción

En este articulo abarcaremos el tema de las operaciones sobre archivos, los pasos que se deben seguir para poder ejecutar dichas operaciones, además de algunos elementos de información que tienen los archivos abiertos.

Antes se debe tener en claro que un archivo es un tipo de datos abstracto, en muchos casos también un flujo unidimensional de bytes, que el sistema operativo lo trata como una única unidad lógica. Usualmente tiene un tamaño que se expresa en bytes, que puede ser cualquier número no negativo con un máximo dependiendo del espacio de memoria del sistema. El sistema tiene la capacidad de realizar seis operaciones básicas con los archivos las cuales son: crear, escribir, leer, reubicar, borrar y truncar.

Todos los ordenadores pueden almacenar información en diferentes medios como discos magnéticos, ópticos y cintas magnéticas. Un archivo se considera un tipo de datos abstractos por motivo que el sistema operativo abstrae propiedades físicas de los dispositivos de almacenamiento y define una unidad de almacenamiento. 

Un archivo cuenta con algunos atributos como la hora, fecha e identificación del usuario, la información de estos atributos se mantiene o también pueden variar dependiendo del momento de creación del archivo o de la última modificación y uso de este, estos datos sirven para la protección, seguridad y control de uso de los archivos.

Crear archivos

Esta operación tiene como objetivo brindar la posibilidad a los usuarios de crear archivos nuevos. Para que el sistema pueda reconocer y procesar un archivo se debe indicar las propiedades y características del fichero, para eso el método de acceso debe obtener información acerca del formato y tamaño de los registros lógicos y físicos, la identificación, fecha de creación, el posible tamaño, entre otros. Crear un archivo cuenta con dos pasos, el primero ver si existe espacio en el sistema de archivos para poder ser almacenado y el segundo insertar una entrada para el nuevo archivo en el directorio, la entrada se registra con el nombre del archivo y la ubicación que este tendrá en el sistema de archivos.

Escribir un archivo

Realizar esta operación conlleva a una llamada al sistema para que especifique el nombre del archivo y la información que se desea escribir. El sistema realiza una búsqueda en todo el directorio para poder obtener la ruta de la ubicación del archivo, está búsqueda utiliza el nombre del archivo como referencia para poder encontrarlo, a su vez el sistema mantiene un puntero de escritura que indica la posición en donde el archivo realizará la operación de escritura, este puntero debe estar actualizándose en cada momento de que se realice la operación.

Leer un archivo

El procedimiento para poder leer un archivo es muy similar al de escritura, para esto se debe también realizar un llamado al sistema, especificando el nombre del archivo y la ubicación donde se tiene que ubicar el bloque del archivo. Teniendo estos datos el sistema procede a realizar la búsqueda y de la misma manera que la operación de escritura mantiene un puntero, pero esta vez de lectura en la posición del archivo en donde se desea leer, seguidamente el puntero se va actualizando para poder continuar con la lectura.

Un sistema de archivos posee dos niveles de tablas internas, existe una tabla por proceso de todos los archivos que cada proceso tiene abierto, allí se guarda la información sobre el uso que el proceso le brinda al archivo, cada entrada de la tabla por proceso apunta a una tabla de archivos abiertos, abarcada por todo el sistema. Cuando un proceso abre un archivo, la ejecución de una llamada abrir añade una nueva entrada a la tabla de archivos abiertos de ese proceso con un puntero nievo a la posición actual en el archivo y otro hacia la entrada apropiada de la tabla del sistema. Las tablas también tienen un contador que lo que hace es ver la cantidad de procesos que se abrió y aun no se han cerrado en un archivo. Cuando se cierra un proceso el contador decrementa y al llegar 0 significa que el archivo ya no se está utilizando y la entrada se borra de la tabla de archivos abiertos del sistema.

Además, cada archivo abierto tiene asociados varios elementos de información, estos elementos son los siguientes:

Puntero al archivo

Este elemento ya fue mencionado anteriormente, el sistema sigue la última posición de lectura y escritura con un puntero actual. Este puntero es exclusivo para cada proceso que trabaja con el archivo, por lo que debe mantenerse aparte de los atributos del archivo.

Contador de aperturas

Cada vez que se cierra un archivo el sistema reutiliza las entradas de la tabla de archivos abiertos, puesto que puede quedarse sin espacio en la tabla. Quiere decir que varios procesos pueden abrir un archivo, como también se mencionó el sistema espera a que se cierre el último proceso y elimina la entrada de la tabla.

Ubicación del archivo en disco

Casi todas las operaciones solicitan modificar archivos, por esta razón la información para poder localizarlos se mantiene en la memoria y así no será necesario leerla del disco en cada operación

Conclusión

Es muy común que un usuario realice las operaciones vistas en este artículo, sin embargo no se abarcó la explicación de todas para que no fuera muy extenso, también es usual pasar por desapercibido lo que ocurre en cada proceso ,pero es importante conocer y entender todo lo que ocurre detrás de las operaciones que  pueden aplicársele a los archivos, para poder tener en cuenta diferentes aspectos, en caso de algún fallo o perdida de datos, además de mantener la información protegida identificando los atributos que poseen los archivos.

Bibliografía

No comments

Comentarios en artículos

No comments

Nobody has submitted a comment yet.