Segmentación
· Esquema de administración de memoria que soporta la visión del usuario de la memoria
· Un programa es una colección de segmentos.
· Un segmento es una unidad lógica como por ejemplo:
BIT residencia de segmento | Dirección auxiliar no está en Memoria real | Longitud del segmento | Bits de protección |
Arquitectura de la segmentación
Las direcciones lógicas dse conforman por una dupla:
Numero de segmento
Segmentación con Paginación
· INTENTA aunar lo mejor de los dos esquemas.
· La segementacion proporciona soporte directo a las regiones del proceso y la paginación permite un mejor aprovechamiento de la memoria y una base para construir un esquema de memoria virtual
El Pentium soporta hasta 16K segmentos, cada uno hasta 2 ala 32 bytes de direccionamiento virtual. Puede determinarse por SO usar solo segemntacion, solo paginación o ambos.
Política de recuperacion
· Determina cuando una pagina se debería traer a la memoria principal
· Con paginación bao demanda(demand paging), solo se trae a memoria cuando se hace referencia una posición en dicha pagina
Algoritmos de reemplazo de paginas
Las faltas de pagina forzan el cambio:
· Que pagina debe ser removida
· Establecer espacio para ña pagina que entra
Las paginas modificadas deben ser guardadas las otras pueden sobrescribirse
· Es aconsejable no sobrescribir una pagina que se utiliza muy a menudo.
Algoritmo optimo de reemplazo de pagina
Reemplaza la pagina que se requerirá en el punto mas lejano
· Optimo pero no lograble.
Algoritmo de pagina no recientemente utilizada(NRU)
Cada pagina tien un bit de referencia, un bit de modificación:
Las paginas se clasifican:
1. No referenciadas no modificadas
2. No referenciadas, modificadas
3. Referencidas, no modificadas
4. Referenciadas, modificadas
FIFO
Conservar una lista encadenada de todas las paginas en el orden en que llegaron a memoria
·Trata los marcos de pagina ocupados como se se tratase de un buffer.
·Trata los marcos de pagina ocupados como se se tratase de un buffer.
Este método sufre de la anomalía de Belady (mayor numero de marcos de pagina mayor es la cantidad de fallos de pagina)
Reloj, segunda oporunidad
Lista circular. Si la pagina tien el bit de referenci en uno lo desmarca y lo pone en cero y si no ha sido usada se saca de memoria y se reemplaza por una nueva pagina.
LRU(least recently used)
Envejece las paginas menos usadas para sacrlas de primero cuando sea necesario.
Algoritmo del conjunto de trabajo
Historial de paginas por un current time, y cuano se hace una solicitud de pagina se reccoren todas las paginas, y si el bit de referenci esta en uno se colocan al final, como protegidas, si esta en cero y supera un tiempo determinado de tiempo es la pagina estimada para salir. Se le asigna un numero y entre mas peuqño mas es sensible a salir.
Reloj mejorado
Utiliza dos bits de referenciado o no y modificada o no según eso se hace el reloj.
Otros algoritmos de reemplazo:
El aleatorio: saca cualquier pagina al azar.
No frecuente mente usada: un contador cuando se reinicia se cuenta en el contador.
Envejecimiento: compensación por recientemente utilizada.
Menos usada recientemente: un contador de menos usadas.
Reemplazo de paginas mas lejanas (fpr):
en un árbol la que este mas alejada de la raíz, reemplazante
Windows XP
Utiliza una paginación por demanda con clustering. Trae las paginas alrededor de la pagina fallada.
A los otros proceso se les asigna un workering set mínimum y un working set maximun.
Alejo carepinga
El minimo garantiza que el proceso se puede tener en memoria.
A un proceso se le puede asignar tantas paginas hats alcanzar su conjunto máximo de paginas.
SOLARIS
Mantien una lista de paginas libres para asignarle a los proceso con faltas de pagina.
Lots free limite o umbral para empezar a paginar
Des free limite umbral para aumentar la paginacion
Min free. El otro no me acuerdo.
LINUX
Utiliza el algoritmo del reloj con una variante.
Con una lista de activas e inactivas y solo saca de la lista de inactivas.
No hay comentarios:
Publicar un comentario