Actividad 12: Procesos II
per Victor Carceler
—
darrera modificació
2020-03-25T15:28:56+01:00
Utilice una máquina virtual para realizar la siguiente actividad.
- Compruebe el número de CPUs instaladas en su equipo a partir de:
- La información proporcionada por el fichero /proc/cpuinfo
- La información que proporciona el comando dmesg
- La información que proporciona el comando top
- La información que proporciona el monitor del entorno gráfico
- Lance un proceso consumecpu y observe la atención de CPU que el proceso obtiene. ¿En qué estado se encuentra la máquina (nivel de carga, reparto de tiempos entre ejecución, espera, nice...)? ¿Lance otro proceso consumecpu, qué ocurre?
- Genere un shell script llamado lanzaconsumidores <n> cuya función será lanzar la ejecución de <n> procesos consumecpu, que deberán seguir ejecutándose después de que la ejecución del script finalice.
- ¿Qué PPID tienen los procesos que lanzó el script?
- ¿El sistema reparte equitativamente el tiempo de CPU entre los procesos?
- Si cierra el shell (con el comando exit) y abre uno nuevo, ¿aún están ejecutándose los procesos consumecpu? Acabe con ellos.
- Lance 5 procesos consumecpu. Altere con renice el valor nice de uno de ellos. ¿Qué ocurre con el reparto de atención de la CPU? Haga que todos los procesos tengan el mismo valor de nice. ¿Vuelve a ser equitativo el reparto de CPU?
- Ahora que tiene tiene varios procesos con un valor de nice mayor que 0 (ceden el turno) intente cambiar el valor nice a -5 para esos procesos. ¿Es posible? Conviertase en administrador e inténtelo de nuevo.
- Utilice nice para abrir un nuevo shell Bash con nice 10. Desde ese terminal lance un consumecpu, ¿qué valor de nice tiene dicho proceso?
- Implemente el script bombalogica de manera que se llame a sí mismo y no termine nunca. En cada iteración, el programa deberá:
- Esperar 5 segundos
- Lanzar dos nuevas instancias de bombalogica
- Lanzar un nuevo consumecpu