Final Agosto 2017 (Sistemas Operativos)

De Cuba-Wiki

El tiempo era 2hs y media. Los ejercicios se calificaban con Bien, Mal, Regular. Se aprobaba con 4 ejercicios Bien y a lo sumo 1 Mal.

Procesos

- ¿Qué es y para qué sirve una System Call? Explicar los pasos involucrados por hardware y software. Ejemplificar.

- ¿Qué son las funciones reentrantes y cuál es su relación con los threads?

Memoria

- Describa de qué manera el Sistema Operativo protege el espacio de memoria de un proceso.

- ¿Que es Thrashing y como se puede solucionar sin agregar hardware?

Scheduling

- ¿Qué desafíos enfrentan los algoritmos de scheduling para sistemas con varios procesadores?

- ¿Qué es el problema de inversión de prioridades y qué schedulers afecta?

Seguridad

- ¿Para qué sirve setuid y cuales son sus riesgos ?

- Explicar DAC y comparar DAC en unix y windows.

Filesystems

-Qué es el superbloque en ext2 y que pasa si se pierde su información?

- Cuál es la diferencia a nivel de operaciones, de cuando se hace ls y ls-l

Sistemas distribuidos

- Un algoritmo de commit distribuido funciona de la siguiente manera: opera sobre una red donde los paquetes pueden perderse o demorarse, y cuando un nodo quiere escribir sobre cierto archivo que está replicado en todos los nodos, envía un pedido de escritura. Si recibe confirmación de todos los nodos, escribe y le notifica a los demás que pueden hacer lo propio. Alguien nota que este algoritmo puede fallar si los nodos se caen entre la escritura y la notificación y propone para solucionarlo el envío de mensajes de confirmación de parte de los nodos. ¿Este algoritmo resuelve el problema? Justifique.