fbpx Comando nice en Linux: Controlar Prioridad de Procesos | Certificação Linux

Comando nice en Linux: Cómo Modificar la Prioridad de Procesos

📅 01/01/2019 ⏱ 3 min ✍️ Uira Ribeiro
Linuxcomandos
Comando nice en Linux: Cómo Modificar la Prioridad de Procesos
Exam Pass App — mais de 7.000 questões LPI, offline, em 5 idiomas, disponível no Android e na App Store
Disponible en
Google Play
Disponible en
App Store

El comando nice en Linux ajusta el tiempo disponible de CPU de un proceso para mayor o menor prioridad.

En inglés la palabra "nice" significa "amable". Si el ajuste de prioridad para un proceso es un número positivo, significa que está siendo más amable con los otros programas al disminuir su prioridad.

Si el ajuste es un número negativo, significa que el programa está siendo menos amable, aumentando su prioridad de ejecución y dejando menos tiempo de CPU para los otros programas.

El ajuste de prioridad posible va del –20 (más prioridad / menos amable) hasta el 19 (más amable, menos prioridad).

Si no se pasa ningún valor de ajuste, el comando nice ajustará la prioridad a +10, lo que disminuye el tiempo de ejecución del proceso.

Por defecto todos los programas inician con prioridad cero. Solo el administrador root puede definir prioridades negativas (aumento de porción de CPU).

En este ejemplo el comando updatedb tiene menos prioridad de ejecución:

$ nice updatedb &

En este ejemplo el comando hoja_pago se ejecutará con mayor prioridad.

$ nice –n –10 folha_pagamento 

Para verificar la prioridad de los procesos en ejecución, se puede usar el comando ps. La columna NI muestra la prioridad:

$ ps -eo pid,ni,comm  PID   NI COMMAND    1    0 systemd    2    0 kthreadd    4  -20 kworker/0:0H    6  -20 mm_percpu_wq  ( ... )30018   0 sshd30019   0 bash

Algunos procesos del sistema tienen naturalmente prioridad máxima (-20).

El comando top también se puede usar para ver la prioridad de los procesos, en la columna NI:

Figura 54 - Top con columna NI resaltada

Comando renice en Linux

El comando renice ajusta la prioridad de ejecución de procesos en ejecución.

Por defecto, el comando renice recibe como parámetro el PID de un proceso determinado. El ajuste de prioridad es un número entero del –20 (mayor prioridad) hasta el +19 (ejecutar cualquier cosa antes de este proceso).

Las opciones más usuales son:

  • -p: Recibe un PID para alterar su prioridad.
  • -u: Recibe un nombre de usuario para alterar la prioridad de todos los procesos de este usuario en ejecución.
  • -g: Recibe el nombre de un grupo para alterar la prioridad de todos los procesos pertenecientes a este grupo.

En este ejemplo, el proceso con número PID 987, PID 32 y todos los procesos de los usuarios daemon y root van a tener mayor prioridad.

# renice -1 987 -u daemon root -p 32

Los usuarios comunes solo pueden alterar la prioridad de los procesos de los que son dueños, y solo para disminuir la prioridad (del -20 hasta +19). Una vez que el usuario común disminuye la prioridad, normalmente no puede volver a la prioridad anterior.

Solo el usuario root puede alterar la prioridad de cualquier proceso, aumentándola o disminuyéndola.
En este ejemplo el programa con el PID 30018 pasó de prioridad 0 a +2:

$ renice +2 3001830018 (process ID) com prioridade antiga 0, prioridade nova 2

Si un usuario común intenta aumentar la prioridad, no lo logra:

$ renice +1 30018renice: falha ao definir prioridade pra 30018 (process ID): Permission denied

Solo root puede aumentar la prioridad. En este ejemplo el comando sudo ejecuta renice como root:

$ sudo renice 0 3001830018 (process ID) com prioridade antiga 2, prioridade nova 0

Aprende mucho más sobre Linux en nuestro curso en línea. Puedes realizar la inscripción aquí. Si ya tienes una cuenta, o quieres crear una, simplemente ingresa o crea tu usuario aquí.

¿Te gustó? Comparte

 

Uira Ribeiro

Prof. Uirá Ribeiro

Chair do Board do Linux Professional Institute

Después de años viendo profesionales perder horas en tareas simples por no conocer las herramientas correctas de Linux, decidí enseñar.
Hoy soy autor de la mayoría de los Materiales de Aprendizaje oficiales de la LPI y mentor de más de 14,000 alumnos certificados.

Conoce mi historia completa →

Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.

Certificação Linux — a plataforma líder em certificações Linux no Brasil
WhatsApp