Sei sulla pagina 1di 5

Sistemas Operativos I

Planes 1997 y 2006 – Solución Examen Agosto 2013


Ingeniería en Informática
Fecha: 30/08/2013
Total: 100 puntos - Mínimo de aprobación: 60 puntos
Duración: 3 horas - sin material de consulta
Ejercicio 1 (40 puntos)
Indique la respuesta correcta. Solo hay una respuesta correcta, en caso de existir más de una
opción correcta, seleccionar la opción que las agrupa.
1. Un traductor:
a) Toma el control de la ejecución del código.
b) Genera un nuevo código en el mismo lenguaje que el original pero con instrucciones más
simples.
c) Traduce y ejecuta instrucción por instrucción.
d) Genera un nuevo código en un lenguaje diferente al original.
e) Ninguna de las anteriores.
2. Utilizando Memoria Virtual Paginada, el bit de presencia ubicado en cada entrada de la tabla
de páginas:
a) Indica si la página está alojada en memoria principal.
b) Indica que esa página es de solo lectura.
c) Indica si es necesario guardar o no esa página en memoria secundaria al realizar un
swapping.
d) Las opciones a) y b).
e) Ninguna de las anteriores.
3. Estados de un Proceso:
a) Los estados Listo y Ejecución son los dos estados posibles de un Programa en ejecución.
b) El estado Bloqueado es el estado inicial de un Proceso.
c) Un proceso está en estado Ejecución, si está esperando que se le asigne tiempo de CPU.
d) Un proceso está en estado Listo, si está esperando que se le asigne tiempo de CPU.
e) Ninguna de las anteriores.
4. Una máquina tiene un espacio de direcciones virtual de 32 bits direccionable por bytes. El
tamaño de página es de 8Kb. ¿Cuántas páginas de espacio de direcciones virtual existen?
19
a) 2 .
20
b) 2 .
21
c) 2 .
22
d) 2 .
e) Ninguna de las anteriores.
5. Para tener una solución adecuada a la exclusión mutua, los procesos deben cumplir:
a) Nunca dos procesos pueden encontrarse simultáneamente en sus secciones críticas.
b) No se hacen suposiciones acerca de las velocidades relativas de los procesos o del
número de CPU.
c) Ningún proceso suspendido fuera de la sección crítica debe bloquear a otros procesos.
d) Las opciones a), b) y c).
e) Ninguna de las anteriores.
6. En los hilos:
a) Es más rápido cambiar de un hilo a otro dentro del mismo proceso, que cambiar de un
proceso a otro.
b) Son independientes entre sí, e interactúan solo a través de mecanismos de comunicación
dados por el sistema operativo.
c) Es propio de cada hilo el contador de programa, el stack de ejecución y el estado de la CPU.
d) Las opciones a) y c).
e) Ninguna de las anteriores.

Este material es de uso exclusivo para los cursos impartidos por Universidad de la Empresa
1
2 Sistemas Operativos I – Solución Examen Agosto 2013

7. ¿Cuál de estos algoritmos asigna un determinado tiempo para la ejecución de cada proceso?:
a) SJF (Shortest Job First).
b) Algoritmo de expulsión anticipada.
c) Sistema Multicolas.
d) Mecanismo Round-Robing.
e) Ninguno de los anteriores.
8. Un archivo en un sistema de archivos:
a) Es una colección de tablas relacionadas.
b) Es una colección de datos agrupada con algún criterio.
c) Tiene nombre único.
d) Las opciones b) y c).
e) Ninguna de las anteriores.
9. Son beneficios de la virtualización:
a) Alta disponibilidad de los servicios ofrecidos a los clientes internos y externos.
b) Optimización del uso de CPU y memoria para los servidores virtuales.
c) Centralización en la administración a una consola Web.
d) Administración dinámica de recursos con aprovisionamiento de servidores mas rápido.
e) Todas las anteriores.
10. En un sistema distribuido:
a) Una aplicación se divide en tareas que son ejecutadas en diferentes ubicaciones
utilizando diferentes recursos.
b) Los programas ejecutan en arquitecturas homogéneas.
c) Una aplicación se divide en tareas que son ejecutadas al mismo tiempo.
d) La memoria es compartida a nivel de hardware.
e) Las opciones b) y d).

Ejercicio 2 (60 puntos)


