Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Sistemas de archivos (página 2)




Enviado por ecrivelli



Partes: 1, 2

3) Directorios
de Archivo

Asociado con algunos sistemas de
gestión
de archivos o
cualquier colección de archivos suele
haber un directorio de archivos. El directorio contiene
informnación acerca de los archivos, incluyendo atributos,
localización y propietario. Mucha de esta información, especialmente la concernida
con el almacenamiento es
gestionada por el sistema
operativo. El directorio es propiamente un archivo,
poseído por el sistema operativo
y, accesible a traces de diversas rutinas de gestión
de archivos. Aunque alguna información en los directorios esta
disponible para los usuarios y aplicaciones, en general , la
información se proporciona indirectamente a través
de rutinas del sistema. De este
modo los usuarios pueden acceder directamente al directorio,
incluso en modo de solo lectura.

3.1) Estructura

La manera en que la información se almacena difiere
mucho en los diferentes sistemas. Parte
de la información puede almacenarse en un registro de
cabecera asociado al archivo, esto
reduce el espacio necesario para el directorio, haciendo mas
fácil mantener todo el directorio.
La forma mas fácil de estructuración de un
directorio es una lista de entradas, unas para cada archivo. Esta
estructura
puede representarse con un simple archivo secuencial, con el
nombre del archivo haciendo las veces de clave.

Operaciones que se pueden realizar con un directorio:

  1. Buscar: Cuando alguien referencia el archivo, debe buscarse
    en el directorio la entrada correspondiente al archivo.
  2. Crear archivo: Al crear un nuevo archivo. debe
    añadirse una entrada al directorio.
  3. Borrar archivo: Al borrar un archivo, debe eliminarse una
    entrada al directorio.
  4. Listar directorio: Puede solicitarse todo el directorio o
    una parte.

Una simple lista no se ajusta bien a estas operaciones. Si
el directorio es una simple lista secuencias, no ofrecerá
ayuda en la
organización de los archivos y obligara al usuario a
tener cuidado de no usar el mismo nombre para dos tipos
diferentes de archivos. Para resolver este problema se puede
acudir a un esquema de dos niveles donde hay un directorio para
cada usuario y un directorio maestro.
Un método mas
potente y flexible es el directorio jerárquico o
estructurado en arbol. Existe un directorio maestro que contiene
un numero determinado de directorios de usuario. Cada uno de
estos directorios puede tener a su vez subdirectorios y archivos
como entradas. Esto se cumple en cualquier nivel.
Para organizar cada directorio y subdirectorio. El método mas
simple es almacenar cada directorio como un archivo secuencial.
Cuando los directorios contengan un numero muy grande de
entradas, tal organización puede conducir a tiempos de,
búsqueda innecesariamente grandes. En ese caso se prefiere
una estructura de
dispersión.

3.2) Designación (Naming)

Los usuarios necesitan poder
referirse a un archivo mediante un nombre simbólico. Cada
archivo del sistema debe tener un nombre único para que
las referencias al archivo no sean ambiguas. Por otro lado, es
una carga inaceptable para los usuarios el proporcionar nombres
únicos, especialmente en los sistemas compartidos.
El uso de directorios estructurados en arbol minimiza la
dificultad de asignar nombres unicos. Cualquier archivo del
sistema puede ser localizado siguiendo un camino desde, el
directorio raíz o maestro. descendiendo por varias ramas
hasta que se alcance el archivo. La serie de nombres de
directorios, terminados con el propio nombre del archivo,
constituye el propio nombre del camino del archivo.
Cada usuario interactivo o proceso tiene
asociado un directorio actual, conocido a menudo como directorio
de trabajo.

4) El
Compartir Archivos ( File Sharing)

En un sistema multiusuario, casi siempre existe la necesidad
de permitir a los usuarios

Compartir archivos. Dos problemas
surgen:

  1. Los derechos de accesos
  2. Gestion de los accesos simultáneos

Derechos de Acceso:

El sistema de archivos provee una herramienta flexible para
permitir compartir extensos archivos entre los usuarios. El
sistema de archivos debe proporcionar un numero de opciones de
modo en que un archivo que es accedido pueda ser controlado.
Normalmente, al usuarios o a los grupos de usuarios se les
otorgan ciertos derechos de acceso a cada
archivo. Un amplio rango de derechos de acceso se ha venido
usando. La siguiente lista representa los derecho de acceso que
pueden ser asignados a un usuario en particular para un archivo
en particular:

  1. Ninguno: El usuario no puede siquiera determinar la
    existencia del archivo ni mucho menos acceder al mismo. No se
    permite al usuario leer el directorio de usuario que incluya al
    archivo.
  2. Conocimiento: El usuario sabe de la existencia del archivo
    Y quien el dueño. El usuario puede solicitar los
    derechos de acceso adicionales al propietario.
  3. Ejecución: El usuario puede ejecutar y cargar un
    programa
    pero no copiarlo.
  4. Lectura: El usuario puede leer el archivo para cualquier
    propósito, incluyendo copia y ejecución.
  5. Adición: El usuario puede añadir datos al
    archivo, generalmente al final, pero no puede modificar o
    borrar el contenido del mismo.
  6. Actualización: El usuario puede modificar, borrar y
    añadir otros datos al
    archivo.
  7. Cambio de protección: El usuario puede cambiar los
    derechos de acceso otorgados a usuarios.
  8. Borrado: El usuario puede borrar el archivo del sistema de
    archivos.

Los derechos constituyen una jerarquía. Si un usuario
adquiere el derecho de la actualización para un archivo
determinado, también habrá adquirido los derechos
siguientes: conocimiento,
ejecución, lectura y
adición.

El propietario de un archivo dispone de los derecho de acceso
listados antes y puede otorgar derechos a los otros. Puede
ofrecerse acceso a las siguientes clases de usuarios:

  1. Usuario específico: Usuarios individuales quienes
    son designados por su ID de usuario.
  2. Grupos de usuarios: Un conjunto de usuarios no definidos
    individualmente.
  3. Todos: Todos los usuarios que tengan acceso al sistema.
    Estos serán archivos públicos.

Acceso Simultáneos:

Cuando el acceso es concedido para añadir o actualizar
un archivo a mas de un usuario, el sistema operativo
o el sistema de gestión de archivos debe hacer cumplir una
disciplina. Un
método de fuerza bruta
consiste en permitir a los usuarios bloquear el archivo entero
cuando lo vaya a actualizar. Un mejor control es
bloquear los registros
individuales durante la actualización. Al disertar la
posibilidad de accesos comparados, deben abordarse aspectos de
exclusión mutua e interbloqueo.

5) Agrupación de Registros (Record
Blocking)

Para realizar E/S, los registros deben organizarse en bloques.
Dado un tamaño de bloque, pueden seguirse los siguientes
tres métodos de
agrupación en bloques:

  1. Bloques fijos: Se usan registros de longitud fija y un
    numero entero de registros son Guardados en un bloque. Puede
    haber espacio sin usar al final de cada bloque.
  2. Bloque de longitud variable por tramos: Se usan registros
    de longitud variable y agrupados en bloques sin dejar espacios
    sin usar.
  3. Bloque de longitud variable sin tramos: Son usados
    registros de longitud variable, pero no se dividen en tramos.
    En la mayoria de los bloques habrá un espacio
    desperdiciado, debido a la imposibilidad de aprovechar el resto
    del bloque si el registro
    siguiente es mayor que el espacio sin usar restante.

Los bloques de tamaño fijo son el modo mas común
de archivos secuenciales con registro de

longitud variable. Los bloques de longitud variable por tramos
constituyen un

almacenamiento eficaz y no ponen limites al
tamaño de los registros. Pero esta tecnica es
difícil de implementar.

  

6)
Gestión del
Almacenamiento
secundario (Secondary Storage Management)

