martes, 5 de diciembre de 2017

Unidad 3 - Administración de Memoria

3.1 Política y Filosofía

La administración de memoria se refiere a los distintos métodos y operaciones que se encargan de obtener la máxima utilidad de la memoria, organizando los procesos y programas que se ejecutan de manera tal que se aproveche de la mejor manera posible el espacio disponible.

Para poder lograrlo, la operación principal que realiza es la de trasladar la información que deberá ser ejecutada por el procesador, a la memoria principal. Actualmente esta administración se conoce como Memoria Virtual ya que no es la memoria física del procesador sino una memoria virtual que la representa. Entre algunas ventajas, esta memoria permite que el sistema cuente con una memoria más extensa teniendo la misma memoria real, con lo que esta se puede utilizar de manera más eficiente. Y por supuesto, que los programas que son utilizados no ocupen lugar innecesario.

Política

El sistema operativo debe llevar a cabo una política de espacio de asignación de memoria.
Si se necesita colocar un nuevo programa en el almacenamiento principal y éste está lleno, ¿Cuál de los otros programas se desaloja? Una vez que hayan respondido esas preguntas, entonces será posible determinar cuál es la mejor política de asignación de memoria.

Entre las políticas de asignación de memoria tenemos las siguientes:

FIFO
Los procesos se despachan de acuerdo a su tiempo de llega a la cola de procesos listos, si un proceso llega al procesador sale hasta que termine. La política FIFO actualmente no se usa como el esquema principal de un sistema, pero si por ejemplo cuando se usa una política de prioridades y hay procesos con la misma prioridad, a estos se les podría aplicar FIFO.

Round Robin
Los procesos se atienden en la forma que lo hace el FIFO, pero se les asigna una cantidad limitada de tiempo en el procesador, si no termina en ese lapso se manda al final de la lista de procesos listos.

SJF (Shortest job first - Prioridad del trabajo más corto)
Se ejecuta primero el proceso en espera que tiene el menor tiempo estimado. SJF favorece a los procesos cortos, ya que los largos podrían llegar a rezagarse mucho tiempo e incluso nunca ejecutarse.

SRT (Sortest remaining time scheduling – Tiempo restante más corto)
En SJF una vez que un proceso comienza su ejecución continúa hasta terminar. En SRT, un proceso en ejecución puede ser desposeído por uno nuevo de menor tiempo de ejecución.

HRN: (highest response ratio next – Prioridad de la tasa de respuesta más alta)
Política no apropiativa que corrige el retraso excesivo de procesos grandes que produce el SJF, para así no caer en un favoritismo excesivo por los procesos cortos, lo logra usando una formula basada en el tiempo de espera y el tiempo de servicio, con lo cual la prioridad de cada trabajo no solo está en función del tiempo de servicio sino también del tiempo que ha esperado para ser atendido.

3.2 Memoria real


La organización y administración de la “memoria principal ”, “memoria primaria” o “memoria real” de un sistema ha sido y es uno de los factores más importantes en el diseño de los S. O.


Administración del Almacenamiento

Independientemente del esquema de organización hay que decidir las estrategias que se utilizaran para optimizar el rendimiento.

Las “estrategias de administración” deben considerar:
  • ¿ cuándo se consigue un nuevo programa para colocar en la memoria ?:
    • ¿ cuando el sistema lo pide específicamente o se intenta anticiparse a las peticiones ?.
  • ¿ dónde se colocará el programa que se ejecutará a continuación ?:
    • ¿ se prioriza el tiempo de carga o la optimización en el uso del almacenamiento ?.
  • ¿ con qué criterio se desplazarán programas ?.

Jerarquía de Almacenamiento

Los programas y datos tienen que estar en la memoria principal para poder ejecutarse o ser referenciados. Los programas y datos que no son necesarios de inmediato pueden mantenerse en el almacenamiento secundario. El almacenamiento principal es más costoso y menor que el secundario pero de acceso más rápido.
Los sistemas con varios niveles de almacenamiento requieren destinar recursos para administrar el movimiento de programas y datos entre niveles.