Responda las siguientes preguntas:
1. Describa el diseño y los componentes de la máquina de Von Neumann.
Solución:
La máquina tenía cinco componentes o partes básicas: memoria, unidad artmético lógica,
unidad de control y dispositivo de entrada y salida. La memoria constaba de 4096 palabras,
cada una de las cuales contenía 40 bits que podían ser 0 o 1. Cada palabra contenía dos
instrucciones de 20 bits o bien un entero con signo de 40 bits. Ocho bits de cada instrucción
estaban dedicados a indicar el tipo de instrucción y 12 bits se dedicaban a especificar una de
las 4096 palabras de memoria. Dentro de la unidad de aritmética lógica había un registro interno
especial de 40 bits llamado acumulador. Una instrucción típica sumaba una palabra de la
memoria al acumulador o almacenaba el contenido del acumulador en memoria.

Este material es de uso exclusivo para los cursos impartidos por Universidad de la Empresa
2
Sistemas Operativos I – Solución Examen Agosto 2013 3

2. Describa cuando ocurre y cuales son las acciones que se realizan cuando se produce un fallo
de página.
Solución:
Ocurre cuando se referencia a una dirección virtual y ella no reside en la memoria real, se
presenta una interrupción llamada fallo de página o en inglés page-fault. El SO pone al proceso
en un estado bloqueado y emite un requerimiento para traer los trozos de código o datos que
necesita. El SO emite un requerimiento de I/O a disco. Mientras tanto otro proceso de la cola de
listos pasa a ejecución (el SO despacha a otro proceso de la cola de listos). Cuando el servicio
de I/O esta pronto, el proceso vuelve a la cola de listos.
3. ¿En qué organizaciones de memoria se aplican políticas de reemplazo de fragmentos?
Describir dos políticas de reemplazo de fragmentos.
Solución:
Se aplican en organizaciones de memoria no contigua como paginación y segmentación con
paginación. Cuando no hay marcos de páginas disponibles para un proceso, el sistema
operativo retira una página de un marco asignado a otro proceso para entregárselo al que lo
solicita según determinadas políticas de reemplazo. Dos de ellas son las siguientes:
• Least Recently Used (LRU):
o Selecciona la página que no ha sido referenciada durante más tiempo.
o Por el principio de localidad, la página seleccionada por LRU debiera ser aquella que es
menos probable de ser referenciada en el futuro cercano.
o La implementación perfecta de LRU requeriría que cada página tenga asociado el tiempo
de la ultima referencia, lo cual seria muy costoso.
o Una alternativa es mantener un stack de referencia a páginas y reemplazar la que está en
el fondo del stack.
• FIFO:
o Se reemplaza la pagina que lleva mas tiempo en memoria.
o Uno de los algoritmos mas simples de implementar.
o Pero cuidado, la página que recién salió puede necesitarse nuevamente (principio de
localidad).
o No tiene buen rendimiento respecto de los otros algoritmos de reemplazo.
4. ¿En qué consiste el área de investigación "Prevención de bloqueos o deadlocks"? Explicar
una implementación.
Solución:
• PREVENCIÓN DE BLOQUEOS: La estrategia consiste en anular alguna de las cuatro
condiciones necesarias para que se produzca un bloqueo.
• EXCLUSION MUTUA: No puede ser anulada porque existen recursos que deben ser usados
en modalidad exclusiva.
• USO Y ESPERA: La alternativa seria hacer que todos los procesos solicitaran todos los
recursos que habrán de utilizar antes de utilizarlos al momento de su ejecución lo cual seria
muy ineficiente.
• NO INTERRUPCION: Para anular esta condición cuando un proceso solicita un recurso y
este es negado el proceso deberá liberar sus recursos y solicitarlos nuevamente con los
recursos adicionales. Hay que tener en cuenta que hay recursos que no pueden ser
interrumpidos.
• ESPERA CIRCULAR: Consiste en que el sistema operativo numere en forma exclusiva los
recursos obligue a los procesos a solicitar recursos en forma ascendente. El problema de
esta implementación es que limita a la aplicación.

Este material es de uso exclusivo para los cursos impartidos por Universidad de la Empresa
3
4 Sistemas Operativos I – Solución Examen Agosto 2013

5. Mencionar las características de la Seguridad Informática. Explicar.


