|
¿Alguna vez soñaste con ejecutar un comando desde el terminal, limitando la cantidad de recursos asignados a ese comando?
Bueno, la solución presentada aquà puede ayudarte a seguir trabajando normalmente incluso instantes después de ejecutar trabajos que usualmente resultan «muy pesados» para tu hardware y que generalmente «cuelgan» el sistema. |
Procesador (CPU)
El comando nice 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 20 , siendo -20 la mayor prioridad y 20 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 -nCOMANDO
Asà pues, si quisiéramos ejecutar un proceso con prioridad 10 harÃamos lo siguiente:
nice -n10 /usr/bin/convert archivo.gif archivo.jpg
Disco rÃgido
Similar a nice es ionice, con la diferencia de que éste último limita el acceso al disco rÃgido.
Un ejemplo de su utilización serÃa el siguiente:
ionice -c2 -n7 /usr/bin/convert archivo.gif archivo.jpg
-c2 es «mejor esfuerzo», y -n7 es la menor prioridad dentro del «mejor esfuerzo». De este modo, este comando tendrá una prioridad menor dentro de la cola de E/S (entrada/salida) que el resto de las tareas en ejecución.
ionice -c3 /usr/bin/convert archivo.gif archivo.jpg
-c3 (no hace falta aclarar un nivel de prioridad) significa «sólo inactivo». Aquellos trabajos que tengan asignados -c3 sólo se ejecutarán cuando el disco esté inactivo, lo que  significará que la actividad no tendrá impacto alguno en la ejecución del resto de las tareas pero que tardará mucho más en ejecutarse ella misma.