Diagrama temporal de un programa simple. Multi-Programación con dos programas

Documentos relacionados
Gestión de Memoria. Gestión de Memoria. Requisitos de Gestión de Memoria

Arquitectura de Computadores II Clase #7

Sistemas Operativos Administración de la Memoria

El soporte del sistema operativo. Hace que un computador sea más fácil de usar. Permite que los recursos del computador se aprovechen mejor.

Procesos y Memoria. Administración de Memoria 26/10/2010 SISTEMAS OPERATIVOS

Introducción a los Sistemas Operativos

Tema 11. Soporte del Sistema Operativo REQUERIMIENTOS DE LOS SISTEMAS OPERATIVOS MULTIPROGRAMACIÓN.

Administración de la memoria

Memoria Virtual. Memoria Virtual

ADMINISTRACION DE LA MEMORIA. En memoria 1 solo proceso Desventajas:

Tema 20 Gestión de memoria

Arquitectura de Computadores II Clase #7

Administración de Memoria.

Capítulo 1. Sistemas de Asignación Contigua Basados en Particiones

Tema 6. Administración de memoria

SISTEMAS. UNIDAD VI Parte A ADMINISTRACION DE MEMORIA ING. AGUILERA SERGIO OMAR

Sistemas Operativos. Daniel Rúa Madrid

aspectos fundamentales

SISTEMAS OPERATIVOS Ciclo 2014 Plan 2012

Capítulo 3 Gestión de Memoria

TEMA 5: GESTIÓN DE MEMORIA

Taller de Sistemas Operativos. Direccionamiento de Memoria 2012

Tema 6 Organización y gestión de la memoria

ADMINISTRACIÓN DE LA MEMORIA

Hardware y Estructuras de Control. Memoria Virtual. Ejecución de un Programa. Ejecución de un Programa

Actividades de Teoría de Sistemas Operativos Sistemas informáticos multiusuario y en red

Sistemas Operativos [Administración de la memoria]

Tema 6. Gestión de la memoria

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

Manipulación de procesos

Ejercicios de GESTION DE MEMORIA

Memoria física vs. Memoria lógica

22 mar UNIDAD 3 Administración de memoria. 3.1 Política y filosofía. Filosofía: POLÍTICAS. Organización de la memoria estrategias de administración

Unidad 2: Gestión de Memoria

TEMA II: ALMACENAMIENTO DE LA INFORMACIÓN

Espacio de direcciones de un proceso

Sistemas operativos. Tema 7: Gestión n de memoria

Tema 7. Memoria virtual

Tarea 4.2 Memoria Virtual

Problemas Resueltos. Tema 3. Gestión de Memoria. Gestión de memoria: Asignación contigua

Métodos de Asignación

Capítulo 2. Sistemas de Asignación Dispersa de

MANEJO DEL AREA DE SWAP

Tema V Generación de Código

SISTEMAS OPERATIVOS AVANZADOS

SISTEMAS OPERATIVOS Arquitectura de computadores

Pontificia Universidad Católica del Ecuador

Sistemas Operativos Tema 8. Gestión de memoria José Miguel Santos Alexis Quesada Francisco Santana Belén Esteban

Memoria. Organización de memorias estáticas.

Diseño de compiladores. Organización de memoria. Organización de memoria. Organización de memoria. Zona de código 04/05/2014 ORGANIZACIÓN DE MEMORIA

Tema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía

Sistemas Operativos. Introducción. Tema 6

Tema 4. Administración de la memoria

Computadora y Sistema Operativo

Organización lógica Identificación de bloque

FUNCIONAMIENTO DEL ORDENADOR

Sea una memoria caché en la que cada 2 20 accesos se producen 2 17 fallos. Calcule la tasa de fallos.

Estructuras en LabVIEW.

Tema 8 Gestión de la memoria en tiempo de ejecución.

CPU MEMORIAS CACHE. Memorias caché. Memoria caché = memoria de tamaño pequeño y acceso rápido situada entre la CPU y la memoria principal.

Recopilación presentada por 1

Sistemas Operativos. Dr. Luis Gerardo de la Fraga. Departamento de Computación Cinvestav

