Semana 2 - Vicvargas/PortafolioDigital GitHub Wiki
Martes 30/07
Actividad
Realizamos una actividad llamada "La reja", la cual consiste en que a grupos de tres personas formados por el profesor se les asigna una lectura sobre el tema "Esquemas de gestión de la memoria", para que después de leerla, una persona de cada grupo rotara hacia otro y así cada quien compartiera lo que aprendió sobre el esquema que se le había asignado según el grupo en el que se encontraba.
Gestión de Memoria
¿Qué es un sistema operativo?
Un sistema operativo es una capa de software encima del hardware. Se encuentra en el ROM para evitar un problema de ejecución.
Entre sus funciones se encuentran:
- Proveer un API a los desarrolladores
- Administrar los recursos de la PC
- Gestionar los procesos
- Gestionar la memoria
- Gestionar los archivos y el disco
- Gestionar inputs y outputs
La parte del sistema operativo que gestiona la memoria es el Memory Manager. La forma en que gestionamos la memoria ha cambiado a través del tiempo para permitir el multiprogramming.
Esquemas de gestión de memoria
❆ Sin abstracción de memoria: El programa veía directamente a la memoria física y trabajaba con movimientos entre registros, lo cual complicaba mucho el hecho de poder realizar varios procesos a la vez. Una desventaja de este esquema es que los programas de usuario pueden dañar el SO con facilidad al acceder voluntaria o involuntariamente a direcciones de memoria incorrectas. Se podía lograr multiprogramming por medio de reubicación estática.
❆ Abstracción de memoria (Bloque de direcciones): Cada programa consigue una sección de la memoria solo para él. La desventaja de este esquema es que debíamos tener el programa cargado en memoria.
Características:
- Registros base y límites.
- Reubicación dinámica: La instrucción que necesito, la obtengo.
- Se utilizaba la técnica swapping para lograr la multiprogramación.
❆ Memoria virtual: La memoria virtual se divide en páginas, las cuales son unidades de tamaño del espacio de direcciones virtuales. Las direcciones se asocian a memoria física, pero no necesariamente están en memoria para poder ejecutar el programa. Los programas hacen referencia a las direcciones virtuales; cuando no hay memoria virtual, la memoria se envía a la Memory Management Unity, la cual convierte direcciones de memoria virtuales en direcciones físicas.
Tarea Moral
Investigar qué es heap, stack, pointers, references.
Jueves 01/08/19
Este día no hubo lecciones debido a la celebración del Día de la Virgen de los Ángeles.