OS y Memoria Virtual Flashcards
¿Qué es un Sistema Operativo?
El Sistema Operativo es un software que administra el equipo y permite crear una abstracción del hardware. El OS posee servicios y rutinas para controlar los periféricos.
¿Cuál es el objetivo de la Memoria Virtual?
Crear una capa de abstracción entre la memoria física y el espacio de memoria direccionable que ve el procesador.
¿Qué es una page o página?
Es una de las partes en la que está dividida la memoria lógica.
¿Qué es la memoria lógica?
Es el mapa de memoria visto por los programas, procesos o tareas.
¿Qué es la memoria física?
Es el mapa de memoria que se encuentra físicamente en el hardware.
¿Qué es un frame o marco?
Es una de las zonas en las que se divide la memoria física.
¿A qué memoria se accede cuando arranca el procesador?
A la memoria física, así carga el sistema operativo y recién ahí se habilita la memoria virtual.
Todo marco alberga una página
¿Verdadero o Falso?
Verdadero
Toda página se encuentra albergada ¿Verdadero o Falso?
Falso, no todas las páginas van a estar albergadas en todo momento.
¿Qué es el swap file?
Es un archivo que guarda las imágenes de aquellas páginas de memoria virtual que no se encuentran actualmente en la memoria física. El swap file se encuentra en el disco rígido.
¿Adónde se guardan las páginas que no se encuentran en la memoria física?
Se guardan temporalmente en el disco.
¿Cómo se componen las direcciones de memoria?
Las direcciones de memoria están compuestas por el índice y el offset. El primero indica la página lógica y el segundo indica el address dentro de la misma.
¿Qué es el MMU?
El Memory Management Unit (MMU) es un hardware que convierte las direcciones virtuales en direcciones físicas. Esto lo logra con una tabla con tantos registros como páginas en la memoria virtual. Cada fila está compuesta por ciertos bits de estado, un registro que indica el marco que alberga la página (si está en la RAM) y bits de REEMP con información utilizada por la política de reemplazo.
Los bits de estado pueden ser:
- bit de validez: Indica si la página está albergada en un marco o no
- bit de dirty: Indica si la página fue modificada desde que se trajo a la memoria principal.
- bit de paginabilidad: Indica si la página puede ser desalojada de la memoria principal.
¿Qué es un page fault?
Es una excepción que ocurre cuando se quiere acceder a una página que no se encuentra asignada (tiene el bit de validez en 0). Esto invoca a la ISR Virtual Memory Manager (VMM) que decide cuál marco liberar y así hacer lugar para la página.
¿Qué es la VMM?
La Virtual Memory Manager es una ISR que se invoca cuando se quiere acceder a una página que no está albergada en la RAM (page fault).
Define cuál marco desocupar según cierta política de reemplazo para luego traer del disco la página solicitada.
La página desalojada debe ser actualizada en el swap file, que utiliza una política de write back para evitar escribir en el disco si no se modificó el contenido. Para esto se utiliza un bit de dirty.
¿Cuál es la diferencia entre el swap file y el archivo de paginado?
Ninguna, es lo mismo.
¿Todo espacio de memoria se puede paginar?
No, cada página tiene un bit de paginable que indica si ese espacio de memoria se puede remover de la memoria física. Por ejemplo, hay módulos del sistema operativo que deben estar siempre disponibles en la memoria física.