Solución:
• CONFIDENCIALIDAD (PRIVACIDAD): Requiere que sólo sujetos autorizados vean datos y
ejecuten procesos.
• INTEGRIDAD: Requiere que sólo sujetos autorizados puedan modificar código y datos, y
sólo en las formas autorizadas.
• DISPONIBILIDAD: Requiere que sujetos autorizados tengan acceso a la información en el
momento que sea necesario.
6. ¿Cuáles son las diferencias entre los sistemas paralelos y los sistemas distribuidos? y,
¿cuáles son las características comunes a ambos?.
Solución:
Las diferencias son las siguientes: Los sistemas paralelos dividen una aplicación en tareas que
son ejecutadas al mismo tiempo. Los sistemas distribuidos dividen una aplicación en tareas que
son ejecutadas en diferentes ubicaciones usando diferentes recursos.
Las características comunes son las siguientes: Múltiples procesadores. Los procesadores
están interconectados por alguna red. Múltiples procesos están en progreso al mismo tiempo y
cooperan unos con otros. El problema es dividido en partes y cada parte es ejecutada por un
procesador diferente.
7. ¿Qué información maneja el sistema operativo de un proceso? ¿Cómo la define?.
Solución:
Se crea para cada proceso una estructura que agrupa toda la información que el sistema
operativo necesita conocer respecto a un proceso particular. A esta estructura se la llama
Bloque de Control del Proceso (PCB, sus siglas en inglés). Información del PCB:
• Identificador del proceso (process identificator – PID, son sus siglas en inglés).
• Estado del proceso - ejemplo: listo, en espera, bloqueado.
• Contador de programa - dirección de la próxima instrucción a ejecutar.
• Valores de registros de CPU. Se utilizan en el cambio de contexto.
• Espacio de direcciones de memoria.
• Prioridad según el algoritmo de planificación de CPU.
• Lista de recursos asignados (incluyendo descriptores de archivos y puertos abiertos).
• Estadísticas del proceso.
• Datos del propietario (owner).
• Permisos asignados.
8. ¿Cómo se pueden organizar los archivos dentro de un sistema de archivos o filesystem?.
Solución:
Se pueden organizar con distintas estructuras: lista, árbol, grafo.
9. ¿Qué es la virtualización? Mencione tres aplicaciones de la virtualización.
Solución:
Es una tecnología de software que particiona un servidor físico con todos sus recursos de
hardware (CPU, RAM, disco duro y controlador de red) en múltiples entornos virtuales llamados
servidores virtuales. La virtualización permite que diferentes máquinas virtuales puedan utilizar
diversos sistemas operativos y múltiples aplicaciones en el mismo computador físico,cada una
de ellas teniendo acceso a los recursos que necesita, cuando los necesita.
Aplicaciones de la virtualización: Consolidación de los servidores, Ambientes de pruebas,
escritorios remotos.
Este material es de uso exclusivo para los cursos impartidos por Universidad de la Empresa
4
Sistemas Operativos I – Solución Examen Agosto 2013 5

10. ¿Qué es un hilo? Describa las características de los hilos. Indicar semejanzas y diferencias
con los procesos tradicionales.
Solución:
Un hilo de ejecución, es la unidad de procesamiento más pequeña que puede ser planificada
por un sistema operativo. Permite a una aplicación o proceso realizar varias tareas a la vez (en
forma concurrente).
Los distintos hilos de ejecución comparten una serie de recursos tales como el espacio de
memoria, los archivos abiertos, autenticación, etc. Esta técnica permite simplificar el diseño de
una aplicación que debe llevar a cabo distintas funciones simultáneamente.
Los hilos de ejecución que comparten los mismos recursos, sumados a estos recursos, son en
conjunto conocidos como un proceso. El hecho de que los hilos de ejecución de un mismo
proceso compartan los recursos hace que cualquiera de estos hilos pueda modificarlos. Es
propio de cada hilo el contador de programa, el stack o pila de ejecución y el estado de la CPU
(incluyendo los valores de los registros). El proceso sigue en ejecución mientras al menos uno
de sus hilos de ejecución siga activo. En el momento en el que todos los hilos de ejecución
finalizan, el proceso no existe mas y todos sus recursos son liberados.
Los hilos se distinguen de los tradicionales procesos en que los procesos son independientes
entre sí, e interactúan solo a través de mecanismos de comunicación dados por el sistema.
Generalmente muchos hilos comparten recursos de forma directa. En muchos de los sistemas
operativos que dan facilidades a los hilos, es más rápido cambiar de un hilo a otro dentro del
mismo proceso, que cambiar de un proceso a otro. Este característica se debe a que los hilos
comparten datos y espacios de direcciones, mientras que los procesos, al ser independientes,
no lo hacen.

Este material es de uso exclusivo para los cursos impartidos por Universidad de la Empresa
5

Potrebbero piacerti anche