Asignar prioridad de CPU a procesos en Linux con nice

El comando nice en Linux nos permite modificar la prioridad de un proceso frente al resto dentro del sistema. El kernel Linux es el encargado de planificar y asignar tiempo de CPU a cada uno de los procesos que corren en el sistema. El rango de asignación de prioridad disponible es de -20 a 19 , siendo -20 la mayor prioridad y 19 la menor. Gracias a nice podemos asegurarnos que en momentos de usos elevados de CPU los procesos adecuados reciban el mayor % de la misma.

La sintaxis del comando nice es la siguiente:

# nice -n<PRIORIDAD> COMANDO

Así pues, si quisiéramos ejecutar un proceso con la mayor prioridad disponible (en este caso el script prueba.pl) haríamos lo siguiente:

# nice -n-20 ./prueba.pl

Nota: es necesario ser superusuario para poder utilizar el comando nice

Ejecutando el comando ps observaremos como efectivamente la prioridad ha sido asignada correctamente:

# ps al
F   UID   PID  PPID PRI  NI    VSZ   RSS WCHAN  STAT TTY        TIME COMMAND

4     0  4204  3985   0 -20   1872   504 n_tty_ S<+  pts/0      0:00 /bin/sh ./prueba.pl

Nota: hay que pasar el parámetro l para visualizar la columna de nice.

Si en cambio quisieramos que tuviera la mínima prioridad pues haríamos todo lo contrario:

# nice -n20 ./prueba.pl

Si ejecutamos el comando nice sin parámetros nos indicará el valor asignado actualmente para nice:

# nice
0

2 comentarios en “Asignar prioridad de CPU a procesos en Linux con nice

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *