Memoria virtual

37
INTEGRANTES ANGELICA MARIA MENDEZ ALBA MILENA RODRIGUEZ DIANA LORENA MARTINEZ JAMER ALEJANDRO GUIZA VERONICA MATEUS M. YEHIMMY DULAY RAMIREZ MEMORIA VIRTUAL

Transcript of Memoria virtual

INTEGRANTES

ANGELICA MARIA MENDEZALBA MILENA RODRIGUEZ DIANA LORENA MARTINEZ

JAMER ALEJANDRO GUIZA VERONICA MATEUS M.

YEHIMMY DULAY RAMIREZ

MEMORIA VIRTUAL

SEGMENTACION

BUFFER DE TRADUCCIÓN ADELANTADA

ALGORITMOS DE SUSTITUCION DE PAGINAS.ALCANCE DE REEMPLAZO

MEMORIA VIRTUAL

SEGMENTACION

VENTAJAS

SEGMENTACION

Permite al programador contemplar la memoria como si constara de varios espacios de direcciones o segmentos.

SEGMENTACION

1. Simplifica el manejo de estructuras de datos crecientes.2. Permite modificar y recompilar los programas independientemente, sin que sea necesario recompilar o volver a montar el conjunto de programas por completo.3. Se presta a la compartición entre procesos.4. Se presta a la protección.

VENTAJAS

TLB (TRANSLATIÒN LOOKSIDE BUFFER):

PAGINACION Y SEGMENTACION COMBINADAS:

BUFFER DE TRADUCCIÓN ADELANTADA

Esta cache funciona del mismo modo que una memoria cache, contiene la entradas de la tabla de paginas usadas hace menos tiempo.Dada una dirección virtual el procesador analizara primero la TLB, si la entrada de tabla de paginas esta presente se obtiene el numero de marco y se forma la dirección real.Si no se encuentra la entrada de la tabla de paginas buscada, un procesador emplea el numero de paginas, para buscar en la tabla de paginas, el proceso y examinar la tabla correspondiente de la entrada de paginas.

TLB (TRANSLATIÒN LOOKSIDE BUFFER):

Si se encuentra en el archivo el bit de presencia es que la pagina esta en memoria principal y el procesador puede obtener el numero de marco de la entrada de tabla de paginas para formar la dirección real.

Una dirección virtual tendrá normalmente un formato de numero de pagina mas desplazamiento. En primer lugar el sistema en memoria para ver si encuentra la entrada en la tabla de paginas, si es así la dirección real se genera combinando el numero de marco con el desplazamiento si no se accede a la entrada de la tabla de paginas.

La paginación que es transparente al programador, elimina la fragmentación externa y de este modo aprovecha la memoria principal de forma eficiente.

Puesto que los fragmentos se cargan y descargan de memoria principal, son de tamaño constante e igual para todos.

En un sistema con paginación y segmentación combinadas, el espacio de direcciones de un usuario se divide en varios segmentos, según el criterio del programador, cada segmento se vuelve a dividir en varias paginas de tamaño fijo que tienen la misma longitud que un marco de memoria principal

PAGINACION Y SEGMENTACION COMBINADAS:

ALGORITMOS DE SUSTITUCIÓN DE PAGINAS.

BASICOS APROXIMACIONES LRU DE CONTEO

FIFO

LRU - LEST RECENTLY USED

OPTIMO

LRU CON BITS DE REFERENCIA ADICIONALES

LRU DE SEGUNDA OPORTUNIDAD O DEL RELOJ

LRU DE SEGUNDA OPORTUNIDAD MEJORADO

LFU - LESS FREQUENTLY USED

MFU - MOST FREQUENTLY USED

Se dividen en:

Son: Son: Son:

Se evalúan ejecutando una cadena particular de referencias de memoria y contabilizan el numero de fallos de pagina en esa cadena.

El objetivo de los algoritmos de sustitución de paginas es obtener la tasa de fallos de paginas mas baja posible.

ALGORITMOS DE SUSTITUCION DE PAGINAS.

En este método el sistema operativo sólo tiene que guardar en qué orden las páginas fueron cargadas, de modo que al necesitar hacer espacio pueda fácilmente elegir la primera página cargada. Se usa una cola, al cargar una página nueva se ingresa en el último lugar. Aunque las colas FIFO son simples e intuitivas, no se comportan de manera aceptable en la aplicación práctica, por lo que es raro su uso en su forma simple. Uno de los problemas que presentan es la llamada Anomalía FIFO o Anomalía de Belady. Belady encontró ejemplos en los que un sistema con un número de marcos de páginas igual a tres tenía menos fallos de páginas que un sistema con cuatro marcos de páginas. El problema consiste en que podemos quitar de memoria una página de memoria muy usada, sólo porque es la más antigua

