Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DE LA MEMORIA
SISTEMAS OPERATIVOS
Multiprogramacin
Multiprogramacin
En un ambiente de multiprogramacin hay varios
procesos compartiendo la memoria. Por lo tanto, la
proteccin se debe intensificar: proteger los espacios de
los procesos entre si, y con respecto a la memoria del
sistema.
Una alternativa fue la divisin de la memoria en
particiones.
Un proceso puede ocupar una particin y cada particin
es ocupada por un y solo un proceso. Cuando se asigna
memoria a un proceso, se asigna la particin. Cuando el
proceso finaliza, se libera la particin.
SISTEMAS OPERATIVOS
Porque es importante?
P1
P2
P3
P6 P4
P5 CPU
P4
Memoria
Real
Es un recurso escaso
Se requiere que el proceso este en memoria real
SISTEMAS OPERATIVOS
Administracin Memoria
Memoria = Almacenamiento
Aspectos Importantes:
Jerarqua de la memoria
Organizacin de la memoria
Estrategias de administracin de memoria
SISTEMAS OPERATIVOS
Jerarqua de Memoria
Diversas tecnologas para diversos tipos de memoria
A menor tiempo de accesos mayor costo por bit
A mayor capacidad menor costo por bit
A mayor capacidad, mayor tiempo de accesos.
A medida que se desciende en la jerarqua
Disminuye el costo por bit
Aumento de la capacidad
Aumento del tiempo de acceso
Disminuye la frecuencia de acceso a memoria por parte del
procesador.
SISTEMAS OPERATIVOS
Organizacin de Memoria
La forma de considerar la memoria principal
Multiusuario o un solo usuario
en forma continua
en forma no continua o salteada
SISTEMAS OPERATIVOS
Asignacin Continua
Cada procesos debe ocupar bloques continuos de localidades de
memoria
64
Mb
Proceso
3 Mb
Proceso 3 Mb
Sistema Operativo
0 Mb
SISTEMAS OPERATIVOS
Asignacin No Continua
El programa es dividido en bloques o segmentos que pueden ser
asignados a localidades no necesariamente continuas.
64
Proceso 1 Mb Mb
Proceso
3 Mb Proceso 1 Mb
Proceso 1 Mb
Sistema Operativo
0 Mb
SISTEMAS OPERATIVOS
Estrategia de Administracin
Determinan el comportamiento de una organizacin de
memoria determinada.
Se divide en:
1. Estrategia de obtencin
2. Estrategia de colocacin
3. Estrategia de reemplazo
SISTEMAS OPERATIVOS
Esquemas de Asignacin
Memoria Real
Asignacin Contigua
Sistemas de un solo proceso
Sistemas de multiprogramacin
Con particiones fijas
Con particiones variables
Asignacin no contigua
Paginada simple
Segmentacin simple
Segmentacin + paginacin
SISTEMAS OPERATIVOS
Monoprogramacin con asignacin
contigua
Controladores
Sistema
Programa dispositivos
operativo
del
Programa
usuario del
Programa usuario
Sistema del
operativo usuario Sistema
operativo
SISTEMAS OPERATIVOS
Multiprogramacin y uso de
memoria
Facilitar la programacin de una aplicacin al dividirla en
dos o mas procesos.
Capacidad de tener al mismo tiempo mas de un procesos en
memoria.
Poder proporcionar un servicio interactivo a varias personas
al mismo tiempo.
Dos tipos:
Multiprogramacin con particiones fijas
Multiprogramacin con particiones variables.
SISTEMAS OPERATIVOS
Divisin de la memoria en
particiones dinmicas
Divisin de la memoria en particiones
dinmicas
Las particiones son variables en numero y longitud.
Cuando se carga un proceso en memoria se le asigna
toda la memoria que necesita, quedando bien delimitado
su espacio de direcciones (no olvidemos que dentro de
ese espacio esta su stack, de crecimiento dinmico).
A continuacin se cargara otro proceso, y as
sucesivamente hasta que no haya mas lugar. Cuando
alguno de estos procesos termina y libera la memoria
utilizada, ese espacio podr ser usado por un proceso
de igual o menor tamao.
SISTEMAS OPERATIVOS
Los requisitos que se deben satisfacer en
la administracin de memoria son:
SISTEMAS OPERATIVOS
Divisin de la memoria en
particiones dinmicas
No obstante a medida que se liberan y asignan espacios se puede
dar la siguiente situacin.
SISTEMAS OPERATIVOS
1. Configuracin de un solo usuario
SISTEMAS OPERATIVOS
2. Particiones fijas
El primer intento para posibilitar la multiprogramacin fue la
creacin de particiones fijas en la memoria principal.
Despus de la
aceptacin de
Lista de tareas Estado original la tarea
T1 30k Tarea 1(30k)
T2 50k
T3 30k P1 100K
T4 25k
P3 25K
Tarea 2(50k)
P4 50K
SISTEMAS OPERATIVOS
Divisin de la memoria en
particiones fijas
Divisin de la memoria en particiones fijas
Se divide la memoria en n particiones fijas, normalmente,
desiguales. El grado de multiprogramacin queda definido por la
cantidad de particiones.
Al llegar un proceso se queda en espera hasta que haya una
particin lo suficientemente grande como para contenerlo.
Al ser fijas, un espacio que no se use dentro de la particin se
pierde. A esta situacin se le conoce como fragmentacin interna.
La asignacin de las particiones es un otro problema, pues debe ser
dinmico y definirse en el momento de la carga del proceso en
memoria.
Dado un conjunto de particiones libres, de diferentes tamaos y un
proceso a cargar, se debe definir un mtodo para decidir,
dinmicamente, cual es la particin que se le asignar.
SISTEMAS OPERATIVOS
Particin Fija o Esttica
Particin 4
Divide la memoria en N particiones (100 K)
fijas, de diferentes tamaos fijos. Particin 3
(350 K)
nico proceso por particin con
tamao <= a la particin que la
pueda contener.
Particin 2
Estructura de datos par la gestin de (200 K)
particiones fijas
Estado (libre/asignada) Particin 1
(90 K)
Base de la particin Sistema operativo
Tamao de la particin
SISTEMAS OPERATIVOS
Particiones Fijas
Mltiples colas
o Estticas
de entrada Particin 4
(180 K)
790 K
120 K 180 K Particin 3
(400 K)
390 K
Particin 2
(250 K)
190 K
140 K
Particin 1
(100 K)
70 K 90 K 80 K 40 K
Sistema operativo
(40 K)
0
Registro
SISTEMAS base
OPERATIVOS
Particiones Fijas o
Estticas
Particin 4
(180 K)
790 K
Particin 3
(400 K)
390 K
300 K 150 K 20 K 90 K Particin 2
(250 K)
SISTEMAS OPERATIVOS
ADMINISTRACION DE LA
MEMORIA
El SO como administrador de memoria
SISTEMAS OPERATIVOS
Particiones Variables o Dinmicas
Las particiones son variables en nmero y longitud.
Inicialmente la memoria slo contiene el sistema operativo.
A cada proceso se le asigna la memoria que necesita
exactamente.
C C C C C
B B B B
E
A A A
D D D
S. Oper. S. Oper.
85k 85k
105k 105k
Despus de la tareas 3 Despus de la tareas 7 fue
que ha terminado aceptado
(d) (d)
SISTEMAS OPERATIVOS
4. Particiones dinmicas relocalizables
SISTEMAS OPERATIVOS
4. Particiones dinmicas relocalizables
Sistemas Sistemas Sistemas
operativos 10k operativos 10k operativos 10k
Tarea1(8k) 18k Tarea1(8k) 18k Tarea1(8k) 18k
30k Tarea4(32k) Tarea4(32k)
Tarea4(32k)
50k 50k
62k Tarea2(16k) Tarea2(16k)
66k 66k
92k Tarea5(48k) Tarea5(48k)
Tarea2(16k) 108k
114k 114k
Tarea5(48k)
La tarea 6 Tarea6(84k)
156k puede ser
acomodado
198k
210k 210k 210k
Inicial (a) Despus de la Despus que la tarea
compactacin (b) 6 fue cargado (c)
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOS
1
a. Por qu se utiliza la multiprogramacin?
SISTEMAS OPERATIVOS
1
b. De que manera ocurre la fragmentacin interna?
Ocurre del uso parcial de las particiones fijas y la creacin
coincidente de espacios sin utilizar en la particin.
Despus de la
aceptacin de
Lista de tareas Estado original la tarea
T1 30k Tarea 1(30k)
T2 50k
T3 30k P1 100K
T4 25k
P3 25K
Tarea 2(50k)
P4 50K
SISTEMAS OPERATIVOS
1 c. Cmo ocurre la fragmentacin externa?
Ocurre cuando la asignacin subsecuente de la memoria crea
fragmentos de memoria libre entre bloques de memoria asignada.
Sistema Sistema
operativo 10k operativo 10k
Tarea 5(5k) 15k Tarea 5(5k) 15k
20k 20k
Tarea 2(15k) T7(10k)llega Tarea 2(15k)
35k 35k
Tarea 7(10k) 45k
T8(30k)llega
55k 55k
Tarea 6(30k) Tarea 6(30k)
85k 85k
105k 105k
SISTEMAS OPERATIVOS
d. Por qu se requiere la compactacin?
La compactacin se requiere para recuperar secciones
1 fragmentadas de espacio de memoria.
Sistemas Sistemas
operativos 10k operativos 10k
Tarea1(8k) 18k Tarea1(8k) 18k
30k Tarea4(32k)
Tarea4(32k)
50k
62k Tarea2(16k) 66k
92k Tarea5(48k)
Tarea2(16k) 108k
114k
Tarea5(48k)
156k
210k 210k
SISTEMAS OPERATIVOS
1
e. Con que frecuencia debe ejecutarse la relocalizacin?
La relocalizacin se da con la compactacin por
lo tanto existen tres opciones.
SISTEMAS OPERATIVOS
2 Describa las desventajas principales de cada uno de
los cuatro esquemas de asignacin de memoria.
Desventajas
Si el programa era demasiado
grande y no caba en el espacio de
Sistemas de memoria disponible, no se poda
un usuario ejecutar.
No apoya a la multiprogramacin.
Si una tarea no ocupa toda la
Particin fija particin, la memoria no utilizada
de la misma permanece ociosa.
SISTEMAS OPERATIVOS
2
Describa las desventajas principales de cada
uno de los cuatro esquemas de asignacin de
memoria.
Desventajas
Particin Sedesperdicia memoria a causa
dinmica de la fragmentacin externa.
La
compactacin es un proceso de
Particin
carga general, por lo que mientras
dinmica
se ejecuta, todo lo dems debe
relocalizable
esperar
SISTEMAS OPERATIVOS
3
Describa las ventajas principales de cada uno
de los cuatro esquemas de asignacin de
memoria.
Ventajas
Su estudio es importante porque
Sistemas de introdujo conceptos fundamentales
un usuario que ayudaron a la evolucin de la
administracin de la memoria.
Posibilita la multiprogramacin con
la creacin de particiones fijas.
Particin fija
Proteccin del espacio de memoria
para la tarea.
SISTEMAS OPERATIVOS
Describa las ventajas principales de cada uno de los
3
cuatro esquemas de asignacin de memoria.
Ventajas
Particin Utiliza
toda la memoria principal al
dinmica cargar las primeras tareas.
Particin Se utiliza toda la memoria
dinmica
relocalizable
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOS