Sunteți pe pagina 1din 11

Gestión de Memoria – Parte 1

Agenda
• Parte 1
– Requisitos
– Evolución
– Carga de Procesos en Memoria
– Paginación y Segmentación
• Parte 2
– Memoria Virtual

Arquitectura y Gestión de Memoria 1


Sistemas Operativos Parte 1
Requisitos

• Reubicación
El hardware del procesador y el software del SO deben traducir las
referencias a memoria del programa.
• Protección
Cada proceso debe protegerse de las interferencias no deseadas de otros
procesos.
• Compartición
La protección debe tener flexibilidad y permitir el acceso a varios
procesos a la misma zona de memoria.
• Organización lógica
La MP de un sistema se organiza como un espacio de direcciones lineales
mientras que los programas generalmente se organizan en módulos
• Organización física
La memoria del sistema se organiza, por lo menos, en dos partes: la MP y
la memoria secundaria.

Lectura recomendada: Sistemas Operativos, William Stallings


Requisitos de la Gestión de Memoria

Arquitectura y Gestión de Memoria 2


Sistemas Operativos Parte 1
Evolución

• El programador accede directamente al Hardware.


• El monitor residente gestionaba la memoria. Protegía la zona de
memoria que ocupaba el monitor. División y protección de
memoria.
• Las dirección del usuario se calculaban en función de la zona
permitida. Reasignación de direcciones.
• Se liberaba memoria pasando al disco los procesos que estaban a
la espera de algún suceso. Swapping.
• Para repartir el uso del procesador entre varios procesos, se divide
la memoria en Particiones para albergarlos. La cantidad de ellas es
el grado de multiprogramación.
Existen dos tipos de
Reasignación:

•Estática: se realiza durante la


compilación o la carga del
sistema operativo.
•Dinámica: se realiza mientras
el programa se ejecuta.

Arquitectura y Gestión de Memoria 3


Sistemas Operativos Parte 1
Carga de los Procesos en Memoria (1)

• Particiones contiguas de tamaño fijo:


- de igual tamaño - de distinto tamaño
Desventaja:
Uso ineficiente de la memoria

Programa de mayor Programa de menor


tamaño que una partición: tamaño que una partición:

Diseño del programa Se pierde una parte de la


mediante misma produciéndose
Superposiciones Fragmentación interna

Arquitectura y Gestión de Memoria 4


Sistemas Operativos Parte 1
Carga de los Procesos en Memoria (2)
• Particiones contiguas dinámicas
Toma importancia la gestión de memoria.

Desventaja:
Tres algoritmos:
Fragmentación externa
Un programa no entra en ninguna de las
-Mejor ajuste particiones, pero sí en la suma de los huecos.
-Primer ajuste
-Siguiente ajuste

Surge la idea de recolocar zonas de memoria


cada cierto tiempo para lograr un único hueco:
COMPACTACIÓN

Lectura recomendada: Sistemas Operativos, William Stallings


Carga de Programas en Memoria Principal:
•Partición Fija
•Partición Dinámica

Arquitectura y Gestión de Memoria 5


Sistemas Operativos Parte 1
Paginación y Segmentación (1)

Paginación

• Permite asignar memoria en zonas no contiguas


• Memoria particionada en marcos o frames
• Procesos particionados en páginas

Ventajas: - Poca fragmentación interna


- No tiene fragmentación externa
- Permite la asignación dinámica

Arquitectura y Gestión de Memoria 6


Sistemas Operativos Parte 1
Paginación y Segmentación (2)

Paginación
• Mantiene una tabla de páginas donde se relaciona cada página
del proceso con el marco que la contiene.

Proceso A Memoria Principal Tabla de marcos libres


A0 F0 A0 0
A1 F1 A1 1
A2 F2
3
A3 F3 A2 6
F4 …
Tabla de páginas F5 ...
de A 0 F6 A3 ...
1
n
3 Fn
6
Hay fragmentación
interna en el último
marco del proceso.

Arquitectura y Gestión de Memoria 7


Sistemas Operativos Parte 1
Paginación y Segmentación (3)

Paginación
• Cada dirección relativa se intercepta y divide en dos
componentes: un número de página p y un desplazamiento
dentro de ésta, d.
Se usa p como índice de la tabla del
proceso para encontrar la posición del
1010111011110111 marco en memoria y luego se le suma
d para obtener la dirección real.
(p,d) Memoria Principal
F0 A0
Tabla de páginas de A F1 A1
0 F2

1 F3 X A2
F4
3
( TPA [p] + d ) F5
6
F6 A3

Fn

Arquitectura y Gestión de Memoria 8


Sistemas Operativos Parte 1
Paginación y Segmentación (4)

Paginación
• Para agilizar las traducciones • Pueden existir páginas
de direcciones relativas a que sean compartidas
físicas se mantienen en por distintos procesos.
memoria caché las entradas a
las tablas más usadas.

El tiempo efectivo de
Para que el contenido
acceso a memoria es
de esas páginas sea
el tiempo medio de
inalterable se protegen
acceso de todas las
de los intentos de
direcciones, estén o
escritura añadiendo a
no sus entradas de
la tabla bits de
página en la Memoria
protección
Caché

Arquitectura y Gestión de Memoria 9


Sistemas Operativos Parte 1
Paginación y Segmentación (5)

Segmentación
• Se acerca más al punto de vista del usuario.
• Una dirección relativa está formada por dos valores:

- Número de segmento s - Desplazamiento d

Los programas se
Se usará una tabla
desarrollan alrededor de
de segmentos para
un núcleo (programa
cada proceso y una
principal) desde donde
lista de los bloques
se bifurca a otras rutinas
libres en memoria
o se accede a zonas de
principal.
datos.

Lectura recomendada: Sistemas Operativos, William Stallings


•Paginación Simple
•Segmentación Simple

Arquitectura y Gestión de Memoria 10


Sistemas Operativos Parte 1
Gestión de Memoria – Parte 1
Aquí terminamos la primera parte
sobre Gestión de Memoria, donde
vimos:
– Requisitos
– Evolución
– Carga de programas en memoria
– Paginación
– Segmentación

Arquitectura y Gestión de Memoria 11


Sistemas Operativos Parte 1

S-ar putea să vă placă și