Gestión de almacenamiento

De Departamento de Informatica
Saltar a: navegación, buscar

Contenido

Introducción

El Sistema Operativo brinda una vista lógica y uniforme del sistema de almacenamiento de la información para que el sistema informático sea cómodo para los usuarios.

  • Abstrae las propiedades físicas de los dispositivos de almacenamiento y define una unidad de almacenamiento lógico,el Archivo.
  • Asigna los diversos archivos a los soportes físicos y accede a dichos archivos a través de los dispositivos de almacenamiento.

Gestión del sistema de Archivos

Uno de los componente más visibles de los sistemas operativos.

Disco magnético en uso
¿Dónde se almacena la información?

Las computadoras pueden almacenar la información en diferentes tipos de medios físicos tales como : Discos magnéticos, discos ópticos y cintas magnéticas (cada uno con sus propias características y organización física).

¿Cómo se controlan los medios?

Cada medio se controla mediante un dispositivo, tal como una unidad de disco o una unidad de cinta, que también tiene sus propias características distintivas por ejemplo:velocidad de acceso,capacidad,velocidad de transferencia de datos, método de acceso(secuencial o aleatorio), etc.

Sistema de archivos por capas
¿Qué es un archivo?

Es una colección de información relacionada la cuál es definida por quien la crea.Pueden representar programas y datos(numéricos, alfabéticos, alfanuméricos,binarios).Pueden tener formato libre o rígido.

¿Cómo funcionan dentro de un SO?

El Sistema operativo gestiona los medio de almacenamiento masivos, como las cintas y discos, y los dispositivos que los controlan, organizando los archivos en directorios para su fácil uso. Cuando varios usuarios pueden acceder a los mismos archivos, es preferible controlar las acciones con diversos modos(Lectura, escritura o modificación).

¿Qué responsabilidades adopta el SO en gestión de archivos?

En lo que se refiere a gestión de archivos el sistema operativo es responsable de las siguientes actividades:

  • Creación y borrado de Archivos.
  • Creación y borrado de directorios para organizar los archivos.
  • Soporte de primitivas para manipular archivos y directorios.
  • Asignación de archivos a los dispositivos de almacenamiento secundario.
  • Copia de seguridad de los archivos en medios de almacenamiento estable.

Gestión del almacenamiento masivo

¿Para qué existe el almacenamiento masivo?

La memoria principal es muy pequeña para acomodar todos los datos y programas, y algunos datos se pierden si le quitamos la alimentación de corriente, por ende surge la necesidad de proporcionar un almacenamiento secundario como respaldo a la memoria principal.

Ejemplo de manejo de memoria por parte del Sistema operativo
Discos y almacenamiento masivo

La mayor parte de los programas se almacenan en un disco hasta que se cargan en memoria, y luego usan el disco como origen y destino de su procesamiento.

¿Qué responsabilidades adopta el SO en gestión de disco?
  • Gestionar el espacio libre.
  • Asignar espacio de almacenamiento.
  • Planificar el disco.

Dentro de las tareas más importantes del SO está la de manejar dispositivos físicos y presentar una abstracción de máquina virtual a las aplicaciones, por ejemplo en el caso de los discos duros, el SO provee dos abstracciones:

1) Dispositivo crudo (RAW): arreglo de bloques de datos.

Ejemplo: Un dispositivo crudo serían las cintas, una aplicación no abre un archivo en la cinta, abre toda la cinta como dispositivo crudo.

2) Sistema de archivos : El SO encola y planifica las solicitudes intercaladas de varias aplicaciones.

Ejemplo de medios de almacenamiento terciario
Almacenamiento Terciario

Son sistemas de almacenamiento más lentos,baratos y con mayor capacidad que los almacenamientos secundarios. Ejemplos: Unidades de cinta magnética, unidades de CD y DV, cuyos soportes físicos varian entre los formatos WORM (de las siglas en inglés: Write once, read many times)y RW.No es de vital importancia para el rendimiento del sistema, lo que no implica que no haya que gestionarlo.Esta gestión puede recaer en el sistema operativo o en los programas de aplicación.Cuando recae la gestión en los sistemas operativos proporcionan funciones tales como : montaje y desmontaje de medios en los dispositivos, la asignación y liberación de dispositivos para el uso exclusivo de los procesos, migración de datos de almacenamiento secundario a terciario.

Almacenamiento en caché

Cuando usamos la información que se mantiene en la memoria principal se copia de forma temporal en un sistema más rápido, la caché.Si la información se encuentra en la caché se utiliza sino se hace una copia de la información en la memoria caché suponiendo que se necesitará nuevamente.Los registros programables internos,como registros de índice, proporcionan una caché de alta velocidad para la memoria principal.

Objetivos de la memoria caché

  • Mantener el tiempo de acceso promedio a la memoria lo más pequeño posible.
  • Reducir el ancho de banda entre memoria principal y procesador.

Ejemplo:

En la figura 1.8 se puede apreciar la utilidad de la memoria caché, en este caso la dirección generada por el procesador es comparada con los datos que están almacenados en la caché, si el dato está presente, el procesador lo lee desde la cache, si el dato no está presente, se transfiere desde la memoria principal a la cache.

Caché y hardware

Hay caches que se implementan totalmente mediante hardware.

Figura 1.8 Ejemplo de la importancia de la memoria caché

Ejemplo:

La mayoría de los sistemas disponen de una caché de instrucciones para almacenar las siguientes instrucciones en espera de ser ejecutadas.Si no fuera por esto la CPU tendría que esperar muchos ciclos mientras las instrucciones se extraen de la memoria principal.Por lo mismo la mayoría de los sistemas poseen 1 o más cachés de datos de alta velocidad en la jerarquía de memoria.

