sábado, 18 de septiembre de 2021

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.

Las técnicas que existen para la carga de programas en la memoria son: partición fija, que

es la división de la memoria libre en varias partes (de igual o distinto tamaño) y la partición

dinámica, que son las particiones de la memoria en tamaños que pueden ser variables,

según la cantidad de memoria que necesita cada proceso.

Entre las principales operaciones que desarrolla la administración de memoria se

encuentran la reubicación, que consiste en trasladar procesos activos dentro y fuera e la

memoria principal para maximizar la utilización del procesador; la protección, mecanismos

que protegen los procesos que se ejecutan de interferencias de otros procesos; uso

compartido de códigos y datos, con lo que el mecanismo de protección permite que ciertos

procesos de un mismo programa que comparten una tarea tengan memoria en común.

La parte del sistema operativo que administra la memoria se llama administrador de

memoria y su labor consiste en llevar un registro de las partes de memoria que se estén

utilizando y aquellas que no, con el fin de asignar espacio en memoria a los procesos cuando

éstos la necesiten y liberándola cuando terminen, así como administrar el intercambio entre

la memoria principal y el disco en los casos en los que la memoria principal no le pueda dar

capacidad a todos los procesos que tienen necesidad de ella.

Los sistemas de administración de memoria se pueden clasificar en dos tipos: los que

desplazan los procesos de la memoria principal al disco y viceversa durante la ejecución y

los que no.

Para poder comprender como se administra la memoria es necesario conocer primero que

es la memoria principal, por lo que a continuación se citaran algunas definiciones:

La memoria principal puede ser considerada como un arreglo lineal de localidades

de almacenamiento de un byte de tamaño. Cada localidad de almacenamiento tiene

asignada una dirección que la identifica.

Memoria interna del sistema informático, con direcciones accesibles por los

programas y que puede cargarse en los registros para su posterior ejecución o

procesamiento.

Lugar en el cual se almacenan datos e instrucciones en una computadora antes y

durante su ejecución.

Sea cual sea el esquema de organización del almacenamiento que se adopte para un

sistema específico, es necesario decidir que estrategias se deben utilizar para obtener un

rendimiento óptimo.

Política

El sistema operativo debe llevar a cabo una política de espacio de asignación de memoria.

Esto es necesario cuando se precisa crear el mapa de memoria de un proceso que ocupa

un determinado tamaño para poder así determinar qué zonas libres se deberían utilizar;

esto con el fin de lograr conjugar los siguientes aspectos:

  1. Buen aprovechamiento de la memoria
  2. Algoritmo de decisión eficiente

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.

No hay comentarios.:

Publicar un comentario

1.1. Definición y concepto

Sin el software, una computadora solo es una masa metálica sin utilidad. Con el software, una computadora puede almacenar, procesar y recupe...