Problemas
Fundamentos del Software
Fundamentos del Software
Relación de Problemas 2. Introducción a los Sistemas Operativos
1. Dado un proceso en un SO con su información de contexto, de datos y de código según se muestra en la
figura y que ya ha sido atendido en un 50% y le resta la otra mitad para finalizar su ejecución. Con la idea de
optimizar el espacio de memoria para queel SO pudiera disponer de un mayor número de procesos en ésta,
¿podría reducirse el espacio que ocupa en memoria en alguna de las siguientes instancias?
(a) La lista de procesos.
(b) Información del contexto del proceso.
(c) Tamaño de los datos.
(d) Tamaño del código.
2. ¿Por qué cuando un proceso está en modo “ejecutándose” y pretende acceder a una dirección de memoria
fuera del área asignada,se informa de que se ha producido un error en la ejecución? ¿Quién informa de ello?
Razone la respuesta.
3. ¿Tiene sentido un modelo de 5 estados de los procesos en un SO monousuario? Razone la respuesta.
4. Dado un proceso que está en modo “ejecutándose” y pretende acceder a una dirección de memoria fuera del
área asignada, lo cual sería un error en la ejecución, ¿a qué modo pasaría dicho proceso?Razone la respuesta.
(a) Bloqueado.
(b) No cambia de modo.
(c) Finalizado.
(d) Preparado.
5. Un planificador de procesos tiene una tarea concreta dentro de un SO multiprogramado. ¿Tiene sentido
disponer de un planificador de procesos en un SO monoprogramado? Razone la respuesta.
6. Dado un SO multiprogramado, ¿bajo qué circunstancias se podría prescindir del planificador de procesos?
Razone larespuesta.
7. Diga cuales de las siguientes operaciones pueden realizarse únicamente en modo supervisor, o modo kernel:
a) Consultar la hora del sistema.
b) Cambiar la fecha del sistema.
c) Leer una pista/sector de un disco magnético.
d) Generar una interrupción software.
e) Generar una interrupción.
f) Modificar la dirección de un vector de la tabla de vectores de interrupción.
g) Deshabilitar lasinterrupciones.
8. En el caso de un ordenador que se vaya a usar únicamente para un único usuario, ¿qué interés puede tener la
existencia de los modos de funcionamiento supervisor/usuario?
9. Cuestiones sobre procesos, y asignación de CPU:
a) ¿Es necesario que lo último que haga todo proceso antes de finalizar sea una llamada al sistema para
finalizar? ¿Sigue siendo esto cierto en sistemasmonoprogramados?
b) Cuando el controlador de un dispositivo produce una interrupción ¿se produce necesariamente un cambio
de contexto?, ¿y cuando se produce una llamada al sistema?
c) Cuando un proceso se bloquea, ¿deberá encargarse él directamente de cambiar el valor de su estado en el
descriptor de proceso o PCB?
d) Sea un proceso que cambia de Ejecutándose a Bloqueado, ¿puede este cambio provocar uncambio de
estado en otros procesos? Si es así, ¿en qué casos?
e) Idem para el cambio de estado Bloqueado a Ejecutable.
10. En los primeros ordenadores, cada byte de datos leído o escrito, era manejado directamente por la CPU (es
decir, no existía DMA - Acceso Directo a Memoria). ¿Qué implicaciones tenía esta organización para la
multiprogramación?
11. ¿Por qué no es el intérprete de órdenes (shell)parte del propio sistema operativo? ¿Qué ventajas aporta el
no serlo?
1º Grado en Ingeniería Informática
1
Relación de problemas nº2
Fundamentos del Software
12. Para cada una de las llamadas al sistema siguientes, especificar y explicar si su procesamiento por el sistema
operativo implica un cambio de contexto:
a) Crear un proceso.
b) Abortar un proceso, es decir, terminarlo forzosamente.c) Suspender o bloquear un proceso.
d) Reanudar un proceso (inverso al caso anterior).
e) Modificar la prioridad de un proceso.
13. ¿Tiene sentido mantener ordenada por prioridades la cola de procesos bloqueados? Si lo tuviera, ¿en qué
casos sería útil hacerlo?
14. ¿Por qué se utilizan potencias de dos para los tamaños de página, número de páginas en el espacio lógico de
un proceso, y números de...
Regístrate para leer el documento completo.