Sei sulla pagina 1di 4

Soluciones del examen de diciembre, curso 1997/98 Pregunta 1.

Algoritmo de planificacin de procesos


Cuando B > A > 0 el algoritmo es FIFO (primero en llegar primero en ser servido) Cuando A < B < 0 el algoritmo es LIFO (ltimo en llegar primero en ser servido)

Pregunta 2. Cuestiones sobre procesos y concurrencia


2.1. Qu caracterstica debe poseer un algoritmo de de planificacin de procesos para que pueda cambiar el estado de "ejecucin" al de "listo" de un proceso? Que sea apropiativo 2.2. Con qu finalidad se emplea la tcnica de envejecimiento en la planificacin de procesos? Se emplea en el contexto de la planificacin de procesos por prioridades, con el fn de evitar que un proceso de baja prioridad quede postergado indefinidamente (nunca se le cede el procesador) debido a que siempre hay procesos con una mayor prioridad. 2.3. Motivo por el que se evita la espera activa? Bsicamente, por razones de eficiencia. Una implementacin con espera activa provoca que el proceso en espera consuma ciclos de CPU que son improductivos, y que se podran aprovechar para ejecutar instrucciones de otros procesos.

Pregunta 3. Problema de operaciones con un fichero


Si un archivo posee 100 bloques, entonces el nmero de operaciones de E/S requeridas para: a) Aadir un bloque al principio: Asignacin contigua: 201 Asignacin encadenada: 1 b) Eliminar un bloque del final: Asignacin contigua: 0 Asignacin encadenada: 100

Pregunta 4. Cuestiones diversas


4.1. Conveniencia o necesidad de almacenar bloques contiguos con asignacin indexada. La asignacin de espacio indexada es una asignacin no contigua, y precisamente su ventaja es que no exige que los bloques de datos de un fichero se encuentren contiguos: por tanto no es necesario que lo estn. Sin embargo, en caso de que los bloques estuvieran contiguos, la latencia o el tiempo medio de acceso podran disminuir, dado que al realizar accesos secuenciales sobre un fichero, la cabeza del disco realizara menos movimientos que en el caso de que los bloques estuvieran dispersos por el disco. Como los accesos secuenciales son los ms frecuentes, es conveniente que los bloques estn contiguos. La ventaja, por tanto, es exclusivamente de rendimiento. 4.2. Diferencia entre interbloqueo y estado inseguro En el contexto del tratamiento del interbloqueo, el concepto de estado "inseguro" se utiliza en el Algoritmo del Banquero (tcnica de evita el interbloqueo mediante una asignacin cuidadosa de los recursos) para representar un estado en el que los procesos pueden pedir ms recursos (esto se conoce puesto que deben declarar sus necesidades mximas) de los que el sistema les puede asignar (ya sea por que estn disponibles o por que estn asignados a procesos que no estn en una estado de bloqueo indefinido); por tanto se trata de un estado a partir del cual se puede llegar a una situacin de interbloqueo y que no implica un estado de interbloqueo. En cambio, una situacin de interbloqueo es un estado "inseguro" en el que adems se cumplen cuatro condiciones (exclusin mutua, retencin y espera, no apropiacin y espera circular). 4.3. Por qu UNIX no es un sistema de tiempo real? Porque en un sistema de tiempo real estricto, se pueden especificar plazos de ejecucin de los procesos. Por la naturaleza de su sistema de planificacin de procesos, UNIX no puede garantizar el tiempo de finalizacin de ningn proceso. Tampoco el UNIX estndar tiene algoritmos de gestin de prioridades que garanticen que un proceso de alta prioridad no se vea bloqueado por procesos de baja prioridad.

Pregunta 5. Peticiones a un disco


Un disco de 200 pistas numeradas de 0 a 199, existe una nica cabeza que acaba de atender a una peticin en la pista 125 y est a punto de dirigirse a atender una peticin a la pista 143. Si en la cola existen estas peticiones: 86, 147, 91, 177, 94, 150, 102, 175, 130, entonces las peticiones se atenderan: SSTF: 125 - 130 - 143 - 147 - 150 - 175 - 177 - 102 - 94 - 91 - 86 SCAN: 125 - 130 - 143 - 147 - 150 - 175 - 177 - 199 - 102 - 94 - 91 - 86

Pregunta 6. Influencia del algoritmo en la tasa de fallos de pgina


Sin duda, barrer la matriz bidimensional por filas o por columnas influir en la tasa de fallos de pgina. En el supuesto de que la matriz se almacene por filas, el barrido por filas supondr accesos secuenciales a la memoria virtual. En cada iteracin, se accede a un elemento justo contiguo al anterior. Es fcil deducir que como mucho se producirn K fallos, siendo K el nmero de marcos que ocupa la matriz. En el caso de que se barra por columnas, los accesos a memoria seguirn un patrn ms disperso y provocarn ms fallos. Suponiendo un caso simple, en el que cada fila ocupe exactamente un marco de pgina, ocurrir que se accede a una pgina diferente en cada iteracin! En este supuesto, podra haber hasta NxN fallos de pgina (sern menos, dependiendo de los marcos disponibles en la memoria principal). En general, en cada iteracin de la variable i, se accede a un elemento que est NxS bytes ms all del anterior (donde S son los bytes que ocupa un elemento), as que el algoritmo va "saltando" por la memoria. El mismo razonamiento se puede aplicar si la matriz est almacenada por columnas, invirtindose los efectos (barrer por filas provocara ms fallos de pgina).

Pregunta 7. Tres mquinas, uso de cpu y memoria virtual

cpu mquina A mquina B mquina C 90% 10% 18%

intercambio 3% 80% 12%

En el caso de la mquina A, tenemos el procesador muy ocupado y el dispositivo de intercambio muy descargado de trabajo. La memoria principal parece suficiente para albergar las tareas en ejecucin, que tienen signo de ser intensivas en CPU. La memoria virtual est contribuyendo mnimamente al rendimiento. No parece razonable aumentar el grado de multiprogramacin, dado el elevado uso del procesador. Sera conveniente cambiar el procesador por otro ms rpido, o bien disponer de varios procesadores si la arquitectura lo permite- para acelerar las tareas. La mquina B muestra probablemente un escenario de hiperpaginacin. El procesador est poco usado, pero ocurren fallos de pgina continuamente. La memoria virtual no slo no est ayudando, sino que su gestin est provocando el ahogo del sistema. Si aumentamos el grado de multiprogramacin, lo que conseguiremos es agravar el problema. La mquina est pidiendo a gritos una ampliacin de memoria.

La mquina C est bastante descargada, tanto en CPU como en memoria. Esto no nos dice demasiado acerca de lo que est ocurriendo: puede ser que haya pocos procesos, o bien muchos, pero sometidos a frecuentes o largas esperas (ej. procesos interactivos). La memoria virtual parece contribuir al rendimiento del sistema, ya que de vez en cuando se hace intercambio con disco. El sistema no parece necesitar ningn hardware de apoyo, lo que hay parece ms que suficiente.

Pregunta 8. TEST

Pregunta 1 2 3 4 5 6 7 8 9 10

Opcin correcta a a b c b b c c b b

Potrebbero piacerti anche