I sistemi Linux possono eseguire molti processi (processi) contemporaneamente. Anche se la CPU ha più processori o core, il numero di processi di solito supera di gran lunga il numero di core disponibili. È compito del kernel di Linux distribuire i cicli di CPU disponibili ai processi attivi.
Usa Nice per ottenere le priorità dritte
Per impostazione predefinita, tutti i processi sono considerati ugualmente urgenti e vengono assegnati alla stessa quantità di tempo CPU. Per consentire all'utente di modificare l'importanza relativa dei processi, Linux associa un parametro di priorità a ogni lavoro che può essere impostato o modificato dall'utente. Il kernel Linux quindi riserva il tempo di CPU per ciascun processo in base al suo valore di priorità relativa.
Il parametro nice è usato per questo scopo. Varia da meno 20 a più 19 e può assumere solo valori interi. Un valore di meno 20 rappresenta il livello di priorità più alto, mentre 19 rappresenta il più basso. Il fatto che il livello di priorità più alto sia indicato dal numero più negativo è alquanto controintuitivo. Tuttavia, l'esecuzione su una priorità più bassa è considerata "migliore", perché consente ad altri processi di utilizzare una quota maggiore del tempo della CPU.
Come si gioca a Nizza
Utilizzando il comando:
simpaticoavvia un nuovo processo (lavoro) e assegna un valore (bello) prioritario allo stesso tempo. Per modificare la priorità di un processo già in esecuzione, utilizzare il comando:
reniceAd esempio, la seguente riga di comando avvia il processo "large-job", impostando il valore nice su 12:
nice -12 grande lavoro
Si noti che il trattino davanti al 12 non rappresenta un segno meno. Ha la solita funzione di contrassegnare un flag passato come argomento al comando nice.
Per impostare il valore piacevole su meno 12, aggiungi un altro trattino:
bello --12 grande lavoro
Ricorda che i valori più bassi corrispondono a una priorità più alta. Quindi, -12 ha una priorità più alta di 12. Il valore predefinito predefinito è 0. Gli utenti regolari possono impostare priorità più basse (valori positivi positivi). Per utilizzare priorità più elevate (valori positivi negativi), sono richiesti i privilegi di amministratore.
È possibile modificare la priorità di un lavoro che è già in esecuzione utilizzando renice. Per esempio:
renice 17 -p 1134
Questo cambia il buon valore del lavoro con l'id del processo da 1134 a 17. In questo caso, non viene utilizzato alcun trattino per l'opzione di comando quando si specifica il valore piacevole. Il seguente comando modifica il bel valore del processo da 1134 a -3:
renice -3 -p 1134
Per stampare un elenco di processi correnti, utilizzare il ps comando.