Gestión de la caché

por su tamaño limitado gestionarlas es un problema, por ende escoger el tamaño y una política de reemplazo adecuada puede llegar a producir un incremento enorme del rendimiento.

Ejemplo: En la figura 1.9 podemos ver una comparación de las prestaciones de almacenamiento en las estaciones de trabajo grandes y pequeños servidores.Aquí se nos señala la necesidad de usar el almacenamiento en caché.

Figura 1.9 Prestaciones de los distintos niveles de almacenamiento

Memoria principal y memoria caché

La memoria principal puede verse como una caché rápida para el almacenamiento secundario, ya que los datos en almacenamiento secundario deben copiarse en la memoria principal para ser utilizados.

Datos del sistema de archivos

Estos residen permanentemente en el almacenamiento secundario en diversos niveles jerárquicos de almacenamiento, como por ejemplo:

  • En el Nivel superior el sistema operativo puede mantener una caché de datos del sistema de archivos en la memoria principal.
  • En discos RAM(discos de estado sólido) para tener un almacenamiento de alta velocidad, accediendo a dichos discos a través de la interfaz del sistema de archivos.
  • En discos Magnéticos (La mayor parte de almacenamiento secundario se hace en estos) los datos se copian a menudo en cintas magnéticas o discos extraíbles con el fin de protegerlos frente a pérdidas de datos en caso de falla en algún disco duro.

Almacenamiento jerárquico

La información en estos tipo de almacenamiento puede set explícita o implícita, esto depende del diseño del hardware y del software que posea el Sistema Operativo.

Ejemplo:

  • Cuando se transfieren datos de la caché a la CPU y los registros,esta es una función sólo del Hardware en donde el sistema operativo no tiene nada que ver.
  • Cuando se transfieren datos de disco a memoria esta es una función sólo del sistema operativo donde el hardware no interviene.
Datos y almacenamiento jerárquico

Los datos pueden aparecer en diferentes niveles del almacenamiento.

Ejemplo(ver figura 1.10):

Tenemos un entero denominado E que deseamos incrementar a E+1 y este se encuentra en el archivo A, y este último se encuentra en un Disco Magnetico.¿Que hace la operación de incremento?.

  • Esta ejecuta primero una operación de E/S para copiar el bloque del disco en el cual esta el entero E a la memoria principal.
  • Copia E en la caché y en un registro interno, razón por la cual la copia de E aparece el diversos lugares (Disco Magnético, memoria principal,caché y un registro interno).
Figura 1.10 Migración de un entero E de un Disco a un registro.

Después de este incremento el valor de E es diferente en los sistemas de almacenamiento. La única forma de que E sea el igual al original es que posteriormente su nuevo valor se escriba desde el registro interno al disco.

¿Qué sucede con los entornos al tratar de realizar la operación del ejemplo?

  • En un entorno informático donde se ejecuta un proceso cada vez, esta función no tiene dificultad, porque un acceso al entero E siempre se realizará a la copia situada en el nivel más alto de la jerarquía.
  • En un entorno multi-tarea donde la CPU conmuta entre varios procesos, se debe tener cuidado para asegurar que, si varios procesos quieren acceder a E, cada uno pueda tener el valor más reciente del entero.
  • En un entorno multi-procesador donde cada una de las CPU contiene una caché local, una copia de E puede encontrarse en diferentes caché, teniendo en cuenta que si se actualiza el valor en una caché debemos reflejar ese cambio inmediatamente en las restantes (coherencia de caché).
  • En un entorno distribuido donde se puede tener varias copias del mismo archivo en diferentes computadoras distribuidas geográficamente.Se debe garantizar que al actualizar una replica en un sitio,se deba inmediatamente actualizar la copia en las demás computadoras.

Sistemas de E/S

Estructura típica de PC con Bus
¿Para qué están los sistemas de E/S?

Para ser ocultados, ya que uno de los propósitos de los sistemas operativos es ocultar al usuario las peculiaridades de los dispositivos hardware específicos.

Ejemplo

En la figura 3.2 se puede apreciar que la capa correspondiente a 'device drivers' esconde al subsistema de E/S del kernel las diferencias entre los diferentes controladores.

Ejemplo UNIX

En UNIX las peculiaridades de los dispositivos de E/S se ocultan a la mayor parte del propio Sistema Operativo mediante el subSistema de E/S.

Objetivos del SO relacionados con sistemas de E/S

El sistema operativo debe permitir que las aplicaciones puedan utilizar esos dispositivos, otorgando una interfaz que los presente de la manera máss simple posible.

Los dispositivos de E/S son una de las partes mas lentas de un sistema de computo. Por lo tanto, el SO, debe manejar la situación con el fin de amortizar esa diferencia de velocidad.

La función de un SO en los sistemas de E/S, es manejar y controlar las operaciones y los dispositivos de E/S.

Figura 3.2 Estructura en capas de software de la sección del kernel relacionada con la E/S
Subsistema de E/S

El subsistema de E/S consta de varios componentes:

  • Un componente de gestión de memoria que incluye almacenamiento en búfer, gestión de caché y gestión de colas.
  • Una interfaz general para controladores de dispositivo.
  • Controladores para dispositivos hardware específicos(sólo ellos pueden conocer las peculiaridades del dispositivo que tienen asignado).



Tema de investigación: Sistemas de almacenamiento en red

Referencias

Herramientas personales
Espacios de nombres
Variantes
Acciones
Navegación
Herramientas