Académique Documents
Professionnel Documents
Culture Documents
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.
¿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?
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?