Vous êtes sur la page 1sur 1

Tarea (Simulación)

Este programa, process-run.py, le permite ver cómo se procesa el proceso.

cambie a medida que se ejecutan los programas y use la CPU (por ejemplo, realice una
instrucción de adición) o realice I / O (por ejemplo, envíe una solicitud a un disco y espere a
que se complete). Consulte el archivo README para más detalles.

Preguntas

1. Ejecute process-run.py con los siguientes indicadores: -l 5: 100,5: 100. ¿Cuál debería ser la
utilización de la CPU (por ejemplo, el porcentaje de tiempo que la CPU está en uso?)

¿Por qué sabes esto? Usa las banderas -c y -p para ver si tenías razón.

2. Ahora ejecute con estas banderas: ./process-run.py -l 4: 100,1: 0. Estos indicadores


especifican un proceso con 4 instrucciones (todas para usar la CPU), y otro que simplemente
emite una E / S y espera a que se realice. ¿Cuánto tiempo se tarda en completar ambos
procesos? Usa -c y -p para averiguar si tenías razón.

3. Cambie el orden de los procesos: ./process-run.py -l 1: 0,4: 100.

¿Que pasa ahora? ¿Importa cambiar el orden? ¿Por qué? (Como siempre, usa -c y -p para ver si
tenías razón)

4. Ahora exploraremos algunas de las otras banderas. Un indicador importante es -S, que
determina cómo reacciona el sistema cuando un proceso emite una E / S. Con el indicador
establecido en SWITCH ON END, el sistema NO cambiará a otro proceso mientras uno esté
haciendo E / S, en lugar de esperar hasta que el proceso se complete por completo. ¿Qué
sucede cuando ejecuta los dos procesos siguientes (-l 1: 0,4: 100 -c -S-SWITCH ON END), uno
haciendo E / S y el otro haciendo trabajo de CPU?

5. Ahora, ejecute los mismos procesos, pero con el comportamiento de conmutación


establecido para cambiar a otro proceso cada vez que ESPERANDO I / O (-l 1: 0,4: 100 -c -S
SWITCH ON IO). ¿Que pasa ahora? Usa -c y -p para confirmar que tienes razón.

6. Otro comportamiento importante es qué hacer cuando se completa una E / S. Con -I IO RUN
TARDE, cuando se completa una E / S, el proceso que la emitió no necesariamente se ejecuta
de inmediato; más bien, lo que se estaba ejecutando en el momento sigue funcionando. ¿Qué
pasa cuando ejecutas esta combinación de procesos? (Ejecute ./process-run.py -l 3: 0,5: 100,5:
100,5: 100 -S SWITCH ON IO-I IO RUN LATER -C -p) ¿Se están utilizando los recursos del sistema
de manera efectiva?

7. Ahora ejecute los mismos procesos, pero con el conjunto -I IO RUN IMMEDIATE, que ejecuta
inmediatamente el proceso que emitió la E / S. ¿Cómo difiere este comportamiento? ¿Por qué
podría ser una buena idea ejecutar un proceso que acaba de completar una E / S?

8. Ahora ejecute con algunos procesos generados aleatoriamente: -s 1 -l 3: 50,3: 50 o -s 2 -l 3:


50,3: 50 o -s 3 -l 3: 50,3: 50. Vea si puede predecir cómo se desarrollará la traza. ¿Qué sucede
cuando usas la bandera -I IO RUN INMEDIATE vs. -I IO RUN LATER TARDE? ¿Qué sucede cuando
usa -S SWITCH ON IO vs. -S SWITCH ON END?

Vous aimerez peut-être aussi