31
SISTEMA DE ARCHIVOS TECNÓLOGIA EN ANÁLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIÓN

Sistema de Archivos

  • Upload
    el-fren

  • View
    1.130

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Sistema de Archivos

SISTEMA DE ARCHIVOS

TECNÓLOGIA EN ANÁLISIS Y DESARROLLO DE SISTEMAS DE

INFORMACIÓN

Page 2: Sistema de Archivos

INTRODUCCIÓN

Todas las aplicaciones de una computadora requieren almacenar y recuperar información. Mientras que un proceso está en ejecución, puede almacenar una cantidad limitada de información dentro de su propio espacio de direcciones, que restringen su tamaño.

Un segundo problema es que la información se pierde cuando se termina un proceso.

Un tercer problema es que la información sea accesible para varios procesos a la vez.

Page 3: Sistema de Archivos

INTRODUCCIÓNEn consecuencia tenemos tres requerimientos esenciales para el almacenamiento a largo plazo:

Debe ser posible almacenar una cantidad grande de información.

La información debe sobrevivir al proceso que termine.

Múltiples procesos deben o pueden acceder a la información concurrentemente.

Durante muchos años se han utilizado discos magnéticos para almacenamiento a largo plazo, también cintas y discos ópticos, pero con menor rendimiento.

Un disco es una secuencia lineal de bloques de tamaño fijo que permite:

Leer el bloque k

Escribir el bloque k

Page 4: Sistema de Archivos

INTRODUCCIÓN

Pero solo con esta información no es suficiente porque genera algunas preguntas:

¿Cómo encontramos la información?

¿Cómo evitamos que un usuario lea la información de otro?

¿Cómo sabemos cuáles bloques están libres?

Y muchas más.

Page 5: Sistema de Archivos

INTRODUCCIÓN

Entonces, el procesador encargado de los procesos, la memoria física encargada de

ofrecer a los procesos un espacio de direcciones (virtuales), los archivos se

almacenan en bloques en el disco.

Page 6: Sistema de Archivos

INTRODUCCIÓN

Los archivos son unidades lógicas se información creada por los procesos. Un disco tienen millones de archivos independientes. Los procesos pueden leer archivos y crear si es necesario. La información generada en los archivos debe ser persistente sin importar que se termine un proceso.

El archivo debe desaparecer cuando existe una acción que lo solicite.

Los archivos son administrados por los sistemas operativos.

La manera en que se estructuran, denominan, abren, utilizan, protegen, implementan y administran son tópicos fundamentales en el diseño de sistemas operativos.

La parte del sistema operativo que trata los archivos se conoce como sistema de archivos.

Page 7: Sistema de Archivos

ARCHIVOS

Desde el punto de vista del usuario. Cómo se utilizan y qué propiedades tienen.

Page 8: Sistema de Archivos

Nomenclatura de Archivos

Los archivos son un mecanismo de abstracción.

Proporcionan una manera de almacenar la información para luego leerla.

Trasparente al usuario de dónde y cómo se almacena la información.

Cuando un proceso crea un archivo, le proporciona un nombre.

Page 9: Sistema de Archivos

Nomenclatura de Archivos

Cuando el proceso termina el archivo sigue existiendo y puede ser utilizado por otros procesos mediante su nombre.

Las reglas para denominar los archivos varían según el sistema operativo.

Por ejemplo:UNIX diferencia letras mayúsculas de minúsculas.

MS-DOS no.

Otros permiten hasta 255 caracteres.

Windows 95 y 98 utilizan el sistema de archivos de MS-DOS, conocido como FAT-16 heredando muchas de sus propiedades, como la forma que se construyen los nombres.

Windows 98 introdujo algunas extensiones a FAT-16, consiguiendo FAT-32, pero son bastantes similares.

Page 10: Sistema de Archivos

Nomenclatura de Archivos

El FAT ya es obsoleto, por lo general tienen un sistema de archivos nativo (NTFS).

Muchos sistemas operativos aceptan nombres de archivos en dos partes.

La parte que va después del punto se conoce como extensión del archivo.

Ejemplo:

paginainicio.html.zip UNIX

Page 11: Sistema de Archivos

Nomenclatura de Archivos

Page 12: Sistema de Archivos

Nomenclatura de Archivos

En UNIX las extensiones de archivos son sólo convenciones y no son impuestas por el sistema operativo.

Ejemplo:

Archiv.txt, sirve para recordar que es una archivo de texto.

En Windows las extensiones les asigna un significado, y a penas se clickea sobre un archivo, este es abierto por una aplicación específica.

Ejemplo:

Archivo.doc, lo abre por ejemplo Microsoft Office.

Page 13: Sistema de Archivos

Estructura de Archivos

Se pueden estructurar en varias formas.

Tres posibilidades son:

Page 14: Sistema de Archivos

Estructura de ArchivosEl primero es una secuencia de bytes que al sistema operativo no le importa que contenga el archivo, los programas son los encargados de reestructurarlo.

Hacer que el sistema operativo considere a los archivos como secuencia de bytes provee máxima flexibilidad.

Los programas de usuario pueden colocar cualquier cosa que quieran en sus archivos y denominarlos de cualquier manera conveniente.

El sistema operativo ni ayuda ni estorba.

Todas la versiones de UNIX, MS-DOS y Windows utilizan esta estructura de byte a byte.

Page 15: Sistema de Archivos

Estructura de Archivos

El segundo es una secuencia de longitud fija, cada una con cierta estructura interna.

El concepto central para la idea de que un archivo sea una secuencia de registros es la idea de que la operación de lectura devuelva un registro y la operación de escritura sobrescriba o agregue un registro.

El tercer tipo de estructura consiste en un árbol de registros, donde todos no son necesariamente de la misma longitud.

Cada uno de ellos tiene una llave en una posición fija dentro del registro.

El árbol se ordena con base en el campo llave en una posición fija dentro del registro.

La idea es obtener un registro con una llave específica.

Page 16: Sistema de Archivos

Tipo de Archivos

Muchos sistemas operativos soportan varios tipos de archivos.

UNIX y Windows tienen archivos y directorios regulares.

Los archivos regulares son los que contienen información del usuario.

Los directorios son sistemas de archivos para mantener la estructura del sistema de archivos.

Page 17: Sistema de Archivos

Tipo de Archivos

Los archivos especiales de caracteres se relacionan con la entrada y salida y se utilizan para modelar dispositivos de E/S en serie, tales como terminales, impresoras y redes.

Los archivos especiales de bloques se utilizan para modelar discos.

Page 18: Sistema de Archivos

Tipo de Archivos

Los archivos regulares son ASCII o binarios.

Los archivos ASCII consisten en líneas de texto.

La ventaja de los archivos ASCII es que se pueden imprimir como están, y se pueden editar con cualquier editor de texto.

Si muchos programas utilizan archivos ASCII para entrada y salida, es fácil conectar la salida de un programa con la entrada de otro.

Los archivos binarios no son comprensibles para algunas aplicaciones.

Page 19: Sistema de Archivos

Tipo de ArchivosTener archivos fuertemente tipificados como éstos ocasiona

problemas cada vez que el usuario hace algo que los diseñadores del sistema no esperaban. Por ejemplo, considere

un sistema en el que los archivos de salida de un programa tienen la extensión .dat (archivos de datos). Si un usuario escribe un programa formateador que lea un archivo .c

(programa de C), lo transforma (por ejemplo, convirtiéndolo a un esquema de sangría estándar) y después escribe el archivo

transformado como salida, el archivo de salida será de tipo .dat . Si el usuario trata de ofrecer esto al compilador de C para que lo compile, el sistema se rehusará debido a que

tienen la extensión incorrecta. Los intentos de copiar archivo.dat a archivo.c serán rechazados por el sistema como

inválidos (para proteger al usuario contra los errores).

Page 20: Sistema de Archivos

Acceso a Archivos

Los primeros sistemas operativos proporcionaban un solo tipo de acceso: acceso secuencial.

Un proceso podía leer todos los bytes o registros en un archivo en orden, empezando desde el principio y son saltarse.

Se podían rebobinar para leerlos todos nuevamente.

Convenientes para la cinta magnética.

Se empezó a usar discos para almacenar, y se pudieron leer los bytes o registros de un archivos fuera de orden, accediendo a los registros por llave en lugar de su posición.

Estos se llaman archivos de acceso aleatorio.

Son esenciales para muchas aplicaciones, como bases de datos.

Page 21: Sistema de Archivos

Atributos de Archivos

Todo archivo tiene su nombre y sus datos.

Además asocian otra información con cada archivo: fecha, hora modificación del archivo y su tamaño.

Estos elementos se denominan atributos, o metadatos.

La lista de atributos varia de un sistema a otro.

Page 22: Sistema de Archivos

Atributos de Archivos

