T3 gestion de memoria Flashcards
en que consiste la jerarquia de memoria
asigna valores a las distintas memorias que se tienen en el ordenador
ciertos gb a cache (memoria rapida y volatil)
ciertos gb a memoria principal(velocidad mediana y no volatil)
ciertos gb a memoria de almacenamiento (lento y no volatil)
que se encarga de administrar la memoria y cual es su trabajo
el administrador de memoria trata de obtener la maxima eficiencia de la memoria, llevando a los registros las partes de memoria cuando estan en uso, asignandole memoria a los procesos y designarla cuando acaben
que dos problemas hay que tener en cuenta para que no existan problemas de memoria y que puedan convivir varias aplicaciones simultaneamente
- proteccion
- rehubicacion
para ello se crea el espacio de direcciones, que consiste en asignar espacio de direccionamiento a un proceso
en que consiste el espacio de direcciones
consiste en asignar espacio de direccionamiento en memoria a un proceso. cada proceso tiene su propio espacio
cuales son las fases de generación de un ejecutable
- compilación: traduce el codigo de programación del progtama en un lenguaje comprendido por el equipo
- montaje: consiste en insertar el programa en la maquina
cual es el formato de un fichero ejecutable
Número mágico: tipo de ejecutable.
Datos: sólo variables locales.
Datos sin valor inicial: no se almacenan en el ejecutable.
Variables locales: dinámicas. Se almacenan en la pila.
diferencia entre variables globales y variables locales
las variables globales son estaticas y se crean al iniciarse el programa. Tienen una dirección fija en memoria
las variables locales son dinamicas y se crean al invocar una funcion
que compone el mapa de memoria de un proceso
está compuesto por varias regiones y se crea a partir del fichero ejecutable. Cada seccion da lugar a una region:
-codigo
-datos
-pila
durante la ejecucion del proceso se pueden crear nuevas regiones o variar el tamaño de las existentes
en que consisten las direcciones logicas
direcciones de memoria generadas por el programa (escritas por el ejecutable)
en que consisten las direcciones fisicas
direcciones de memoria asignadas al proceso al cargarlo
cuales son los objetivos de la gestion de memoria
- reubicacion: el programa puede cargarse en cualquier zona de memoria. Esto hace que sea posible la reubicacion en tiempo de ejecucion
- proteccion: establece ciertas regiones para cada proceso
- crecimiento: la memoria asignada inicialmente debe poder ampliarse y reducirse
- comparticion de memoria
que son las bibliotecas estáticas
El montador copia el código de las funciones de biblioteca en el fichero ejecutable.
Ventajas:
-Todo el código está en un único fichero: facilita su instalación y distribución
-Las llamadas a funciones de biblioteca serán igual de rápidas que a funciones propias del sistema.
Inconvenientes
-Gran tamaño de los ficheros ejecutables
-Mayor uso de memoria
que son las bibliotecas dinamicas
El código de las funciones de biblioteca está en ficheros comunes. El montador sólo indica en el ejecutable qué bibliotecas compartidas utiliza. Al ejecutar el programa, el montador dinámico proyecta las bibliotecas compartidas en el espacio de direccionamiento del proceso y enlaza las funciones con el programa ventajas: -ejecutables de menor tamaño -las bibliotecas solo se cargan una ves -facilidad para cargar codigo adicional inconvenientes:
en que consiste la asignacion de espacio contiguo
se cargan los procesos en una zona contigua a al memoria principal. no hay regiones, solo registros valla (base y limite)
El so mantiene la info entabla de zonas asignadas y zonas libres y copia el valor de registros valla de cada proceso en su PBC
en que consiste la asignacion de espacio no contiguo (p)
el mapa de memoria se divide en paginas del mismo tamaño donde la direccion lógica = num de pagina + el desplazamiento
la particion de memoria en espacios contguos puede ser
estatica o dinamica
cual es la relacion entre el tamaño de marco y el tamaño de página
tamaño de marco = tamaño de página
que es un fallo de página
acceso a un pagina que no está cargada en memoria, la CPU provoca una excepción y el SO la transfiere del disco a memoria
respecto a las politicas de asignacion de espacio libre en los sistemas de gestión de memoria que usan asignacion de espacio contiguo, cual es la mas rapida en encontrar espacio libre
primer ajuste
cuales son las politicas de asignacion de espacio libre
best fit
worst fit
primer ajuste
en que consiste la asignacion de espacio best fit
en asignar el espacio libre con tamaño suficiente
en que consiste la asignacion de espacio worst fit
en asignar el mayor espacio libre con tamaño suficiente
en que consiste la asignacion de espacio del primer ajuste
en asignar el primer espacio con tamaños suficiente. Su mayor ventaja es que no pierde tiempo buscando
por que está determinado la capacidad de direccionamiento lógico
por el tamaño de las direcciones lógicas
Cuando un proceso accede a una página no presente y se produce un fallo de página, ¿que elemento carga la página que falta desde el disco?
la rutina de atencion de fallos de página del nucleo
que ocurre en un sistema con memoria virtual si durante la traduccion de una dir. logica a fisica el hardware detecta que en la tabla de págunas el bit de pag no esta presente
salta una excepcion de bit de pag no presente
como se comporta la fragmentacion en un so con memoria paginada dependiendo del tamaño
aumenta a medida que aumenta el tamaño de las páginas
el hardware de un determinado sistema incorpora 1 bit de validez, 1 de presente y 1 de referencia en la tabla de paginas. Que algortimos de reemplazo podra implementar?
FIFO y 2a oportunidad
que campos tiene la direccion logica
numero de pagina y numero de desplazamiento
que campos tiene la direccion fisica
numero de marco y numero de desplazamiento
se puede eliminar la fragmentación externa utilizando paginación?
SI
producen la asignacion de espacio contigua, mediante lista enlazada y mediante indexación del espacio fragmentacion?
Si, las 3 tecnicas fragmentan la memoria
que significa LRU
Least recent use, es una FIFO circular
como funciona el LRU
en la tabla de procesos accionandose el que ha estado mas tiempo sin aparecer se remplaza por el valor que se carga
como funciona el algoritmo de reemplazo de paginas OPTIMO8
elimina al que mas tarde en volver a utilizarse. En caso de que sea la ultima en la cadena de referencia se puede eliminar cualquiera
Cual es el proposito del bit M en un sistema de memoria virtual y como puede ayudar a mejorar el flujo entre la memoria y el disco
sirve para solo modificar las páginas no modificadas y asi reducir el trafico de páginas entre la mem fisica y el disco
un mismo cuadro puede estár referenciado en varias paginas?
SI
cual es una de las ventajas de usar tablas de pagina mutinivel
es posible reducir espacio en memoria destinado a almacenar las tablas de paginas de los procesos
si en un proceso las direcciones virtuales y su correspondiente fisica coinciden
el espacio lógico del proceso es el mismo que el espacio físico
como se calcula el registro limite de una tabla de paginas
se toma el valor del ultimo registro de la paginación
el tamaño de pagina se aplica a
el desplazamiento
cuando un archivo no se puede escribir en memoria pq su bit E=0 que ocurre
salta una excepción de acceso a memoria
cuando un archivo no está presente en memoria (P=0)
salta una excepcion de fallo de página
Respecto a las políticas de asignación de espacio libre en los sistemas de gestión de memoria que usan asignación de espacio contiguo:
Seleccione una:
La de peor ajuste (worst-fit) es la peor.
Buscan la mejor manera de compactar la memoria tratando de mover la menor cantidad de bytes.
La del primer ajuste es la más rápida en encontrar un espacio libre.
La de mejor ajuste (best-fit) es la mejor.
La del primer ajuste es la más rápida en encontrar un espacio libre.
Correcto. Esta política no dedica tiempo a buscar espacio libre evaluando todas las posibilidades, pues se quedará con el primer espacio libre que encuentre que tenga el tamaño suficiente. Es posible que como consecuencia se genere un nuevo espacio libre pequeño (si el espacio libre evaluado era muy parecido al tamaño del proceso) o un nuevo espacio libre grande (si ese espacio era mucho más grande que el proceso). En media se generarán por tanto espacios libres similares.
En relación con la paginación con memoria virtual es cierto que:
Seleccione una:
Un proceso cuyo tamaño sea de 20 páginas ocupará el doble de marcos que otro proceso cuyo tamaño sea de 10 páginas.
Un proceso cuyo tamaño sea de 200 páginas provocará, como mínimo, 200 fallos de página.
Un proceso cuyo tamaño sea de 20 páginas, puede provocar menos fallos de página que otro proceso cuyo tamaño sea de 10 páginas.
Si ejecutamos un proceso y observamos que provoca 50 fallos de página, siempre que lo ejecutemos observaremos el mismo número de fallos de páginas.
Un proceso cuyo tamaño sea de 20 páginas, puede provocar menos fallos de página que otro proceso cuyo tamaño sea de 10 páginas.
Correcto. Los fallos de página se producen cuando la página que necesita el proceso no está en memoria. Esto es independiente del tamaño del proceso, pues no se le tienen por qué asignar más marcos (y por tanto reducir la posibilidad de fallo de página) a un proceso grande que a un proceso pequeño. Por tanto es perfectamente posible que un proceso grande (de 20 páginas) tenga menos fallos de página que uno pequeño (de 10 páginas). Y también es posible todo lo contrario.
La política de gestión de memoria virtual de un cierto sistema usa paginación por demanda. Si la memoria principal admite hasta 64 marcos de página. ¿Cuál es el tamaño mínimo en bits que debe tener una entrada de la tabla de páginas?:
Seleccione una:
7 bits.
El tamaño dependerá del nº de páginas que tenga el proceso.
6 bits.
50 bits.
7 bits.
Correcto. Teniendo en cuenta que al menos se debe usar 1 bit para indicar el estado de presencia de la página en memoria, con los 6 bits restantes se pueden direccionar los 2^6=64 marcos que tiene la memoria principal. No obstante, en un sistema real las entradas seguramente tendrían unos pocos bits adicionales, como el de validez, modificada, modo supervisor, etc.
Cuando un proceso accede a una página no presente y se produce un fallo de página, ¿cuál de los siguientes elementos carga la página que falta desde el disco?
Seleccione una:
El propio proceso, ejecutando una rutina de tratamiento de fallos de página
La rutina de atención de fallos de página del núcleo
La llamada al sistema de tratamiento de fallos de página
El gestor de interrupciones del disco
La rutina de atención de fallos de página del núcleo
Correcto. Cuando se produce un fallo de página, la CPU produce una excepción y se ejecuta una rutina del núcleo, que es la que se encarga de cargar la página desde el disco a memoria.
Cuando el planificador a medio plazo decide llevar un proceso de memoria a disco
Seleccione una:
Transfiere todas las páginas que en la tabla de páginas están marcadas como válidas
Transfiere todas las páginas que en la tabla de páginas están marcadas como accedidas
Transfiere todas las páginas que en la tabla de páginas están marcadas como modificadas
Transfiere todas las páginas que en la tabla de páginas están marcadas como presentes
Transfiere todas las páginas que en la tabla de páginas están marcadas como modificadas
Correcto. Sólo es necesario copiar a disco las páginas que han sido modificadas y por tanto la copia en disco es diferente o inexistente.
Cuando un proceso accede a una página no presente y se produce un fallo de página, ¿cuál de los siguientes elementos carga la página que falta desde el disco?
Seleccione una:
El propio proceso, ejecutando una rutina de tratamiento de fallos de página
La rutina de atención de fallos de página del núcleo
La llamada al sistema de tratamiento de fallos de página
El gestor de interrupciones del disco
La rutina de atención de fallos de página del núcleo
Correcto. Cuando se produce un fallo de página, la CPU produce una excepción y se ejecuta una rutina del núcleo, que es la que se encarga de cargar la página desde el disco a memoria.
Cuando el planificador a medio plazo decide llevar un proceso de memoria a disco
Seleccione una:
Transfiere todas las páginas que en la tabla de páginas están marcadas como válidas
Transfiere todas las páginas que en la tabla de páginas están marcadas como accedidas
Transfiere todas las páginas que en la tabla de páginas están marcadas como modificadas
Transfiere todas las páginas que en la tabla de páginas están marcadas como presente
Transfiere todas las páginas que en la tabla de páginas están marcadas como modificadas
Correcto. Sólo es necesario copiar a disco las páginas que han sido modificadas y por tanto la copia en disco es diferente o inexistente.
¿Cuál de estos algoritmos de remplazo de páginas es menos costoso y sencillo de implementar?:
Seleccione una:
LRU.
FIFO.
Óptimo.
NRU o Reloj.
FIFO.
Correcto. Este algoritmo no necesita un hardware específico para su implementación, además de ser el más sencillo de los posibles. No obstante, en general merece la pena implementar NRU, siempre que se disponga del hardware necesario para ello.
Sea una aplicación compuesta por P procesos, cada uno de los cuales tiene H hilos. Adicionalmente, todos los procesos comparten una cierta región de memoria. Si se utiliza gestión de memoria por paginación, ¿cuántas tablas de páginas diferentes necesitará crear el núcleo para esta aplicación?
Seleccione una:
P * H + 1
P + H
P
P * H
P
Correcto. Cada proceso usa una tabla de páginas, independientemente del nº de hilos que tenga, ya que los hilos comparten toda la memoria del proceso.
Cuando el planificador a medio plazo decide llevar un proceso de memoria a disco
Seleccione una:
Transfiere todas las páginas que en la tabla de páginas están marcadas como válidas
Transfiere todas las páginas que en la tabla de páginas están marcadas como accedidas
Transfiere todas las páginas que en la tabla de páginas están marcadas como modificadas
Transfiere todas las páginas que en la tabla de páginas están marcadas como presentes
Transfiere todas las páginas que en la tabla de páginas están marcadas como modificadas
Correcto. Sólo es necesario copiar a disco las páginas que han sido modificadas y por tanto la copia en disco es diferente o inexistente.
Con respecto a la memoria virtual y la paginación por demanda:
Seleccione una:
Un mismo marco de página puede estar referenciado desde más de una tabla de páginas.
Lo ideal es que el nucleo asigne a cada proceso un número de marcos de página proporcional al tamaño del programa que está ejecutando
El nº de entradas de la tabla de páginas de un proceso nunca puede ser superior al número de marcos de memoria física existentes en el sistema.
Los procesos sólo pueden demandar páginas que están en memoria; si no es así, se producirá un error.
Un mismo marco de página puede estar referenciado desde más de una tabla de páginas.
Correcto. En el sistema de gestión de memoria con paginación los procesos pueden compartir memoria. Para ello basta con usar los mismos marcos de página que serán referenciados desde las tablas de páginas de los procesos que compartan memoria.
¿Cuál de los siguientes bits de control de la tabla de páginas de un proceso es esencial para implementar políticas de sustitución de páginas del tipo NRU (o algoritmo del reloj o segunda oportunidad)?
Seleccione una:
El bit M (modificada)
El bit V (válida)
El bit R (referenciada)
El bit P (presente)
El bit R (referenciada)
Correcto. Gracias a este bit sabemos que la página ha sido usada en algún momento desde que se puso el bit a cero por última vez, pues la CPU lo activa con cada referencia a ella. Las páginas con este bit desactivado son las mejores candidatas a ser remplazadas, puesto que no se han usado en el pasado reciente.
el hardware de un determinado sist incorpora 1 bit de V, P y R; que algoritmo podria implementar
- Fifo, optimo, LRU
- FIFO, 2da oportunidad
- LRU
-FIFO, 2da oportunidad
cual de las siguientes es cierta?
- la fragmentacion externa puede eliminarse utilizando segmentacion
- la fragmentacion externa puede eliminarse utilizando paginacion
- la fragmentacion externa es inevitable
- -la fragmentacion interna es inevitable
-la fragmentacion externa utilizando paginacion
para que se utiliza la TBL?
para almacenar las entradas de la tabla mas usadas por el proceso
cual es el proposito de la TBL
reducir el tiempo medio de acceso a memoria
En relación con la gestión de memoria es CIERTO que:
a) Con asignación de espacio contiguo que usa intercambio de memoria (swapping), se necesita un mecanismo de reubicación dinámica (traducción de dirección lógica a física en tiempo de ejecución)
b) Con paginación pura no es necesario utilizar mecanismo de reubicación dinámica alguno
c) La compactación permite eliminar la fragmentación interna cuando se utiliza segmentación
d) El sistema de segmentación paginada genera una pequeña fragmentación externa
a)Con asignación de espacio contiguo que usa intercambio de memoria (swapping), se necesita un mecanismo de reubicación dinámica (traducción de dirección lógica a física en tiempo de ejecución)
Cuando el swapper (planificador a medio plazo) decide llevar un proceso de memoria a disco:
a) Transfiere todas las páginas que en la tabla de páginas están marcadas como presentes
b) Transfiere todas las páginas que en la tabla de páginas están marcadas como modificadas
c) Transfiere todas las páginas que en la tabla de páginas están marcadas como válidas
d) Ninguna de las afirmaciones es cierta
b)Transfiere todas las páginas que en la tabla de páginas están marcadas como modificadas
Cuando se utiliza asignación de espacio contigua:
a) Se debe usar acceso secuencial para acceder a los registros de un fichero
b) Se puede producir fragmentación externa
c) Se necesita usar la técnica del mapa de bits para conocer qué bloques están libres
d) Se almacena en cada bloque de datos la dirección del siguiente bloque del fichero
b)Se puede producir fragmentación externa
El intercalado de sectores en un disco se utiliza para:
a) Disminuir la fragmentación interna
b) Mejorar el tiempo de latencia
c) Mejorar el tiempo de búsqueda
d) Disponer de más sectores en las pistas interna
b)Mejorar el tiempo de latencia
Sea un sistema de ficheros Unix, ¿cuál de las siguientes afirmaciones es falsa?
a) Si aumentamos el tamaño de los punteros a bloques, manteniendo todos los demás parámetros iguales, se reduce el tamaño máximo que puede tener un fichero
b) Si aumentamos el tamaño de bloque, aumenta la fragmentación interna
c) Los punteros directos a bloques de datos que hay en el inodo sólo se utilizan para ficheros pequeños. Para ficheros más grandes se emplean únicamente punteros indirectos simples, dobles y triples
d) Si aumentamos el tamaño de la tabla de inodos, se pueden almacenar más ficheros
c)Los punteros directos a bloques de datos que hay en el inodo sólo se utilizan para ficheros pequeños. Para ficheros más grandes se emplean únicamente punteros indirectos simples, dobles y triples
Cuál de los siguientes bits de control de la tabla de páginas del procesador es esencial para implementar políticas de sustitución de páginas del tipo LRU o NRU?
a) El bitP (presente)
b) El bit R (referenciada)
c) El bit V (válida)
d) El bit D (modificada)
b)El bit R (referenciada)
En un sistema operativo que usa memoria virtual por segmentación paginada y paginación a 2 niveles:
a) En la tabla de segmentos se indica la dirección física donde comienza cada segmento
b) En la tabla de páginas de segundo nivel se almacena el nº de marco que ocupa la página
c) En la tabla de páginas de primer nivel se almacena el nº de entrada de la tabla de páginas de segundo nivel que da acceso al segmento
d) Se necesitan tantas tablas de páginas de segundo nivel como segmentos tenga el proceso
b)En la tabla de páginas de segundo nivel se almacena el nº de marco que ocupa la página
¿Cuál es el objetivo primordial de utilizar tablas de páginas multinivel en lugar de usar tablas de un solo nivel?
a) Poder gestionar procesos más grandes
b) Poder compartirmemoria entre procesos
c) Utilizar menos memoria para almacenar la tabla de páginas
d) Poder implementar segmentación paginada
c)Utilizar menos memoria para almacenar la tabla de páginas
El hardware de un determinado sistema incorpora 1 bit de validez, 1 bit de presente y 1 bit de referencia en la tabla de páginas. ¿Qué posibles algoritmos de remplazo podrá implementar el sistema operativo?
a) Cualquiera de los siguientes: FIFO, Óptimo, LRU
b) Cualquiera de los siguientes: FIFO, 2ª oportunidad
c) Únicamente LRU
d) Si no existe el bit de modificado, es imposible implementar un algoritmo de remplazo
b)Cualquiera de los siguientes: FIFO, 2ª oportunidad
En un sistema con gestión de memoria virtual paginada, el espacio de direccionamiento virtual es de 32 páginas de 1024 bytes. La memoria física está dividida en 64 marcos. ¿Cuántos bits componen una dirección física?
a) 16
b) 15
c) 5
d) No hay datos suficientes para poder determinarlo
a)16
Con respecto al algoritmo LRU (Last Recently used):
a) No es adecuado para la sustitución de páginas cuando se usa memoria virtual, pues requeriría ciclos adicionales en cada acceso a memoria o bien un HW muy costoso
b) Es poco adecuado para la sustitución de bloques de disco en el caché de disco,debido a su elevada complejidad de implementación
c) Al igual que el algoritmo NRU (Not Recently Used), solo tiene sentido utilizarlo en sistemas operativos multiusuario
d) A diferencia del NRU, este algoritmo no se basa en el principio de localidad de referencia
a)No es adecuado para la sustitución de páginas cuando se usa memoria virtual, pues requeriría ciclos adicionales en cada acceso a memoria o bien un HW muy costoso
En un sistema que usa memoria virtual por paginación bajo demanda:
a) El tamaño de página puede variar de un proceso a otro
b) Puede ocurrir que en un momento dado un proceso no tenga en memoria todas sus páginas
c) Puede producirse fragmentación externa
d) No puede utilizarse segmentación (aunque sea segmentación paginada)
b)Puede ocurrir que en un momento dado un proceso no tenga en memoria todas sus páginas
Si ejecutamos dos veces seguidas una aplicación, suele ocurrir que la segunda vez se abre más rápidamente que la primera. Esto se puede deber a:
a) La segunda vez no hace falta consultar la tabla de páginas para saber en qué posición del disco está la aplicación
b) La segunda vez puede accederse menos veces al disco porque habrá bloques que aún estarán disponibles en la caché del disco
c) La segunda vez el tiempo que se tarda en localizar los bloques necesarios(seek time) se puede reducir al haber aprendido el planificador del disco cuál es la secuencia óptima para realizar las operaciones de E/S sobre los ficheros que componen la aplicación
d) La mejora sólo se nota si la segunda vez que se abre la aplicación aún tenemos abierta laprimera
b)La segunda vez puede accederse menos veces al disco porque habrá bloques que aún estarán disponibles en la caché del disco
En gestión de la memoria, una diferencia entre una página y un marco es:
a) Las páginas se almacenan en memoria virtual, mientras que los marcos se almacenan en memoria física
b) Una página puede ser mayor que un marco, pero un marco nunca puede ser mayor que una página
c) Los fallos de la página hacen que se active el sistema operativo, mientras que los fallos de marco los resuelve el propio proceso
d) Un proceso puede tener más páginas que marcos asignados
d)Un proceso puede tener más páginas que marcos asignados
En un sistema con memoria virtual, cuando una página es elegida como víctima, guardada en disco por el paginador y su marco asignado a otro proceso, al volver a ser invocada:
a) Se producirá un fallo de página y se reubicará en algún marco de la memoria perteneciente a otro proceso
b) Se producirá un fallo de página y se reubicará en el mismo marco que ocupaba previamente
c) Se producirá un fallo de página y se reubicará en el marco que ocupe otra página víctima
d) No se producirá ningún fallo de página ya que la página sigue en memoria
c)Se producirá un fallo de página y se reubicará en el marco que ocupe otra página víctima
La tabla de páginas de un determinado proceso indica que la página 2 tiene asociado el marco 5. El tamaño de página es de 2 KiB. ¿Cuál es la dirección física asociada a la dirección virtual 4748?
a) 5221024+652 = 21132
b) 521024+1676 = 12940
c) 521024+652 = 10892
d) 22*1024+652 = 4748
c)521024+652 = 10892
¿Qué sistema de gestión de memoria está libre de la fragmentación interna?
a) La paginación por demanda
b) La segmentación pura
c) La segmentación paginada
d) Todos los sistemas de gestión de memoria sufren de fragmentación interna
b)La segmentación pura
¿Cuál de estas técnicas de gestión de memoria no padece fragmentación interna?
a) Paginación
b) Segmentación paginada
c) Asignación contigua
d) Todas las técnicas de gestión de memoria anteriores padecen fragmentación interna
c)Asignación contigua
La ventaja de usar tablas de página multinivel es que:
a) Es posiblereducir el espacio en memoria destinado a almacenar las tablasde páginas de los procesos
b) Gracias a ello se puede utilizar la técnica de segmentación-paginada
c) El tiempo de acceso a memoria se reduce al disponer de una tabla índice pequeña que indica dóndeestá el trozo de la tabla de páginas que se va a usar
d) Gracias a ello dos o más procesos pueden compartir memoria
Es posible reducir el espacio en memoria destinado a almacenar las tablas de páginas de los procesos