Documentos de Académico
Documentos de Profesional
Documentos de Cultura
06 GestionMemoria Extras
06 GestionMemoria Extras
(Cap. 6 de Stallings)
SOyD
Curso S.Operativo
EIEC-
U.Central Prof. G.
Que veremos ??
- Definiciones básicas
- Memoria Virtual
Curso S.Operativo
EIEC-
U.Central Prof. G.
Definiciones
Memoria Principal
Gestor de Memoria
-La memoria es una amplia tabla de datos, cada uno de los cuales
con su propia dirección
Curso
S.Operativo
EIEC-
U.Central Prof. G.
....
En un Sistema operativo monoprogramado, la memoria principal
compartida por el sistema operativo y el programa de usuario que
se ejecuta en ese instante.
Hay 5 requisitos:
- Reubicación
- Protección
- Compartición
- Organización Lógica
- Organización Física
Curso
S.Operativo
EIEC-
1) Reubicación
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
2) Protección
Mapa proceso 1
Memoria
zona privada 1
zona compartida
Mapa proceso 2
zona priv. 2 (P2)
zona privada 1
zona priv. 2 (P1)
zona compartida
zona privada 2
Curso
S.Operativo
EIEC-
3) Compartición
Curso
S.Operativo
EIEC-
Carga de Programas en Memoria Principal
Veremos:
- Partición Fija
- Partición Dinámica
- Paginación Simple
- Segmentación Simple
Curso
S.Operativo
EIEC-
....
•Evolución histórica de métodos de organización hasta llegar a la
Memoria Virtual
• Esquemas de asignación:
A. Memoria Real
• Asignación contigua
– Sistemas de multiprogramación
» Con particiones fijas.
» Con particiones variables.
• Asignación no contigua
– Paginación simple.
– Segmentación simple.
– Segmentación + paginación simple.
B. Memoria virtual
• Paginación por demanda.
• Segmentación por demanda.
• Segmentación + paginación.
Curso
S.Operativo
EIEC-
Prof. G. Rosenberg 17
Partición Fija
Curso
S.Operativo
EIEC-
Tamaños de Partición Fijas
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Particiones de igual tamaño
Curso
S.Operativo
EIEC-
....
b) El uso de MP es ineficiente
Cualquier programa, sin importar lo
pequeño que sea, ocupará una partición
completa. Este fenómeno se denomina
fragmentación interna.
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
Algoritmo de ubicación de particiones fijas
Curso
S.Operativo
EIEC-
Las particiones pueden ser de tamaño fijo, definidas (p.ej.) por el
usuario al inicio de la sesión.
El control de memoria se reduce a asignar una partición a cada
proceso entrante, reasignar direcciones (cuando sea necesario) y a
proteger unos procesos de los otros.
Curso
S.Operativo
EIEC-
....
Particiones de distinto tamaño
Problema:
Curso
S.Operativo
EIEC-
...
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Más Inconvenientes:
- Fragmentación Interna.
• El proceso es más pequeño que la partición ->
dentro de cada partición queda una zona de memoria no
aprovechable.
• No se puede asignar a ningún otro proceso.
• Es posible que procesos esperando entrar en memoria no
tengan partición a pesar de haber espacio libre para ellos.
Curso
S.Operativo
EIEC-
Partición Dinámica
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Así pues, el SO saca al proceso 2 (fig. e), que deja suficiente sitio
para cargar un nuevo proceso, el proceso 4 (fig. f)
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Organización física de la Memoria Principal
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
Ej.:
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Best-fit algorithm
- Chooses the block that is closest in size to the request
- Worst performer overall
- Since smallest block is found for process, the smallest amount of
fragmentation is left memory compaction must be done more
often
First-fit algorithm
- Fastest
- May have many process loaded in the front end of that
memory must be searched over when trying to find a free
block
Next-fit
- More often allocate a block of memory at the end of
memory where the largest block is found
- The largest block of memory is broken up into smaller blocks
- Compaction is required to obtain a large block at the Curso
end of
memory S.Operativo
EIEC-
Prof. G. Rosenberg 46
Reubicación
PARTICIONES FIJAS
Curso
S.Operativo
EIEC-
....
PARTICIONES DINAMICAS
Curso
S.Operativo
EIEC-
....
Consideremos un proceso en memoria que incluya instrucciones
y datos.
Curso
S.Operativo
EIEC-
....
Estas instrucciones no están fijas, sino que cambian cada vez que
se intercambia o desplaza un proceso.
Curso
S.Operativo
EIEC-
....
Una DIRECCION LÓGICA es una referencia a una posición de
memoria independiente de la asignación actual de datos a memoria;
se debe hacer una traducción a dirección física antes de poder
realizar un acceso a memoria.
Curso
S.Operativo
EIEC-
....
Dirección lógica.
–Referencia a posición de memoria independiente de Ia asignación
actuaI de datos.
– Generada por Ia CPU.
• Dirección física.
– Designa una posición reaI de Ia memoria principaI.
– AqueIIa cargada en eI registro de direcciones de Ia memoria.
Curso
S.Operativo
EIEC-
....
- registro base
- registro límite (indica la posición final del programa)
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
Unidad de Gestión de Memoria (MMU)
1. Registro de relocalización.
Curso
S.Operativo
EIEC-
....
2. Tabla de Correspondencia
Curso
S.Operativo
EIEC-
Asignación no contigua de Memoria
• Métodos de organización:
– Paginación simple.
– Segmentación simple.
Curso
S.Operativo
EIEC-
Paginación Simple
Con paginación !!
Curso
S.Operativo
EIEC-
....
• Organización física de la Memoria Principal
– División de la memoria principal en bloques de igual tamaño
denominados marcos de página.
• Estrategias de asignación
– Se van asignando marcos libres a páginas del proceso.
– No tienen por qué ser consecutivos.
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
Ej. De uso de páginas y marcos
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
El SO mantiene una tabla de páginas para cada proceso.
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
Cada tabla de páginas contiene una entrada por cada página del
proceso, por lo que la tabla se indexa fácilmente por número de
página.
Curso
S.Operativo
EIEC-
Estructura de datos para la Paginación
1. Tabla de Páginas.
• Una tabla por cada proceso.
• La tabla tiene tantas entradas como páginas tenga el proceso.
• En cada entrada se almacena:
–El número de marco donde se guarda la página cuyo número
coincide con el índice de la tabla.
– Bits de protección (lectura, escritura…).
2. Tabla de marcos.
• Una única tabla para todo el sistema.
• La tabla tiene tantas entradas como marcos de memoria
física.
• En cada entrada se almacena:
– Flag indicando si el marco est á libre o asignado.
–
delEnproceso
el casoaldeque pertenece.
estar asignado el número de página y Curso
S.Operativo
EIEC-
U.Central Prof. G.
....
• Modos de Traducción
iv) dir_fisica=marco*tamanio_pagina+desplazamiento
Curso
S.Operativo
EIEC-
.... Ventajas e Inconvenientes de la Paginación
Curso
S.Operativo
EIEC-
....
Curso
S.Operativo
EIEC-
....
• Organización física de la Memoria Principal
Curso
S.Operativo
EIEC-
....
• Estructuras de datos para la gestión de la
Segmentación
– Lista de huecos.
– Tabla de Segmentos.
• Una tabla por cada proceso.
• La tabla tiene tantas entradas como segmentos
tenga el proceso.
• En cada entrada se almacena:
– Dirección base (valor del registro base) y límite o
longitud del segmento (valor del registro límite).
– Bits de protección (lectura, escritura…).
Curso
S.Operativo
EIEC-
.... Ventajas e Inconvenientes de Segmentación
Curso
S.Operativo
EIEC-
Resumen
Curso
S.Operativo
EIEC-