Estrategias de Administración del Almacenamiento

Están dirigidas a la obtención del mejor uso posible del recurso del almacenamiento principal.
Se dividen en las siguientes categorías:
  • Estrategias de búsqueda:
    • Estrategias de búsqueda por demanda.
    • Estrategias de búsqueda anticipada.
  • Estrategias de colocación.
  • Estrategias de reposición.

3.3 Organización de memoria virtual


“Almacenamiento virtual” significa la capacidad de direccionar un espacio de almacenamiento mucho mayor que el disponible en el almacenamiento primario de determinado sistema de computación.
Esta tecnología apareció en 1960 en la Universidad de Manchester (Inglaterra), en el sistema “Atlas”.
Los métodos más comunes de implementación son mediante:
  • Técnicas de “paginación”.
  • Técnicas de “segmentación”.
  • Una combinación de ambas técnicas.
Las direcciones generadas por los programas en su ejecución no son, necesariamente, aquellas contenidas en el almacenamiento primario (memoria real), ya que las direcciones virtuales suelen seleccionarse dentro de un número mucho mayor de direcciones que las disponibles dentro del almacenamiento primario.

La evolución en las organizaciones de almacenamiento puede resumirse como sigue:
  • Real:
    • Sistemas dedicados a un solo usuario.
  • Real:
    • Sistemas de multiprogramación en memoria real:
      • Multiprogramación en partición fija:
        • Absoluta.
        • Relocalizable (reubicable).
      • Multiprogramación en partición variable.
  • Virtual:
    • Multiprogramación en almacenamiento virtual:
      • Paginación pura.
      • Segmentación pura.
      • Combinación paginación / segmentación.

Conceptos Básicos de Almacenamiento Virtual

La clave del concepto de memoria (almacenamiento) virtual esta en la disociación:
  • De las direcciones a las que hace referencia un programa.
  • De las direcciones disponibles en la memoria real (almacenamiento primario).
Los principales conceptos son los siguientes:
  • “Direcciones virtuales”:
    • Son las referidas por un proceso en ejecución.
  • “Direcciones reales”:
    • Son las disponibles dentro del almacenamiento primario.
  • “Espacio de direcciones virtuales (v)” de un proceso:
    • Es el número de direcciones virtuales a que puede hacer referencia el proceso.
  • “Espacio de direcciones reales (r)” de un computador:
    • Es el número de direcciones reales disponibles en el ordenador.
3.4 Administración de memoria virtual


La clave del concepto de memoria (almacenamiento) virtual esta en la disociación:
  • De las direcciones a las que hace referencia un programa.
  • De las direcciones disponibles en la memoria real (almacenamiento primario).
Mientras el proceso se ejecuta con sus páginas actuales, el sistema carga las demás páginas que estarán disponibles cuando las requiera el proceso.
El S. O. intenta predecir las páginas que un proceso va a necesitar y a continuación precarga estas páginas cuando hay espacio disponible Mientras el proceso ejecuta sus páginas actuales, el sistema carga páginas nuevas que estarán disponibles cuando el proceso las pida, debido a ello, el tiempo de ejecución de un proceso se puede reducir.


Estrategias de Administración del Almacenamiento Virtual

Las diferentes organizaciones de almacenamiento virtual generalmente implementadas son:
  • Paginación.
  • Segmentación.
  • Segmentación y paginación.
Las estrategias para la administración de sistemas de almacenamiento virtual condicionan la conducta de los sistemas de almacenamiento virtual que operan según esas estrategias.

Estrategias de Reposición de Página

Las principales son:
  • El principio de optimización.
  • Reposición de páginas al azar.
  • Primero en entrar - primero en salir.
  • Menos recientemente usada.
  • Menos frecuentemente usada.
  • No usada recientemente.
  • Conjuntos de trabajo.

No hay comentarios:

Publicar un comentario

Unidad 6 - Protección y Seguridad

6.1.- Concepto y Objetivos de Protección y Seguridad Los procesos en un sistema operativo deben protegerse de las actividades realiza...