Ejercicios del tema 4. El procesador

SOLUCIONES. SISTEMAS OPERATIVOS Examen de la convocatoria extraordinaria de diciembre 2 de diciembre de 2010

16bits: Tamaño total: 2 16 Tamaño página: 2 13 nº de páginas: 2 16 / 2 13 = 2 3 = 8 páginas Tamaño de tabla: 2 3 *2B = 16B por tabla

Servicios del Sistema Operativo (SO)

T5.- Gestión de discos Estructura física del disco duro. TEMA 5 GESTIÓN DE DISCOS Estructura física del disco duro.

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Capitulo V Administración de memoria

Memoria Virtual. Figura 1: Memoria Virtual

HP - UX. Qué es HP UX?

4 Gestión de la memoria

Unidad de Memoria. Almacenamiento de información Operaciones básicas. Propiedades de la Memoria. Escritura o almacenamiento. Lectura.

PROCEDIMIENTOS DEL NOC RESPALDO Y RECUPERACION DE DATOS

Qué es un programa informático?

Procesadores superescalares. Introducción

Sistemas operativos. Tema 10: Sistemas de ficheros

Gestión de Memoria. Curso AT3148 Ampliación de Sistemas Operativos A. Sánchez-Macián, J.A. Maestro, M.P.

Introducción a los Sistemas Operativos

Tema 5: Memorias. Espacio reservado para notas del alumno

TEMA 3. GESTIÓN DE MEMORIA

Convivencia Gestión de la Memoria

UNIVERSIDAD NACIONAL FEDERICO VILLARREAL FACULTAD DE INGENIERÍA ELECTRÓNICA E INFORMÁTICA SÍLABO

Universidad de Valladolid

Sistemas Operativos. Curso 2014 Estructura de los sistemas operativos

Sistemas Operativos. Clase 2: Administración de procesos.

Ingeniería en computación

Sist s em e a m s s O per e ativos o. s Unidad V Entrada Sali l d i a.

TEMA 2. ORGANIZACIONES DE FICHEROS Y ESTRUCTURAS DE ACCESO

Sistemas Operativos II Capítulo 3. Memoria Virtual. 2.- NOTA GENERAL: Tema 3 Gestión de memoria: memoria virtual.

Clase 1: Estructuras, Procesos y Diccionario de Datos

3. Sistemas operativos

TEMA 11 CONMUTACIÓN DE PAQUETES

Transcripción:

Diagrama temporal de un programa simple Multi-Programación con dos programas

Multi-Programación con tres programas Gestión de la Memoria Mono-programación La memoria se divide en dos partes: Una para el sistema operativo (monitor) Otra para el programa en ejecución (usuario) Multi-programación La parte del usuario debe subdividirse para dar cabida a los distintos procesos La tarea de subdivisión la realiza dinámicamente el sistema operativo, y se conoce como gestión de memoria

Intercambio (swapping) Problema: La E/S es tan lenta comparada con la CPU que aun en sistemas de multiprogramación, la CPU puede estar inactiva al mayor parte del tiempo. Soluciones: Incrementar la memoria principal Es caro Más memoria= programas más grandes Intercambio Que es el Intercambio? Se tiene una cola (queue) a largo plazo de solicitudes de proceso en el disco. Los procesos se traen a la memoria principal a medida que hay espacio disponible A medida que un proceso se completa se mueve fuera de la memoria principal. Puede pasar que ninguno de los procesos de memoria este listo (p.ej., todos están esperando una operación de E/S) En lugar de estar parado, el procesador intercambia uno de esos procesos, ubicándolo en el disco en una cola intermedia Trae entonces otro proceso de la cola intermedia o acepta otra petición de proceso de la cola de largo plazo Pero el intercambio es otro proceso de E/S

Uso de Intercambio Particiones Consiste en dividir la memoria en secciones para ubicar los procesos (incluyendo el Sistema Operativo) Particiones de tamaño fijo Pueden no ser del mismo tamaño Cuando un proceso se introduce en la memoria, se ubica en la partición más pequeña que puede incluirlo. Se desperdicia memoria Una opción más eficiente consiste en usar particiones de tamaño variable

