sábado, 14 de noviembre de 2015




5.- Sistemas de archivos





Introducción


Dado que la gestión de archivos y directorios es la principal tarea básica que se realiza con los sistemas operativos vamos a profundizar un poco en los sistemas de archivos.

Un archivo se puede definir como un conjunto de datos con un nombre asociado. Los archivos suelen residir en dispositivos de almacenamiento secundario tales como cintas, discos duros o discos flexibles. Algunos sistemas operativos imponen a los archivos una estructura determinada bien definida.


Un sistema de archivos se debe entender como aquella parte del sistema responsable de la administración de los datos en dispositivos de almacenamiento secundario. Por lo tanto, es el sistema de archivos el que debe proporcionar los medios necesarios para un acceso y almacenamiento seguro y privado de la información.

Este proyecto explicamos cómo los archivos se pueden identificar  el cómo están estructurados en el sistema operativo. Igual enseña como compartir para que los archivos estén seguros, explicando a detalle cada uno de los componentes, hablamos acerca de un archivo real y virtual.
En este sistema de archivos lo que nosotros podemos encontrar la gran necesidad de poder hacer más organizada nuestras tareas o archivos en las que nuestros archivos puedan encontrarse de una manera más rápida y fácil este sistema nos ayuda también a la buena organización y de uso más favorable conociendo los distintos tipos que se han creado con el paso del tiempo.



Unidad V: Sistemas de Archivo

5.1 Conceptos
En computación, un sistema de archivos es un método para el almacenamiento y organización de archivos de computadora y los datos que estos contienen, para hacer más fácil la tarea encontrarlos y accederlos. Los sistemas de archivos son usados en dispositivos de almacenamiento como discos duros y CD-ROM e involucran el mantenimiento de la localización física de los archivos. 
Más formalmente, un sistema de archivos es un conjunto de tipo de datos abstractos que son implementados para el almacenamiento, la organización jerárquica, la manipulación, el acceso, el direccionamiento y la recuperación de datos. Los sistemas de archivos comparten mucho en común con la tecnología de las bases de datos.
El desempeño de nuestro disco duro, la confiabilidad, seguridad, capacidad de expansión y la compatibilidad, estará en función de estas estructuras lógicas. 
Fat 12:
Es el sistema de archivos de DOS, y es con el que formateamos los disquetes. Fue muy utilizado en las primeras PC’s. 

Fat 16:
Este sistema de archivos tenía muchas limitaciones, por ejemplo si el disco duro era mayor de 2 GB, era imposible particionarlos y no usaba nombre largos en los archivos, solo 8 caracteres. 

Fat 32:
Fue utilizado a partir de 1997, y pudo ser utilizado en Windows 98, pero a medida que el tamaño de los discos duros se incrementaba, surgieron nuevas limitaciones. Se llamó Fat32, por que utiliza números de 32 bits para representar a los clusters en lugar de los 16 en los sistemas anteriores. 



NTFS
Los archivos NTF FAT. El propósito era satisfacer la demanda y necesidades de seguridad y eficacia para servidores y otras aplicaciones en red. No tiene limitaciones de tamaño clusters y en general en el disco. Una ventaja de este sistema de archivos es que tiene un sistema anti fragmentación. 





Fig. 5.1.3 Administración de archivos por el sistema operativo

 

















Los archivos son administrados por el sistema operativo como se muestra en la Fig. 5.1.3. Su estructura, nombre, forma de acceso, uso, protección e implantación son temas fundamentales en el diseño de un sistema operativo. Aquella parte del sistema operativo que trabaja con los archivos se conoce, como un todo, como el sistema de 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á crear con facilidad colecciones de datos llamados archivos. Estas colecciones deberán 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.
  • Deberán tener la capacidad de ser compartidos: Los archivos tendrán nombres que los identifique y deberán poseer permisos de acceso los cuales permitirán 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 abstracció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. 

Funciones del Sistema de Archivos

Los usuarios deben poder crear, modificar y borrar archivos. Se deben poder compartir los archivos de una manera cuidadosamente controlada. 
El mecanismo encargado de compartir los archivos debe proporcionar varios tipos de acceso controlado:



  • Ej.: “Acceso de Lectura”, “Acceso de Escritura”, “Acceso de Ejecución”, varias combinaciones de estos, etc.
Se debe poder estructurar los archivos de la manera más apropiada a cada aplicación.  Los usuarios deben poder ordenar la transferencia de información entre archivos. 
Se deben proporcionar posibilidades de “respaldo” “recuperación” para prevenirse contra:
  • La pérdida accidental de información.
  • La destrucción maliciosa de información.
Se debe poder referenciar a los archivos mediante “Nombres Simbólicos” , brindando “Independencia de Dispositivos” .
En ambientes sensibles, el sistema de archivos debe proporcionar posibilidades de “Cifrado” y “Descifrado”. 
El sistema de archivos debe brindar una interface favorable al usuario:
  • Debe suministrar una “visión lógica” de los datos y de las funciones que serán ejecutadas, en vez de una “visión física”.
  • El usuario no debe tener que preocuparse por:
    • Los dispositivos particulares.
    • Dónde serán almacenados los datos.
    • El formato de los datos en los dispositivos.
    • Los medios físicos de la transferencia de datos hacia y desde los dispositivos.



5.2 Noción de un archivo real y virtual



Archivo virtual
Es un archivo de uso temporal que es utilizado por los procesos del sistema mientras se están ejecutando dichos procesos. (Fig.5.2.1). 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 (Fig. 5.2.3) 

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 como lo muestra la siguiente imagen. (Fig. 5.2.4).


5.3 Componentes de un sistema de archivo.
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. 

5.4 organización lógica y física.

Se refiere a las diferentes maneras en las que puede ser organizada la información de los archivos, así como las diferentes maneras en que ésta puede ser accedida. Dado que hay 2 niveles de visión de los archivos (físico y lógico)
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:

Pilas




Fig. 5.4.2 Archivo de pilas: Registro de longitud variable. Conjunto variable de campos. Orden cronológico.
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.
Archivos secuenciales



Fig. 5.4.3 Archivo secuencial: Registro de longitud fija. Conjunto fijo de campos en orden constante. Orden secuencial por el campo clave.
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.





Archivos secuenciales indexados



Fig. 5.4.4 Archivo secuencial indexado.
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.
Archivos indexados





Fig. 5.4.5 Archivo indexado.
A los registros se accede solo a través de sus índices. No hay restricció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.
Archivos directos o de dispersión
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.

Organización física.
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.

Cinta magnética.



Fig. 5.4.6 Cintas magnéticas
En este dispositivo el archivo físico está 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.



Discos Magnéticos.





Fig. 5.4.7 Discos magnéticos
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.




Métodos de asignación de espacio libre
Un método de asignación de espacio libre determina la manera en que un Sistema Operativo controla los lugares del disco que no están siendo ocupados.
Para el control del espacio libre se puede utilizar como base alguno de los métodos teóricos: Vector de Bits, Lista Ligada, Por Agrupación y por Contador.
VECTOR DE BITS
Se tiene un arreglo de bits, el número de bits que tiene, representa cada sector del disco, o sea que si los sectores 10 y 11 están ocupados su representación será:




Fig. 5.4.8 Ejemplo de un vector de bits.
LISTA LIGADA
Existe una cabecera en la que se tiene la dirección del primer sector vacío, ese sector a su vez, tiene un apuntador al siguiente bloque, y así sucesivamente hasta que se encuentre una marca indicando que ya no hay espacio libre, tal y como se muestra en la siguiente figura.







Fig. 5.4.9 Ejemplo de una lista ligada
POR AGRUPACION
Es similar a la lista ligada, solo que en este se tiene por cada sector, un grupo de apuntadores a varios espacios vacíos, al final de cada bloque se tiene un apuntador a otro grupo de apuntadores, observe la figura.


                                           

Fig. 5.4.10 Ejemplo de asignación por agrupación.





POR CONTADOR
Aquí, por cada conjunto de bloques contiguos que estén vacíos, se tiene por cada apuntador, un número de inicio y el tamaño del grupo de sectores vacíos.





Fig. 5.4.11 Ejemplo de asignación por contador.

Los archivos se pueden organizar de dos maneras que son físicas acuerdo con el dispositivo de almacenamiento secundario y Los registros son de tamaño fijo o de tamaño variable y pueden organizarse de varias formas para constituir archivos físicos Cinta magnética, discos magnéticos lo que diferente con la organización de archivos lógicos se puede decir que  el concepto es el mismo independientemente de la terminología usada Archivos secuenciales Archivos secuenciales indexados , Archivos indexados Pilas que cada una tiene una función diferente.


Conclusión

En conclusión del equipo podemos demostrar que un sistema de archivos son aquellas forma en las que el usuario tiene la libertad de archivar sus datos de una forma en la que ellos se sientan mejor, nos mencionaba que en este tipo de archivos nosotros podemos guardar y dar forma a nuestras carpetas de música o videos en las que un usuario pueda manipular mejor sus archivos y mejor seguridad.
Los archivos que nosotros tenemos en nuestro Sistema Operativos siempre tenemos que tener en cuenta que no estarán seguros por eso hay que tener encueta la respalda ion de nuestros archivos digitales. Los archivo almacenados en nuestro ordenador, son muy importante para la  utilidad en nuestra vida cotidiana.
Uno de los factores importantes es al guardar un archivo, tienes que darte cuenta que tu archivo ya este creado dentro del disco duro, ya que hay archivos virtuales que solo lo guardan temporalmente y esto hace que tu archivo no te aparezca la unidad de medida de los archivos ya creados se dan el KB, MB, GB Y TERABITS.




No hay comentarios:

Publicar un comentario