Come cambiare la priorità del processo in Linux con nice and renice

Linux ti consente di eseguire molti processi su una macchina senza perdere un colpo. A volte, un processo intenso può rallentare il sistema. Non sarebbe fantastico se ci fosse un modo in cui potresti in qualche modo metterlo nel dimenticatoio quando continui con altre attività? Puoi, con un’utilità chiamata nice.

Giocare bene con i processi

Nice è un’utilità integrata nei sistemi Linux e Unix che può ridurre la priorità della CPU di un processo. Questa utility è un artefatto dell’era in cui Unix girava su minicomputer e mainframe multiutente, ma è ancora utile oggi in esecuzione su desktop per utente singolo.

Potresti giocare a un gioco e riscontrare un ritardo a causa di un processo intenso che sai richiederà molto tempo per ottenere l’output, come un client torrent . Riassegnalo allo sfondo e continua a giocare.

Nice è un programma autonomo o integrato nella shell. Per capire qual è il caso sul tuo sistema, digita:

which nice

Su Ubuntu, la versione di nice installata è la versione GNU .

Nice utilizza il concetto di “bel numero”, che è la priorità del processo di qualsiasi processo. Nella versione GNU, varia da 19 a -20. I numeri negativi danno più priorità al processo, mentre i numeri positivi danno meno. Puoi vedere questo bel numero come la colonna NI in utilità come top o htop .

Per eseguire un processo con priorità inferiore, utilizzare questo comando:

nice processname

Sostituisci il nome del processo con il processo che desideri eseguire. Per impostazione predefinita, nice assegnerà il numero nice di 10. Qualsiasi processo avviato normalmente sarà impostato su 0.

Se vuoi un numero specifico, in questo caso, la priorità minima assoluta, usa l’opzione -n con il bel numero che desideri:

nice -n 19 processname

Modifica della priorità del processo con renice

Ora puoi avviare comandi con una priorità ridotta, ma per quanto riguarda la modifica della priorità dei processi in esecuzione? Puoi farlo anche con un’altra utility, renice.

Avrai bisogno del PID, o ID processo, del processo che desideri modificare. Puoi trovarlo usando il comando ps , top o htop. Una volta trovato, devi solo alimentarlo al comando renice.

Per impostare un nuovo bel numero per il tuo PID, digita:

renice priority PID

… dove la priorità è il bel numero che vuoi usare.

Il flag -n cambia la priorità del processo dell’incremento che hai menzionato, positivo o negativo, quindi se avevi un processo che era a 10 e volevi cambiarlo in 8, digita:

sudo renice -n -2 PID

Solo il superutente può rinominare i processi che appartengono a un altro utente o aumentare la priorità di un processo. Puoi utilizzare l’ opzione -u seguito dal nome utente per regolare la priorità per qualsiasi utente:

renice priority -u username

Correlati: che cos’è un processo in Linux?

Ora puoi modificare le priorità del processo per ottenere le migliori prestazioni

Con nice e renice, puoi modificare la priorità di qualsiasi processo in Linux. Questo ti aiuterà sicuramente nei momenti in cui un processo pesante sta consumando una parte enorme delle risorse del tuo sistema. Inoltre, l’ottimizzazione delle prestazioni del sistema con strumenti di monitoraggio come Stacer può essere utile.