gestion de memoria
Sistemas Operativos (SO)
Facultat d'Informàtica de Barcelona
Universitat Politècnica de Catalunya
Contenido
Memoria virtual
Soporte del SO y HW
Políticas y Algoritmos
Sistema de Ficheros
2
Memoria virtual
Memoria
lógica
Espacio de direcciones
usado por los procesos
(232/64 direcciones)
Sistema de Ficheros
MMU
Memoria
física
Total dememoria disponible
en el sistema
Área
de
swap
Almacenamiento de
memoria lógica que no
cabe en memoria física
3
Espacio de direcciones lógico
Cada proceso tiene su
espacio de direcciones
Constantes
Código
Se divide en dos
Mmap
Usuario
Específico en cada proceso
Pila
Diferentes tipos de regiones
232/64 bytes
Heap (datos)
SO
Común a todos los procesosAccesible cuando se ejecuta
dentro del sistema
Sistema de Ficheros
Sistema Operativo
4
Espacio de direcciones lógico (II)
Constantes, Código
Solo lectura
Tamaño fijo
Constantes
Código
Heap
Datos dinámicos globales
Tamaño cambia durante la vida del proceso
malloc / free
Pila
Mmap
Pila
232/64 bytes
Heap (datos)
Datos privados a cada thread
Tamaño cambiadurante la vida del proceso
Implícitamente
Mmap
Sistema Operativo
Objetos ( p.ej. ficheros ) accesibles desde el
espacio lógico
Sistema de Ficheros
5
MMU
MMU (Memory Management Unit)
Unidad encargada de traducir las @ lógicas a @ físicas
@1234
@abcd
MMU
@1234
@dcba
@abcd
Espacio de memoria
lógica
(1 por proceso)
Sistema de Ficheros
Espacio de memoriafísica
( Total de memoria disponible )
6
Swap
Zona de almacenamiento secundario para las memoria
lógica
estático:
toda información que este en memoria física también está en el swap
dinámico:
solo aquellos datos que no están en memoria física están en el swap
Sistema de Ficheros
7
Modelos de memoria
Uniprogramado/Multiprogramado
Nº de programas en memoria a la vez: 1 / Másde 1
Residente/No residente
Información ha de estar en memoria toda la ejecución
Inmóvil/ Móvil
La traducción de @ lógica a física es siempre la misma
Contigua/No contigua
Direcciones @ lógicas contiguas son @ físicas contiguas
Entero/No entero
El programa ha de estar completamente en memoria física para
ejecutarse
Sistema de Ficheros
8
Modelos de memoria (II)
Memoriavirtual
Multiprogramado, no residente, móvil, no contiguo, no entero
Paginación
Segmentación
Paginación segmentada, segmentación paginada, ...
SO
entero
SO sencillo
Uso ineficiente de la memoria
no entero, partes residentes
SO más complejo
Código y datos esenciales ( gestión de memoria, RSI, ... ) siempre residentes
Sistema de Ficheros
9
Paginación
Dividir el espacio dememoria lógico y físico en
bloques de igual tamaño.
Cada bloque es una página
Unidad mínima de asignación y de trabajo
4Kb – 1Mb
tamaño de estructuras
fragmentación interna
No de páginas movilidad
tiempo de fallo de página
localidad
Simplifica la gestión del SO
Reduce el tamaño de las estructuras
Sistema de Ficheros
10
Fallo de página
Se produce cuando se intenta acceder a unapágina
que no esta en memoria física
Al hacer obtener una instrucción
Al leer los operandos
add @x, @y, @z
Al escribir los resultados
Soluciones
interrumpir la ejecución, salvar el estado, solucionar , restaurar
estado, continuar
eliminar instrucción, solucionar, reejecutar
Sistema de Ficheros
11
Responsabilidades del HW i del SO
Hardware
Traducción de @ lógicas a @físicas
Detección de problemas
fallo de páginas
acceso inválido
falta de privilegios
SO
Resolución de problemas
Gestión del espacio libre/ocupado
Sistema de Ficheros
12
Gestión del espacio libre
Mapa de bits
Sencillo
Dificil encontrar huecos
Lista de libres
Organizada por zonas libres y ocupadas
Fácil encontrar huecos
Sistema de Ficheros
13
Gestión del espacio...
Regístrate para leer el documento completo.