Particiones Fijas Particiones de Tamaño Variable (1) Cuando cada proceso se introduce en la memoria, se le asigna el espacio exacto que necesita. Esto deja al final de la memoria un hueco, demasaido pequeño para otro proceso Un solo hueco menos derroche Cuando todos los procesos están en espera, el procesador saca uno de memoria u carga otro desde el disco El nuevo proceso puede ser mas pequeño que el anterior Queda otro hueco

Particiones de Tamaño Variable (2) Efectos de Particionamiento Dinámico Eventualmente, puede haber una gran número de huecos, empeorando la utilización de la memoria (fragmentación) Soluciones: Fusión Juntar huecos adyacentes en un hueco mayor Compactación - Periódicamente recorrer la memoriay mover los huecos a un bloque libre (de-fragmentación de disco)

Relocalización Dificilmente un proceso se cargará en la misma posición de memoria cada vez que se intercambia. Las instrucciones contienen direcciones: Direcciones de datos Direcciones de instrucciones (en saltos) Estas direcciones cambian cada vez que el proceso se intercambia. Se distinguen: Direcciones lógicas relativas al comienzo del programa Direcciones físicas posición actual en la memoria principal La conversión es automática al intercambiar procesos: dirección física = dirección lógica + posición de comienzo actual del proceso (dirección base) Paginación Se divide la memoria en pequeños trozos iguales y de tamaño fijo frames (marcos) Se dividen los programas (procesos) en pequeños trozos iguales pages (páginas) Se asignan el número requerido de frames a un proceso El Sistema Operativo mantiene una lista de frames libres Un proceso no requiere que sus páginas se alojen en frames contiguos Se usa una tabla de páginas que indica en que frame se aloja cada página del proceso.

Asignación de Marcos (Frames) libres Direcciones lógicas y físicas - Paginación

Memoria Virtual Paginación por demanda No requiere que todas las páginas de un proceso esten alojadas en la memoria Cada página se introduce en la memoria sólo cuando es requerida- Fallo de página La página requerida no está en la memoria El Sistema Operativo debe cargarla Puede ser necesario sacar alguna página para hacer espacio. La página a sacar se selecciona (predicción) en base a su historia reciente (las menos utilizadas) Hiperpaginación (Thrashing) Si hay muchos procesos en una memoria pequeña: El Sistema Operativo pasa mucho tiempo intercambiando páginas, en lugar de ejecutar instrucciones El led del disco está encendido todo el tiempo Soluciones Buenos algoritmos de remplazo de páginas Reducir el número de procesos en ejecución Instalar más memoria.

Ventajas Estructura de la Tabla de Páginas Invertida No es necesario cargar todo un proceso en memoria para que corra Solo se cargan las páginas necesarias Por lo tanto, se puede correr un proceso mayor que toda la memoria principal! La memoria principal es llamada memoria real Sin embargo, el usuario o programador percibe una memoria mucho mayor (la que hay disponible en disco, que se denomina memoria virtual

Buffer de Traducción Anticipada (Translation Lookaside Buffer) Operación de la TLB Toda referencia a memoria virtual puede ocasionar dos accesos a la memoria física: Para tomar el elemento de la tabla de páginas apropiada Para tomar el dato correspondiente Esto duplicaría el tiempo de acceso a memoria Para evitar esto, se usa una cache especial para los elementos de la tabla de páginas TLB

Operación de la TLB y Cache Segmentación La paginación no es visible al programador La segmentación es visible al programador Usualmente, el programador o el Sistema Operativo asignarán programas y datos a segmentos distintos Pueden haber segmentos de programa distintos para varios tipos de programas, y también distintos segmentos de datos, pudiendo asignarse a cada uno derechos de acceso y uso

Ventajas de la Segmentation Simplifica el manejo de estructuras de datos crecientes Permite modificar los programas y recompilarlos independientemente, sin que sea necesario volver a enlazarlos y recargar el conjunto entero. Permite que varios procesos compartan segmentos Se facilita la protección Algunos sistemas combinan la segmentación con la paginación Lecturas requeridas Stallings capítulo 7