Está en la página 1de 34

SISTEMAS OPERATIVOS

Administracin de Memoria
INTRODUCCIN

2 /50
Organizacin Fsica de la Memoria
Registros de la CPU

Cache
Nivel 1
Nivel 2 Almacenamiento
Temporal o
RAM de acceso aleatorio
Memoria Fsica
Memoria Virtual

Hard Disk
Almacenamiento
Drive
Permanente
Flash Memory

Dispositivos Externos
Teclado
Mouse
Scaner

3 /50
Organizacin Fsica de la Memoria
Registros de la CPU

Cache
Nivel 1
Nivel 2 Almacenamiento
Temporal o
RAM de acceso aleatorio
Memoria Fsica
Memoria Virtual

Hard Disk
Almacenamiento
Drive
Permanente
Flash Memory

Dispositivos Externos
Teclado
Mouse
Scaner

4 /50
Organizacin Lgica de la Memoria
direccin ubicacin
La memoria principal es un
arreglo de palabras o bytes,
cada uno de los cuales
tiene una direccin
(espacio de direcciones).

memoria
La interaccin es lograda a
travs de un conjunto de
lecturas y escrituras a
direcciones especificas
realizadas por los
procesos.

5 /50
Procesos y Memoria
Para que un proceso se ejecute se requiere ubicarlo en
memoria principal junto con los datos que direcciona.
Para optimizar el uso del computador se requiere tener
varios procesos en memoria principal. (grado de
multiprogramacin)

Memoria Principal
Memoria Virtual
La memoria principal es Memoria Memoria
Virtual Fsica
pequea como para acomodar
todos programas y datos
permanentemente.
Por lo que es necesario
implementar mecanismos de Memoria
memoria virtual. Principal

La memoria virtual es una


tcnica para dar la ilusin de
tener ms memoria que la
memoria principal.
Disco Duro

7 /50
ADMINISTRADOR
DE MEMORIA
Direccin virtual

Direccin fsica

Tabla de
pginas

8 /50
Administrador de Memoria

Sistema monoprogramado Sistema multiprogramado

Sistema Sistema Sistema


Operativo Operativo Operativo

Memoria
del usuario

Un programa puede o Mltiples programas comparten diversas


no ingresar a una nica particiones de memoria
particin de memoria Particiones de tamao fijo
Particiones de tamao variable

9 /50
Administrador de Memoria
El administrador de memoria tiene como objetivos:
Ubicar, reemplazar, cargar y descargar procesos en
la memoria principal.
Proteger la memoria de acceso indeseados
(accidentales o intencionados).
Permitir la comparticin de zonas de memoria
(indispensable para lograr la cooperacin de
procesos).

10 /50
Requisitos del administrador de memoria
1. Reubicacin. Permitir el recalculo de direcciones de
memoria de un proceso reubicado.

2. Proteccin. Evitar el acceso a posiciones de memoria


sin el permiso expreso. (no direcciones absolutas).

3. Comparticin. Permitir a procesos diferentes acceder a


la misma porcin de memoria.

4. Organizacin Lgica. Permitir que los programas se


escriban como mdulos compilables y ejecutables por
separado.

5. Organizacin Fsica. Permitir el intercambio de datos en


la memoria primaria y secundaria
11 /50
Estrategias
Estn dirigidas a la obtencin del mejor uso del
recurso memoria principal, estas pueden ser:
1. Estrategia de solicitud (bsqueda)
(cuando obtener un fragmento de programa)

Estrategias de bsqueda por demanda.


Estrategias de bsqueda anticipada.
2. Estrategia de ubicacin.
(donde se colocar (cargar) un fragmento de programa nuevo)

3. Estrategia de reposicin.
(qu fragmento de programa descarga, para cargar uno nuevo)

12 /50
Administrador de Memoria
Las tcnicas usadas son las siguientes:
1. Particin Fija
2. Particin Dinmica
3. Paginacin Simple
4. Segmentacin Simple
5. Memoria Virtual Paginada
6. Memoria Virtual Segmentada