En el almacenamiento secundarlo, un archivo consiste en una
colección de bloques. El sistema de gestiónele
archivos es el responsable de la asignación de los bloques
a archivos. Esto crea dos problemas
sobre la gestión. Primero, el espacio en el almacenamiento
secundario debe ser designados a los archivos, en segundo lugar,
es necesario guardar constancia del espacio disponible para
asignar. Estas dos tareas están relacionadas, el metodo
tomado para asignar los archivos puede influir en el
método de gestión del espacio libre. También
existe una interacción entre la estructura de archivo y la
política
de asignación.

6.1) Asignación de Archivos

Surgen varias cuestiones:

1. Cuando se crea un archivo nuevo. ¿ se asigna de
una sola vez el maximo espacio que necesite?

2. El espacio se asigna a un archivo en forma de una o mas
unidades contiguas que se llaman secciones. Un tamaño de
una sección puede variar desde un único bloque a
un archivo entera. Que tamaño de sección deberia
usarse para asignar archivos?

3. ¿Qué tipos de estructura de
datos o tabla se usaran para guardar constancia de las
secciones asignadas a un archivo. Dicha tabla se conoce
normalmente como tabla de asignacion de archivos (FAT).

Asignación previa frente a Asignación
dinámica

Una política de asignación requiere que
el tamaño máximo de un archivo sea declarado un el
momento de crearlo. En un numero de casos, como el compilar los
programas, la
producción del resumen de los datos del
archivo, o la transferencia de un archivo desde otro sistema por
una red de comunicaciones, este valor puede
estimarse. Pero en muchas aplicaciones es dificil estimar el
tamaño máximo del archivo.

Tamaño de Sección

La segunda cuestión de la lista anterior es la del
tamaño de sección asignada a los archivos. En un
extremo, se puede asignar una sección suficientemente
grande para guardar el archivo entero. En el otro extremo, se
asigna el espacio en disco de bloque en bloque. Al elegir el
tamaño de sección, debe haber un compromiso
relativo a la eficiencia desde
el punto de vista de un solo archivo frente al del sistema
global.

1- La contigüidad del espacio aumenta el
rendimiento.

2- Disponer de un gran numero de secciones pequeñas
aumenta el tamaño de las tablas necesarias para gestionar
la asignación de información.

3. Disponer de secciones de tamaño fijo simplifica la
resignación del espacio.

4. Disponer de secciones de tamaño variable o
secciones pequeñas de tamaño fijo minimiza la
perdida de espacio no usado provocado por la sobre
asignación.

  1. Secciones contiguas variables y
    grandes:
    Esta opción ofrecerá un rendimiento
    mejor. El tamaño variable evitara la perdida y las
    tablas de asignación de archivos serán
    pequeñas. El espacio es difícil de
    reutilizar.
  2. Bloques: Las secciones fijas y pequeñas
    ofrecen una flexibilidad mayor. La contigüidad se abandona
    y los bloques se asignan a medida que se necesitan.

Cualquier opción es compatible con la asignación
previa o con la asignación dinámica. En el primer caso se asigna
previamente a los archivos un grupo contiguo
de bloques. En el segundo caso, todas las secciones necesarias
son asignadas de una vez, Entonces la tabla de asignación
de archivos permanecerá con tamaño fijo.

No esta claro que estrategia es la
mejor. La dificultad de moldear estrategias
alternativas esta en que intervienen muchos factores incluyendo
los tipos de archivo, la pauta a los accesos a archivo, el grado
de rnultiprogramacion, etc

Métodos de Asignación de Archivos