FIRST IN, FIRST OUT - EL PRIMERO QUE ENTRA ES EL

PRIMERO QUE SALE.

Este algoritmo tiene como finalidad retirar la página que vaya a ser referenciada más tarde, por ejemplo si hay una página A que será usada dentro de 10000 instrucciones, y una página B que será usada dentro de 2800 instrucciones, se debería eliminar de la memoria la página A. Como se puede deducir, para esto el sistema operativo debería ver en cuánto tiempo será usada cada página en memoria y elegir la que está más distante. El problema de este método es que necesita conocimiento del futuro, por lo que es imposible su implementación. Es un algoritmo teórico. Se utiliza a los efectos comparativos con los algoritmos factibles de ser implementados para ver cuál se aproxima más a éste.

OPTIMO.

Este algoritmo difiere del de 'No usada recientemente' en el hecho de que aquel sólo se fija en el intervalo de tiempo desde que se pusieron en 0 los bits de referencia de las páginas, mientras que el algoritmo de 'Menos usada recientemente' intenta proveer un comportamiento casi óptimo mediante la observación de las páginas que menos fueron usadas recientemente. Este tipo de páginas, estadísticamente son las que tienen menor probabilidad de ser usadas nuevamente.

LRU - LEST RECENTLY USED.

Permite obtener información de ordenamiento adicional si registramos los bits de referencia a intervalos adicionales. A medida que un proceso se ejecuta, el bit asociado con cada página referenciada es colocado en ejecución por el hardware. Luego de un tiempo, puede determinarse qué páginas han sido utilizadas examinando los bits.

LRU CON BITS DEREFERENCIA ADICIONALES.

Existe una variante de este algoritmo que sobre la misma idea presenta una mejora en la implementación. Es el algoritmo del reloj, que lo que hace es tener una lista circular, de forma que al llegar al último elemento de la lista, pasa automáticamente al primero. Los elementos no se mueven al final de la cola cuando son accedidos, simplemente se pone su bit de referencia a 1. Esto nos evita tener que hacer movimientos de punteros en el caso de implementarlo con una lista enlazada. De hecho, se puede implementar con un array perfectamente, ahorrando así memoria.

LRU DE SEGUNDA OPORTUNIDAD O DEL RELOJ.

Selecciona la pagina que menos tiempo se tarda en remplazar y que se ha utilizado menos recientemente.

LRU DE SEGUNDA OPORTUNIDAD MEJORADO.

Remplaza las ultimas paginas introducidas recientemente.

LFU - LESS FREQUENTLY USED.

Las paginas mas usadas se remplazan.

MFU - MOST FREQUENTLY USED.

ALCANCE DE REEMPLAZO

ASIGNACIÓN FIJA y ALCANCE LOCAL

SUSUPENSION DE PROCESOS

SIGNACIÓN VARIABLE Y

ALCANCE GLOBAL

La política de asignación variable, permite que el número de marcos asignados cambie a lo largo de su vida, por ejemplo, cuando un proceso sufre un alto porcentaje de fallos de página, a este se le añaden marcos para disminuir este porcentaje.

El alcance de reemplazo, se activa cuando Hay fallos de página, y no hay marcos libres Para su reemplazo. El reemplazo puede ser local o Global. Es local cuando, se escoge Dentro de las páginas residentes del proceso, Y es global cuando todas las páginas en Memoria son candidatas a reemplazar Independientemente de que procesos vengan

ALCANCE DE REEMPLAZO

Un proceso tiene un número fijo de páginas, cuando hay un fallo de página, el sistema operativo, elige entre las del dicho proceso, que están actualmente en memoria. Es necesario decidir por anticipado, la cantidad de memoria asignada a un proceso.

ASIGNACIÓN FIJAY ALCANCE LOCAL

La memoria principal, tendrá varios procesos cada uno con un númeroDe marcos asignados. El sistema operativo normalmente tiene una listaDe marcos libres. Cuando hay un fallo de página, se añade un marcoLibre al conjunto del proceso y se carga la página.

ASIGNACIÓN VARIABLEY ALCANCE GLOBAL

Asignación de memoria en un sistema con memoria virtual.

1. Un proceso cargado en la memoria se le asigna cierto número de marcos en función del tipo de aplicación.2. Cuando se produce un fallo de página, se selecciona la página a reemplazar entre las del conjunto residente del proceso.

ASIGNACIÓN VARIABLEY ALCANCE GLOBAL

Si se va a reducir el grado de multiprogramación, Deben suspenderse uno o más procesos residentes;Se enumeran las siguientes posibilidades:

Procesos con la prioridad más baja.Procesos con fallos de página.Último proceso activado.Proceso con el conjunto residente más pequeño.El proceso mayor.Procesos con la mayor ventana de ejecución restante

SUSPENSIÓN DE PROCESOS