13 /50
TECNICAS DE
ADMINISTRACION DE
MEMORIA
PARTICIONAMIENTO
Real Real Real Virtual

Mono
Multiprogramacin Multiprogramacin Multiprogramacin
Usuario
Paginacin Segmentaci Paginacin Segmentaci
Particionamiento
Simple n Simple Virtual n Virtual

Fija Dinmica Combinacin Combinacin

Reubicacin, Proteccin

14 /50
PF PD PS SS VP VS

1. Particin Fija
La memoria principal se divide en un conjunto
de particiones de tamao fijo durante el inicio
del sistema.
Un proceso se puede cargar completamente en
una particin de tamao menor o igual.

Ventajas. Sencilla de implementar. Poca


sobrecarga al SO.
Desventajas. Fragmentacin interna. Nro. fijo de
procesos activos.

15 /50
PF PD PS SS VP VS

1. Estrategias
Solicitud.
Por demanda
Ubicacin.
Particin de igual tamao.
Si el proceso cabe en una particin se puede cargar
Particin de diferente tamao.
Asignar a la particin ms pequea.
Se genera dos tipos de colas: una cola, varias colas
Reemplazo.
Uno de los proceso se saca, segn el planificador.

16 /50
PF PD PS SS VP VS

1. Estrategia de Ubicacin

Sistema Sistema Sistema


Operativo Operativo Operativo
512K 256 K 256 K
512K 512K
512 K

512 K 768 K 768 K

512 K
1024 K 1024 K
512 K

512 K
1280 K 1280 K
512 K

Particiones del mismo tamao Particiones de distinto tamao

17 /50
PF PD PS SS VP VS

1. Particin Fija
Si un programa no cabe en una particin, el
programador debe disearlo en mdulos cargables.

El uso de la memoria es muy ineficiente, no importa el


tamao del proceso, ocupara toda la particin, se
genera fragmentacin interna.

fragmentacin interna

18 /50
PF PD PS SS VP VS

2. Particin Dinmica
Las particiones se crean dinmicamente por
demanda.
Son variables en tamao y nmero
Cada proceso se carga completamente en una
nica particin del tamao del proceso.

Ventajas. No existe fragmentacin interna.


Desventajas. Fragmentacin externa. Se debe
compactar la memoria. El compactado toma
tiempo.

19 /50
PF PD PS SS VP VS

2. Particin Dinmica
El uso de la memoria es muy ineficiente, se generan
muchos huecos entre las particiones, cada vez ms
pequeas, se genera la fragmentacin externa.
Cada cierto tiempo se debe compactar los
segmentos libres, para que estn contiguos.

fragmentacin externa

compactacin
PF PD PS SS VP VS

2. Estrategias
Solicitud.
Por demanda
Ubicacin.
Primer ajuste. El primer bloque disponible que ubique
(parte del inicio)
Siguiente ajuste. El siguiente bloque disponible que
ubique (parte desde la ubicacin actual)
Mejor ajuste. El bloque disponible que deje el menor
espacio libre (bsqueda exhaustiva)
Reemplazo.
Uno de los proceso se saca, segn el planificador.

21 /50
PF PD PS SS VP VS

2. Estrategias
Primer ajuste. Es bueno, con baja
compactacin. Puebla el inicio de la memoria

Siguiente ajuste. Puebla el final de la memoria,


el siguiente bloque libre siempre est al final de
la memoria.

Mejor ajuste. Tiene peores resultados, dado que


busca la particin que deje el hueco ms
pequeo, la memoria se llena de huecos
pequeos. Se compacta con ms frecuencia

22 /50
TECNICAS DE
ADMINISTRACION DE
MEMORIA
PAGINACION Y SEGMENTACION SIMPLE
Real Real Real Virtual

Mono
Multiprogramacin Multiprogramacin Multiprogramacin
Usuario
Paginacin Segmentaci Paginacin Segmentaci
Particionamiento
Simple n Simple Virtual n Virtual

Fija Dinmica Combinacin Combinacin

Reubicacin, Proteccin

23 /50
PF PD PS SS VP VS