Page 23: Sistema de Archivos

Atributos de Archivos

Los primeros cuatro se relacionan con la protección del archivo e indican quien puede acceder a el y quien no.

En algunos sistemas se debe acceder una contraseña para ingresar al archivo.

Las banderas son bits que controlan o habilitan cierta propiedad específica del archivo.

La bandera de archivo es un bit que lleva el registro si el archivo se ha respaldado recientemente.

El programa de respaldo lo desactiva y el sistema operativo lo activa cada vez que se modifica un archivo.

La bandera temporal permite marcar un archivo para la eliminación automática cuando el proceso que lo creó termina.

Page 24: Sistema de Archivos

Atributos de Archivos

Los campos longitud de registro, posición de llave y longitud de llave sólo están presentes en los archivos en cuyos registros se pueden realizar búsquedas mediante el uso de una llave. Ellos proporcionan la información requerida para buscar las llaves.

Los diversos tiempos llevan la cuenta de cuándo se creó el archivo, su acceso y su modificación más recientes. Éstos son útiles para una variedad de propósitos. Por ejemplo, un archivo de código fuente que se ha modificado después de la creación del archivo de código objeto correspondiente necesita volver a compilarse. Estos campos proporcionan la información necesaria.

Page 25: Sistema de Archivos

Atributo de Archivos

El tamaño actual indica qué tan grande es el archivo en el presente. Algunos sistemas operativos de computadoras mainframe antiguas requieren que se especifique el tamaño máximo a la hora de crear el archivo, para poder permitir que el sistema operativo reserve la cantidad máxima de almacenamiento de antemano. Los sistemas operativos de estaciones de trabajo y computadoras personales son lo bastante inteligentes como para arreglárselas sin esta característica.

Page 26: Sistema de Archivos

Operaciones de Archivos

Los archivos existen para almacenar información y recuperarse más adelante.

Se utilizan llamadas al sistemas para esta operación:

Create: el archivo se crea sin datos. Anuncia la llegada del archivo y establece alguno de sus atributos.

Delete: se elimina cuando no es necesario. Liberar espacio en disco. Siempre hay una llamada al sistema para este propósito.

Open: antes de usarlo, un proceso debe abrirlo. Lleva los atributos y la lista de direcciones del disco a la memoria principal, para tener acceso a llamados posteriores.

Page 27: Sistema de Archivos

Operaciones de Archivos

Close: cuando terminan todos los accesos se hace la llamada para liberar espacio en la memoria principal.

Read: los datos se leen del archivo. El llamador debe especificar cuántos datos se necesitan y proporcionar un buffer para colocarlos.

Write: los datos se escriben en el archivo otra vez., por o general en la posición actual. Si la posición actual está al final, el tamaño aumenta y si lo hace al principio o mitad se sobrescriben y se pierde la información inicial.

Page 28: Sistema de Archivos

Operaciones de Archivos

Append: llamada restringida de write para escribir solo al final del archivo.

Seek: para archivos de acceso aleatorio se debe especificar de donde se van a tomar los datos.

Get attributes: a menudo, los procesos deben leer los atributos de los archivos para realizar sus procesos.

Set attributes: algunos atributos puede establecerlos el usuario y se pueden modificar después de creado el archivo.

Rename: con frecuencia ocurre que un usuario quiera cambiar el nombre del archivo.

Page 29: Sistema de Archivos

Actividad

1. Responder:

Los sistemas que soportan archivos secuenciales siempre tienen una operación para rebobinar los archivos. ¿Los sistemas que soportan archivos de acceso aleatorio la necesitan también?

Algunos sistemas operativos proporcionan una llamada al sistema rename para dar a un archivo un nuevo nombre. ¿Hay acaso alguna diferencia entre utilizar esta llamada para cambiar el nombre de un archivo y sólo copiar el archivo a uno nuevo con el nuevo nombre, eliminando después el archivo anterior?

Page 30: Sistema de Archivos

Actividad

2. Preparar exposición en grupos de 4 personas uno de los siguientes temas:

• Directorios.

• Implementación de sistemas de archivos

• Administración y optimización de sistemas de archivos.

• Ejemplos de sistemas de archivos.

• Tipos de almacenamiento en disco: FAT, NTFS, NFS, HPS, REISER, EXT3, EXT4.

Page 31: Sistema de Archivos

Bibliografía

ANDREW S. TANENBAUM. Sistemas Operativos Modernos. Tercera Edición. 2009.