2. Integrantes De
Anónymous
Nicolás Edilberto Rozo Espinosa
David Humberto Moreno Moreno
Julián Felipe Parra Tunjano
Néstor Yesid Beltrán Chiquiza
Jorge Leonardo Mejía Rincón
3. Gestión De
Memoria
Sistema Sistema
MonoProgramado Multiprogramado
La memoria principal La parte de
se divide en dos “Usuario” de la
partes: una parte
para el sistema memoria debe
operativo y otra subdividirse aún
parte para el más para hacer
programa que se sitio a varios
ejecuta en ese
procesos.
instante.
4. Requisitos De La Gestión De
Memoria
Reubicación.
Protección.
Compartición.
Organización Lógica.
Organización Física.
5. Reubicación
La reubicación permite crear un espacio
lógico independiente para cada proceso y el
Sistema Operativo.
Direcciones lógicas: direcciones de memoria
generadas por el programa.
Direcciones físicas: direcciones de memoria
principal asignadas.
Mientras que se está ejecutando el
programa, puede que se descargue en el
disco y que vuelva a la memoria principal,
pero en una ubicación distinta a la anterior
(reubicación).
6. Reubicación
Reubicación Reubicación
Estática Dinámica
Implica Implica que la
generalmente que correspondencia
la reubicación es entre el espacio de
realizada antes o direcciones virtuales
y el espacio de
durante la carga
direcciones físicas se
del proceso en
efectúa en tiempo
memoria. de ejecución.
7. Protección
El código de un proceso no puede hacer
referencia a posiciones de memoria de otros
procesos sin permiso, con fines de lectura o
escritura sin permiso.
Es imposible comprobar las direcciones
absolutas de los programas, puesto que se
desconoce la ubicación de un programa en
la memoria principal.
Normalmente los procesos de usuario no
pueden acceder al sistema operativo
8. Compartición
Elsistema de gestión de memoria debe
permitir accesos controlados a las áreas
compartidas de la memoria, sin
comprometer la protección básica.
9. Organización
Lógica
La mayoría de los programas se organizan en
módulos.
Los módulos pueden escribirse y compilarse
independientemente.
Pueden otorgarse distintos grados de protección
alguno de los cuales no son modificables y otros
contienen datos modificables.
Compartir módulos.
10. Organización
Física
La memoria principal en algunos casos no
puede ser suficiente para los programas y sus
datos.
La superposición permite que varios
módulos sean asignados a la misma región
de memoria.
El programador no conoce cuanto espacio
será asignado o donde se encuentra este
espacio.
11.
12. Carga De Programas
Para poder crear un proceso activo se
requiere cargar un programa en la memoria
principal y crear una imagen del proceso
13. Fragmentación interna
Pueden reducirse, aunque no
solventarse, ambos problemas, por
medio del empleo de particiones de
tamaños distintos.
Las particiones de 512K permiten alojar
programas mas pequeños con menor
desperdicio.
14. Fragmentación Externa
o La fragmentación externa se produce en
una memoria (RAM o disco duro) en el
momento en que no es posible almacenar
de forma contigua todos los bloques que
componen un archivo.
o si se produce en un disco duro, tiende a
provocar múltiples accesos a distintas zonas
físicas de los platos que lo componen, con lo
que aumenta el tiempo final de lectura de
ese archivo.
15. Partición fija
La memoria principal se divide en un conjunto
de particiones fijas durante la generación del
sistema. Un proceso puede cargar en una
partición de mayor tamaño o igual.
Ventajas Desventajas
Su implementación es Emplea ineficientemente la
sencilla. memoria debido a que
No sobrecarga el
hace una fragmentación
sistema. interna.
El numero de procesos
activos es fijo.
16.
17. Partición
Dinámica
Se Crean Dinámicamente, de forma que
cada proceso se carga en una partición de
exactamente el mismo tamaño que el
proceso.
Ventajas Desventajas
No hay fragmentación Uso indebido del
interna procesador , debido a
Uso mas eficiente de la la necesidad de
memoria principal compartición para
contrarrestar la
fragmentación externa
18.
19.
20. Algoritmo de ubicación
En particiones del mismo tamaño, cuando
ahí alguna partición libre, puede cargarse un
proceso en esa partición. Si todas las
particiones están ocupadas con procesos
que no están listos para ejecutarse, uno de
estos se saca y da paso a un nuevo proceso,
esta decisión de sacar procesos la hace el
planificador.
En particiones de distinto tamaño se asigna
cada proceso a la partición mas pequeña
en la que quepa.
21.
22. Algoritmo de Reemplazo
Este algoritmo tiene como finalidad retirar la
página que vaya a ser referenciada más
tarde. El problema de este método es que
necesita conocimiento del futuro, por lo que
es imposible su implementación. Es un
algoritmo teórico. Se utiliza a los efectos
comparativos con los algoritmos factibles de
ser implementados para ver cuál se aproxima
más a éste.
23. Algoritmo de ubicación
Partición Fija
En particiones del mismo tamaño, cuando
ahí alguna partición libre, puede cargarse un
proceso en esa partición. Si todas las
particiones están ocupadas con procesos
que no están listos para ejecutarse, uno de
estos se saca y da paso a un nuevo
proceso, esta decisión de sacar procesos la
hace el planificador.
En particiones de distinto tamaño se asigna
cada proceso a la partición mas pequeña
en la que quepa.
24.
25. Algoritmo De Ubicación Con
Particiones Dinámicas
El sistema operativo debe decidir qué bloque
libre se tiene que asignar al proceso.
Algoritmo del mejor ajuste (best-fit):
Elige el bloque de tamaño más próximo al
solicitado.
Proporciona en general los peores resultados.
Puesto que este algoritmo busca el hueco más
pequeño para el proceso, garantiza que el
fragmento que se deja es lo más pequeño posible
y, por lo tanto, se debe compactar más
frecuentemente.
26. Algoritmo de Ubicación con
Particiones Dinámicas
Algoritmo del primer ajuste (first-fit):
Es más rápido.
Puede tener varios procesos cargados en
el extremo inicial de la memoria que es
necesario recorrer cuando se intente
encontrar un bloque libre.
27. Algoritmo de Ubicación Con
Particiones Dinámicas
Algoritmo del siguiente ajuste (next-fit):
Lleva frecuentemente a la asignación de
un bloque de memoria de la última
ubicación, donde se encuentra el bloque
más grande.
El bloque de memoria más grande se
divide en fragmentos pequeños.
Hará falta la compactación para obtener
un bloque de memoria grande al final del
espacio de memoria.
28. Registros Utilizados Durante La
Ejecución
Registro base:
Se carga con la dirección en la memoria
principal del proceso.
Registro límite:
Indica la posición final del programa.
Estos
valores deben asignarse cuando se
carga el programa y cuando se carga el
proceso.
29. Registros Utilizados Durante La
Ejecución
Se añade el valor del registro base a la
dirección relativa para obtener una
dirección absoluta.
La dirección obtenida se compara con el
valor del registro límite.
Si la dirección no está dentro de los
límites, se generará una interrupción en el
sistema operativo.
30. Paginación Simple
La memoria principal se divide en un conjunto de
marcos de igual tamaño. Cada proceso se divide en
una serie de paginas del mismo tamaño que los
marcos . Un proceso se carga situando todas sus
paginas en marcos libres pero no necesariamente
contiguos.
Ventajas Desventajas
o No tiene o Hay pequeñas
fragmentación fragmentación
externa. externa.
31. Segmentación
simple
Cada proceso se divide en una serie de
segmentos. Un proceso se carga situando todos
sus segmentos en particiones dinámicas que no
tienen porque ser contiguas
Ventajas Desventajas
No tiene fragmentación Necesita compactación
interna