3. Paginacin Simple
La memoria principal se divide en un conjunto
de marcos de igual tamao.
Cada proceso se divide en una serie de pginas
del tamao de los marcos.
Un proceso se carga en los marcos que
requiera (todas las pginas), no necesariamente
contiguos.

Ventajas. No hay fragmentacin externa


Desventajas. Fragmentacin interna pequea.

24 /50
PF PD PS SS VP VS

3. Paginacin Simple
El SO mantiene una tabla de paginas para cada proceso,
que contiene la lista de marcos para cada pagina.
Una direccin de memoria es un nmero de pgina (P) y
un desplazamiento dentro de la pgina (W).

p = marcos

p p
PF PD PS SS VP VS

3. Estrategias
Solicitud.
Por demanda
Ubicacin.
Se cargan todas las pginas de un proceso en los
marcos libres y se actualiza su tabla de pginas.
Reemplazo.
Una de las pginas se puede sacar y se marca como
que no est cargada. Esto es posible por que cada
proceso tiene su propia tabla de pginas.
No es necesario sacar todas las pginas de un
proceso.

26 /50
PF PD PS SS VP VS

3. Capacidad de Direccionamiento

216 = 65,536 = 64K


220 = 1'048,576 = 1MB
224 = 16777,216 =16MB
232 = 4,294'967,296 = 4GB
PF PD PS SS VP VS

4. Segmentacin Simple
Cada proceso y sus datos se dividen en
segmentos de longitud variable.
Un proceso carga sus segmentos en particiones
dinmicas no necesariamente contiguas.
Todos los segmentos de un proceso se deben
de cargar en memoria.
Se diferencia de la particin dinmica en que un
proceso puede ocupar ms de un segmento.
Ventajas. No hay fragmentacin interna.
Desventajas. Fragmentacin externa, pero
menor (compactacin)

28 /50
PF PD PS SS VP VS

4. Segmentacin Simple
El SO mantiene una tabla de segmentos para cada
proceso y la lista de bloques libres.
Una direccin de memoria es un nmero de segmento (S)
y un desplazamiento dentro de segmento (W).
Segmentos Desplazamiento

s
Tabla de Segmentos Memoria principal

s s

s+ w

29 /50
PF PD PS SS VP VS

4. Estrategias
Solicitud.
Por demanda
Ubicacin.
Se cargan los segmentos de un proceso en los
bloques libres y se actualiza su tabla de segmentos.
Reemplazo.
Uno de los segmentos se puede sacar y se marca
como que no est cargada. Esto es posible por que
cada proceso tiene su propia tabla de segmentos.

30 /50
PF PD PS SS VP VS

4. Validacin del Direccionamiento


No hay correspondencia entre direccin lgica y
direccin fsica.
El SO trabaja con direcciones lgicas.
El SO debe asegurar que cada direccin lgica
est dentro del rango de direcciones del proceso
El SO implementa la tabla de segmentos como
un arreglo de registros base limite

La segmentacin por lo general es invisible al programador.


Es el compilador el que define los segmentos.
PF PD PS SS VP VS
CONCLUSIONES
1. El SAM particionado a diferencia de la paginacin o
segmentacin simple, permite que slo un proceso se
cargue en memoria principal.

2. Cuando se trabaja con bloques de tamao fijo se


genera la fragmentacin interna. Si los bloques son de
tamao variable, se genera la fragmentacin externa.

3. El SAM de particiones fijas se parece al SAM de


paginacin simple, diferencindose en que los
primeros requieren que las particiones estn contiguas

33 /50
BIBLIOGRAFIA
1. Sistemas Operativos, 2da Edicin (1997) William
Stallings, Prentice Hall Espaa

2. Sistemas Operativos, conceptos fundamentales , 3ra.


Edicin (1994) A. Silberschatz, J. Peterson, P. Galvin,
Addison-Wesley Publishing Company USA

3. Sistemas Operativos, 2da Edicin (1993), H. M. Deitel,


Addison-Wesley Publishing Company USA

34 /50

También podría gustarte