SISTEMAS DE ARCHIVOS
CONCEPTO SISTEMA DE ARCHIVOS:
Subsistema del S.O. encargado de la gestión de la memoria
secundaria (concretamente del almacenamiento de la información en dispositivos
de memoria secundaria).
Se encuentra en los niveles más
externos del sistema operativo (más próximos al usuario). Este nivel suministra
al usuario el concepto de archivo (una de las abstracciones fundamentales que
genera un sistema operativo).
El sistema de archivos es el
subsistema que suministra los medios para la
organización y el acceso a los datos almacenados en dispositivos de
memoria secundaria (disco).
Concepto de archivo: Agrupación de
datos que el usuario ve como una entidad (por ejemplo: programa, conjunto de
rutinas, resultados de un cálculo, ...). Es la unidad que almacena y manipula
el sistema de archivos.
El medio sobre el que se almacenan
los archivos se divide en bloques de longitud fija, siendo el sistema de
archivos el encargado de asignar un número adecuado de bloques a cada archivo.
NOCIÓN DE ARCHIVO
REAL Y VIRTUAL
UN ARCHIVO VIRTUAL
Es un archivo de uso temporal que es utilizado por los procesos del sistema mientras se están ejecutando dichos procesos. Estos archivos se crean durante la ejecución de un sistema y los utiliza para el almacenamiento de información, intercambio y organización mientras se ejecuta el sistema, su tamaño es muy variable y terminan al detener la ejecución del sistema, muchos de ellos son borrados, por ejemplo, los archivos *.tmp.
Se le conoce como archivo virtual, aquel que contiene los datos generados por el usuario.
Es un archivo de uso temporal que es utilizado por los procesos del sistema mientras se están ejecutando dichos procesos. Estos archivos se crean durante la ejecución de un sistema y los utiliza para el almacenamiento de información, intercambio y organización mientras se ejecuta el sistema, su tamaño es muy variable y terminan al detener la ejecución del sistema, muchos de ellos son borrados, por ejemplo, los archivos *.tmp.
Se le conoce como archivo virtual, aquel que contiene los datos generados por el usuario.
ARCHIVO REAL
Es un objeto que contiene programas, datos o cualquier otro elemento.
Un archivo se muestra de manera real, en la información del espacio que ocupa en un disco duro o sistema de almacenamiento, en otras palabras su tamaño en bytes.
COMPONENTES DE UN
SISTEMA DE ARCHIVOS
Lo conforman todas aquellas rutinas encargadas de
administrar todos los aspectos relacionados con el manejo de Archivos.
En UNIX se define un File System como un sistema de
software dedicado a la creación, destrucción, organización y lectura, escritura
y control de acceso de los archivos, funcionalmente los componentes de un
sistema de archivos son lenguajes de comandos, interpretador de comandos, manejador
del almacenamiento secundario, sistema de entrada y salida y mecanismos de
respaldo y recuperación.
En general, un Sistema de Archivos está compuesto
por: Métodos De Acceso, Administración De Archivos, Administración De
Almacenamiento Secundario, Mecanismos De Integridad.
Métodos De Acceso. Se ocupan de la
manera en que se tendrá acceso a la información almacenada en el archivo.
Ejemplo: Secuencial, Directo, indexado, etc.
- Administración De Archivos. Se ocupa de ofrecer los mecanismos para almacenar, compartir y asegurar archivos, así como para hacer referencia a ellos.
- Administración De Almacenamiento Secundario. Se ocupa de asignar espacio para los archivos en los dispositivos de almacenamiento secundario. En la siguiente figura se muestra un ejemplo de la administración de espacio en un disco duro.
- Mecanismos De Integridad. Se ocupan de garantizar que no se corrompa la información de un archivo, de tal manera que solo la información que deba estar en el, se encuentre ahí.
- Mecanismos de Organización Lógica. Contiene las diferentes rutinas y comandos a través de los cuales el usuario podrá estructurar sus archivos virtuales.
- Directorio de Identificadores. Convierte los identificadores simbólicos de los archivos en identificadores internos, los cuales apuntarán a su descriptor o a una estructura que permite encontrar el archivo.
- Sistemas Teóricos de Archivos. Su objetivo es el de activar y desactivar a través de las rutinas de abrir y cerrar archivos y verifica el modo de acceso.
- Mecanismos de Organización Física. Traslada las direcciones lógicas en direcciones físicas correspondientes a las estructuras de memoria secundaria y los buffers en memoria principal necesarios para la transferencia de datos.
- Mecanismos de E/S. Por cada petición de acceso al archivo real, este mecanismo genera la secuencia de operaciones elementales de entrada y salida que se necesita.
- SCHEDULING E/S. En este nivel es donde se tiene el número de peticiones pendientes así como de las que se están realizando y lleva el control y asignación de tiempo de CPU a las diferentes peticiones de E/S.
ORGANIZACIÓN LOGICA Y FISICA
ORGANIZACIÓN LÓGICA
La mayoría de las computadoras organizan los archivos
en jerarquías llamadas carpetas, directorios o catálogos. (El
concepto es el mismo independientemente de la terminología usada.) Cada carpeta
puede contener un número arbitrario de archivos, y también puede contener otras
carpetas. Las otras carpetas pueden contener todavía más archivos y carpetas, y
así sucesivamente, construyéndose un estructura en árbol en la que una «carpeta
raíz» (el nombre varía de una computadora a otra) puede contener cualquier
número de niveles de otras carpetas y archivos. A las carpetas se les puede dar
nombre exactamente igual que a los archivos (excepto para la carpeta raíz, que
a menudo no tiene nombre). El uso de carpetas hace más fácil organizar los
archivos de una manera lógica.
La mayor parte de las estructuras de organizaciones
alternativas de archivos se encuentran dentro de estas cinco categorías:
Es la forma más fácil de organizar un archivo. Los
datos se recogen en el orden en que llegan.
Su objetivo es simplemente acumular una masa de datos
y guardarla.
Los registros pueden tener campos diferentes o
similares en un orden distinto. Cada campo debe ser auto descriptivo,
incluyendo tanto un campo de nombre como el valor. La longitud de cada campo
debe indicarse implícitamente con delimitadores, explícitamente incluidos como
un subcampo más.
El acceso a los registros se hace por búsquedas
exhaustiva y son fáciles de actualizar. Si se quiere encontrar un registro que
contiene un campo particular y un valor determinado, es necesario examinar cada
registro de la pila hasta encontrar el registro deseado. Si se quieren
encontrar todos los registros que contienen un campo particular o que tienen un
valor determinado para ese campo, debe buscarse el archivo entero.
Se aplica cuando los datos se recogen o almacenan
antes de procesarlos o cuando no son fáciles de organizar. Esta clase de
archivo aprovecha bien el espacio cuando los datos almacenados varían en tamaño
y estructura. Fuera de estos usos limitados, este tipo de archivos no se adapta
a la mayoría de las aplicaciones.
Es la forma más común de estructura de archivos.
Se emplea un formato fijo para los registros, son de
la misma longitud y constan del mismo número de campos de tamaño fijo con un
orden determinado.
Se necesita almacenar los valores de cada campo; el
nombre del campo y la longitud de cada uno son atributos de la estructura del
archivo. Cada registro tiene un campo clave que lo identifica (generalmente es
el primero de cada registro). Los registros se almacenan en secuencia por la
clave.
Se utilizan normalmente en aplicaciones de procesos
por lotes, ya que es la única organización de archivos que se puede guardar
tanto en cintas como en discos.
Para las aplicaciones interactivas que incluyen
peticiones o actualizaciones de registros individuales, los archivos
secuenciales no son óptimos. El acceso requiere una búsqueda secuencial de
correspondencias con la clave. Si el archivo entero o gran parte de él pueden
traerse a la memoria principal de una sola vez, se podrán aplicar técnicas de
búsquedas más eficientes. Al acceder un registro de un archivo secuencial
grande, se produce un procesamiento extra y un retardo considerable.
La organización física del archivo en una cinta o
disco se corresponde exactamente con la organización lógica del archivo, por lo
tanto el procedimiento habitual es ubicar los nuevos registros en un archivo de
pila separado, es llamado archivo de registro o archivo de transacciones.
Una alternativa es organizar físicamente el archivo
secuencial como una lista enlazada, en cada bloque físico se almacena uno o más
registros y cada bloque del disco contienen un puntero al bloque siguiente. La
inserción de un nuevo registro implica la manipulación de puntero, pero no
requiere que el nuevo registro ocupe una posición particular del bloque físico.
Los registros se organizan en una secuencia basada en
un campo clave presentando dos características, un índice del archivo para
soportar los accesos aleatorios y un archivo de desbordamiento. El índice
proporciona una capacidad de búsqueda para llagar rápidamente al registro
deseado y el archivo de desbordamiento es similar al archivo de registros usado
en un archivo secuencial, pero está integrado de forma que los archivos de
desbordamiento se ubiquen siguiendo un puntero desde su registro predecesor.
La estructura más simple tiene como índice un archivo
secuencial simple, cada registro del archivo índice tiene dos campos, un campo
clave igual al del archivo principal y un puntero al archivo principal. Para
encontrar un campo especifico se busca en el índice hasta encontrar el valor
mayor de la clave que es iguale o precede al valor deseado de la clave, la
búsqueda continua en el archivo principal a partir de la posición que indique
el puntero.
Cada registro del archivo principal tiene un campo
adicional que es un puntero al archivo de desbordamiento. Cuando se inserta un
nuevo registro al archivo, también se añade al archivo de desbordamiento. El registro
del archivo principal que precede inmediatamente al nuevo registro según la
secuencia lógica se actualiza con un puntero del registro nuevo en el archivo
de desbordamiento, si el registro inmediatamente anterior está también en el
archivo de desbordamiento se actualizará el puntero en el registro.
Para procesar secuencialmente un archivo completo los
registros del archivo principal se procesarán en secuencia hasta encontrar un
puntero al archivo de desbordamiento, el acceso continúa en el archivo de
desbordamiento hasta que encuentra un puntero nulo, entonces renueva el acceso
donde se abandonó en el archivo principal.
A los registros se accede solo a través de sus
índices. No hay resticción en la ubicación de los registros, al menos un índice
contiene un puntero a cada registro y pueden emplearse registros de longitud
variable.
Se suelen utilizar dos tipos de índices, uno
exhaustivo que contiene una entrada para cada registro del archivo principal y
se organiza como un archivo secuencial para facilitar la búsqueda, el otro
índice es parcial que contiene entrada a los registros donde esté el campo de
interés.
Con registro de longitud variable, algunos registros
no contendrán todos los campos y cuando se añade un registro al archivo
principal, todos los archivos de índices deben actualizarse.
Explotan la capacidad de los discos para acceder
directamente a cualquier bloque de dirección conocida.
Se requiere un campo clave en cada registro.
Los archivos directos son muy usados donde se necesita
un acceso muy rápido, donde se usan registros de longitud fija y donde siempre
se accede a los registros de una vez.
Los datos son arreglados por su adyacencia física, es
decir, de acuerdo con el dispositivo de almacenamiento secundario. Los
registros son de tamaño fijo o de tamaño variable y pueden organizarse de
varias formas para constituir archivos físicos.
En este dispositivo el archivo físico esta formado por
un conjunto de registros físicos, y los bloques están organizados en forma
consecutiva, ya que se asigna en igual forma.
Además tales registros puede contener etiquetas que
permitan un mayor control sobre los datos almacenados, y son las siguientes:
Etiqueta de volumen.- Contiene información que permite
identificar la cinta, el nombre del propietario y cualquier información general
requerida.
Etiqueta de archivo.- Se utilizan por pares para
indicar el inicio y fin del archivo, contiene información acerca del nombre del
archivo, fecha de creación.
Etiqueta de usuario.- Sirven para guardar información
adicional de importancia para el usuario; no son procesados por el sistema
operativo.
El archivo físico en un disco es una colección de registros físicos de igual tamaño, los cuales pueden estar organizados en forma consecutiva, ligada o con una tabla de mapeo.
En la organización contigua, el archivo utiliza registros físicos contiguos, siguiendo la secuencia normal de direcciones.
La organización encadenada consiste un conjunto de
bloques, cada uno de los cuales tiene un campo destinado para indicar la
dirección del siguiente registro, o sea, para lo que se ha llamado enlace o
liga.
Otra forma de organización es la tabla de mapeo que
consiste en una tabla de apuntadores a los registros físicos que forman el
archivo.
La organización física de un archivo en el
almacenamiento secundario depende de la estrategia de agrupación y de la
estrategia de asignación de archivos.
Para elegir una organización de archivos se deben
tener en cuenta ciertos criterios:
Si un archivo va a procesar solamente por lotes,
accediendo cada vez a todos los registros, entonces el acceso rápido para
la recuperación de un único registro es una preocupación mínima. Un archivo
almacenado en CD-ROM nunca será actualizado, por lo que la facilidad de
actualización no se considera. Para la economía de
almacenamiento , debería existir una mínima redundancia de los datos, ésta
redundancia es el medio fundamental para incrementar la velocidad de acceso a
los datos.
Este tipo de organización muestra a su vez, 2 aspectos
importantes: Métodos De Asignación De Espacio Libre y Asignación De
Espacio De Almacenamiento Del Archivo.