Con Asignación contigua: Cuando se crea un archivo se
le asigna un unico conjunto contiguo de bloques. Esta es una
estrategia de
asignación previa que emplea secciones de tamaño
variable. La tabla de asignación de archivos necesita solo
una entrada por cada archivo, que muestre el bloque de comienzo y
la longitud del archivo. La asignación contigua es la
mejor desde el punto de vista de un archivo secuencias
individual.
Con Asignación encadenada: La asignación
normalmente se hace con bloques individuales. Cada bloque
contendrá un puntero al siguiente bloque de la cadena. La
tabla de asignación de archivos necesita de nuevo una sola
entrada por cada archivo que muestre el bloque de comienzo y la
longitud del archivo. No hay que preocuparse por la
fragmentación externa porque solo se necesita un solo
bloque cada vez. Este tipo de organización física se ajusta
mejor a los archivos secuenciales que van a ser procesados
secuencialmente.
La asignación indexada: Trata mucho de los problemas de
las asignaciones contigua y encadenada. La tabla de
asignación de archivos contienen un índice separado
de un nivel para cada archivo; el índice posee una entrada
para cada sección asignada al archivo. Los índices
no están almacenados físicamente como parte de la
tabla de asignación de archivos. El índice del
archivo se guardara en un bloque aparte y la entrada del archivo
en la tabla de asignación apuntada a dicho bloque. La
asignación indexada soporta tanto el acceso secuencial
como el acceso directo a los archivos.

7) Gestión del Espacio Libre

Al igual que al espacio asignado a los archivos, se debe
gestionar el espacio que no queda asignado actualmente a ningun
archivo. Para llevar a cabo cualquiera de las técnicas
de asignación que se han descrito, es necesario saber que
bloques del disco están disponibles. Hace falta una tabla
de asignación de disco además de una tabla de
asignación de archivos. Tres técnicas son de uso
común:

  1. Las tablas de bits.
  2. Las secciones libres encadenadas.
  3. Y la indexación.

Tablas de Bíts

El método de las tablas de bits utiliza un vector que
contiene un bit por cada bloque del disco. Cada entrada de igual
a 0 corresponde a u bloque libre y cada 1 corresponde a un bloque
en uso. Las tablas de bits tienen la ventaja de que es
relativamente facil encontrar un bloque o un grupo continuo
de bloques libres. Las tablas de bits trabajan bien con
cualquiera de los métodos de
asignación de archivos. Otra ventaja es que puede ser tan
pequeña como sea posible y puede mantenerse en memoria cada vez
que se realice una asignación.

Secciones libres encadenadas

Las secciones libres pueden encadenarse juntas mediante un
puntero y un valor de
longitud en cada sección libre. Este método tiene
un gasto minimo porque no hay necesidad de tabla de asignacion de
disco, sin simplemente un puntero al comienzo de la cadena y la
longitud de la primera seccion. Este método sirve para
todas las técnicas de asignación de archivos.

Indexación

El método de indexación trata el espacio libre
como si fuera un archivo y utiliza una tabla índice. Por
razones de eficiencia, el
índice debe trabajar con secciones de tamaño
variable mejor que con bloques. De este modo, habrá una
entrada en la tabla para cada sección libre del disco.
Este procedimiento
ofrece un soporte eficaz para todos los métodos de
asignación de archivos.

8)
Fiabilidad

Considérese el escenario siguiente:

1. El usuario A solicita una asignación para
añadir datos a un archivo existente.

2. La petición se atiende y se actualizan en memoria
principal las tablas de asignación de disco y archivos,
pero no aun en el disco.

3. El sistema se hunde y a continuacion se reinicia

4. El usuario B solicita una asignación y se le
otorga un espacio en el disco que se solapa con la ultima
asignación hecha al usuario A.

5. El usuario A accede a la sección solapada mediante
una referencia que esta almacenada en el archivo de A.

Esto surge debido al que el sistema mantiene copias de la
tabla de asignación de disco y la tabla de
asignación de archivos en memoria principal. Para evitar
esto puede seguir los siguientes pasos:

1. bloquear en el disco la tabla de asignación de
disco

2- Buscar espacio disponible en la tabla de
asignación de disco.

3- Asignar el espacio, actualizar la tabla de
asignación de disco y actualizar el disco.

4. Actualizar la tabla de asignación de archivos y
actualizar el disco.

5. Desbloquear la tabla de asignación de disco.

9)
Acronimos

UCP Unidad Central de Proceso

S.O. Sistema Operativo

E/S Entrada y Salida

FAT File allocation Table

10)
Bibliografia

  1. Sistemas Operativos. William Stalling
  2. Notas sobre sitemas operativos. Carlos Neetzel

 

 

Autor:

ecrivelli[arroba]hotmail.com

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter