{"id":3640,"date":"2026-07-18T14:06:33","date_gmt":"2026-07-18T12:06:33","guid":{"rendered":"https:\/\/rootmail.it\/courses\/lpic-1-exam-101-010-160-corso-completo-in-italiano\/lessons\/103-6-modificare-la-priorita-di-esecuzione-dei-processi\/"},"modified":"2026-07-20T21:58:08","modified_gmt":"2026-07-20T19:58:08","slug":"103-6-modificare-la-priorita-di-esecuzione-dei-processi","status":"publish","type":"lesson","link":"https:\/\/rootmail.it\/en\/courses\/lpic-1-exam-1-101-500-corso-completo-in-italiano\/lessons\/103-6-modificare-la-priorita-di-esecuzione-dei-processi\/","title":{"rendered":"103.6 Modificare la priorit\u00e0 di esecuzione dei processi"},"content":{"rendered":"<h2>103.6 Modificare la priorit\u00e0 di esecuzione dei processi<\/h2>\n<p>In un sistema Linux possono essere eseguiti contemporaneamente decine o addirittura centinaia di processi. Per garantire un utilizzo efficiente della CPU, il kernel assegna a ciascun processo una determinata <strong>priorit\u00e0 di esecuzione<\/strong>, stabilendo quali processi debbano ricevere pi\u00f9 tempo di elaborazione e quali possano attendere.<\/p>\n<p>Sebbene il kernel gestisca automaticamente la pianificazione dei processi, un amministratore di sistema pu\u00f2 modificare la priorit\u00e0 di alcune applicazioni per migliorare le prestazioni complessive del sistema o favorire processi particolarmente importanti.<\/p>\n<p>In questa lezione imparerai a comprendere il concetto di <strong>nice value<\/strong>, utilizzare i comandi <code>nice<\/code> e <code>renice<\/code> e interpretare le priorit\u00e0 dei processi visualizzate dagli strumenti di monitoraggio.<\/p>\n<blockquote><p><strong>\ud83d\udca1 Exam Tip<\/strong> Per l&#8217;esame LPIC-1 \u00e8 fondamentale conoscere il significato del <strong>nice value<\/strong>, il suo intervallo di valori e l&#8217;utilizzo dei comandi <code>nice<\/code> e <code>renice<\/code> per modificare la priorit\u00e0 dei processi.<\/p><\/blockquote>\n<hr \/>\n<h2>\ud83c\udfaf Obiettivi della lezione<\/h2>\n<p>Al termine di questa lezione sarai in grado di:<\/p>\n<ul>\n<li>comprendere come Linux assegna la priorit\u00e0 ai processi;<\/li>\n<li>interpretare il valore <strong>NI (Nice)<\/strong> visualizzato dagli strumenti di monitoraggio;<\/li>\n<li>avviare un processo con una priorit\u00e0 diversa utilizzando <code>nice<\/code>;<\/li>\n<li>modificare la priorit\u00e0 di un processo gi\u00e0 in esecuzione mediante <code>renice<\/code>;<\/li>\n<li>applicare correttamente le priorit\u00e0 per ottimizzare il comportamento del sistema.<\/li>\n<\/ul>\n<hr \/>\n<h2>Argomenti trattati<\/h2>\n<ul>\n<li>Priorit\u00e0 dei processi e scheduling della CPU.<\/li>\n<li>Il concetto di <strong>nice value<\/strong>.<\/li>\n<li>Utilizzo del comando <code>nice<\/code>.<\/li>\n<li>Modifica della priorit\u00e0 con <code>renice<\/code>.<\/li>\n<li>Visualizzazione delle priorit\u00e0 tramite <code>ps<\/code> e <code>top<\/code>.<\/li>\n<li>Best practice per la gestione delle priorit\u00e0 dei processi.<\/li>\n<\/ul>\n<blockquote><p><strong>\u2328\ufe0f Provalo subito<\/strong><br \/>\nApri un terminale e avvia un semplice comando come <code>sleep 300<\/code>. Durante la lezione potrai osservare il suo valore <strong>NI<\/strong> con <code>ps<\/code> o <code>top<\/code> e sperimentare la modifica della priorit\u00e0 utilizzando <code>renice<\/code>.<\/p><\/blockquote>\n<h2>103.6.1 Comprendere le priorit\u00e0 dei processi<\/h2>\n<p>In un sistema Linux possono essere eseguiti contemporaneamente molti processi. Poich\u00e9 la CPU non pu\u00f2 eseguire tutti i processi nello stesso istante, il kernel utilizza uno <strong>scheduler<\/strong> per decidere quale processo debba essere eseguito e per quanto tempo.<\/p>\n<p>Uno dei fattori che influenzano questa decisione \u00e8 la <strong>priorit\u00e0 del processo<\/strong>, espressa attraverso il cosiddetto <strong>nice value<\/strong> (o semplicemente <strong>niceness<\/strong>).<\/p>\n<blockquote><p><strong>\ud83d\udca1 Exam Tip<\/strong> Per l&#8217;esame LPIC-1 \u00e8 fondamentale ricordare che il <strong>nice value<\/strong> pu\u00f2 assumere valori compresi tra <code>-20<\/code> e <code>19<\/code>. Pi\u00f9 basso \u00e8 il valore, maggiore sar\u00e0 la priorit\u00e0 del processo.<\/p><\/blockquote>\n<hr \/>\n<h3>Che cos&#8217;\u00e8 il Nice Value?<\/h3>\n<p>Il <strong>nice value<\/strong> rappresenta la &#8220;gentilezza&#8221; con cui un processo cede tempo di CPU agli altri processi.<\/p>\n<p>Un processo con un valore di nice elevato \u00e8 considerato pi\u00f9 &#8220;gentile&#8221; e lascia maggiore spazio agli altri processi. Al contrario, un valore basso indica che il processo ha una priorit\u00e0 maggiore e ricever\u00e0 pi\u00f9 tempo di CPU.<\/p>\n<p>L&#8217;intervallo dei valori \u00e8 il seguente:<\/p>\n<ul>\n<li><strong>-20<\/strong> \u2192 priorit\u00e0 pi\u00f9 alta;<\/li>\n<li><strong>0<\/strong> \u2192 valore predefinito per la maggior parte dei processi;<\/li>\n<li><strong>19<\/strong> \u2192 priorit\u00e0 pi\u00f9 bassa.<\/li>\n<\/ul>\n<hr \/>\n<h3>Come interpretare il Nice Value<\/h3>\n<p>La relazione tra valore di nice e priorit\u00e0 \u00e8 inversa.<\/p>\n<table>\n<thead>\n<tr>\n<th>Nice Value<\/th>\n<th>Priorit\u00e0<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>-20<\/code><\/td>\n<td>Massima priorit\u00e0.<\/td>\n<\/tr>\n<tr>\n<td><code>0<\/code><\/td>\n<td>Priorit\u00e0 normale (valore predefinito).<\/td>\n<\/tr>\n<tr>\n<td><code>19<\/code><\/td>\n<td>Minima priorit\u00e0.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>In altre parole:<\/p>\n<ul>\n<li>pi\u00f9 il valore \u00e8 <strong>basso<\/strong>, maggiore sar\u00e0 il tempo di CPU assegnato al processo;<\/li>\n<li>pi\u00f9 il valore \u00e8 <strong>alto<\/strong>, minore sar\u00e0 la priorit\u00e0 del processo.<\/li>\n<\/ul>\n<hr \/>\n<h3>Perch\u00e9 modificare la priorit\u00e0?<\/h3>\n<p>La modifica del nice value permette di ottimizzare l&#8217;utilizzo delle risorse del sistema.<\/p>\n<p>Ad esempio:<\/p>\n<ul>\n<li>un processo di backup pu\u00f2 essere eseguito con priorit\u00e0 bassa per non rallentare il sistema;<\/li>\n<li>un servizio critico pu\u00f2 beneficiare di una priorit\u00e0 pi\u00f9 elevata;<\/li>\n<li>operazioni molto pesanti possono essere rese meno invasive aumentando il loro valore di nice.<\/li>\n<\/ul>\n<p>Nella maggior parte dei casi, il kernel assegna automaticamente una priorit\u00e0 adeguata ai processi e non \u00e8 necessario intervenire manualmente.<\/p>\n<hr \/>\n<h3>Visualizzare il Nice Value<\/h3>\n<p>Il valore di nice pu\u00f2 essere visualizzato con il comando:<\/p>\n<pre><code>ps -o pid,ni,comm\r\n<\/code><\/pre>\n<p>oppure utilizzando:<\/p>\n<pre><code>top\r\n<\/code><\/pre>\n<p>Nel comando <code>top<\/code> la colonna <strong>NI<\/strong> indica il valore di nice associato a ciascun processo.<\/p>\n<blockquote><p><strong>\ud83d\udccc Da ricordare<\/strong> Solo l&#8217;utente <strong>root<\/strong> pu\u00f2 aumentare la priorit\u00e0 di un processo impostando valori di nice negativi. Un utente normale pu\u00f2 soltanto aumentare il valore di nice, riducendo quindi la priorit\u00e0 del proprio processo.<\/p><\/blockquote>\n<hr \/>\n<h3>Best Practice<\/h3>\n<p>Modifica la priorit\u00e0 di un processo solo quando esiste una reale necessit\u00e0. Un utilizzo improprio di valori molto bassi (alta priorit\u00e0) pu\u00f2 penalizzare gli altri processi del sistema e ridurne la reattivit\u00e0.<\/p>\n<hr \/>\n<h3>Riepilogo<\/h3>\n<ul>\n<li>Ogni processo possiede un <strong>nice value<\/strong> che influenza la sua priorit\u00e0 di esecuzione.<\/li>\n<li>Il valore varia da <code>-20<\/code> (priorit\u00e0 massima) a <code>19<\/code> (priorit\u00e0 minima).<\/li>\n<li>Il valore predefinito \u00e8 generalmente <code>0<\/code>.<\/li>\n<li>Il campo <strong>NI<\/strong> visualizzato da <code>ps<\/code> e <code>top<\/code> rappresenta il nice value del processo.<\/li>\n<li>Solo l&#8217;utente <strong>root<\/strong> pu\u00f2 assegnare valori di nice negativi.<\/li>\n<\/ul>\n<h2>103.6.2 Impostare la priorit\u00e0 con <code>nice<\/code><\/h2>\n<p>Il comando <code>nice<\/code> permette di avviare un nuovo processo assegnandogli un <strong>nice value<\/strong> diverso da quello predefinito. In questo modo \u00e8 possibile influenzare la priorit\u00e0 con cui il kernel pianificher\u00e0 l&#8217;esecuzione del processo.<\/p>\n<p>Il comando modifica la priorit\u00e0 solo al momento dell&#8217;avvio del programma. Per cambiare la priorit\u00e0 di un processo gi\u00e0 in esecuzione si utilizza invece il comando <code>renice<\/code>, che verr\u00e0 illustrato nella prossima sezione.<\/p>\n<blockquote><p><strong>\ud83d\udca1 Exam Tip<\/strong> Per l&#8217;esame LPIC-1 \u00e8 importante ricordare che <code>nice<\/code> modifica la priorit\u00e0 solo dei nuovi processi e che soltanto l&#8217;utente <strong>root<\/strong> pu\u00f2 assegnare valori di nice negativi.<\/p><\/blockquote>\n<hr \/>\n<h3>Avviare un processo con priorit\u00e0 ridotta<\/h3>\n<p>La sintassi generale \u00e8:<\/p>\n<pre><code>nice -n valore comando\r\n<\/code><\/pre>\n<p>Ad esempio:<\/p>\n<pre><code>nice -n 10 command_to_run\r\n<\/code><\/pre>\n<p>Il processo viene avviato con un <strong>nice value pari a 10<\/strong>, quindi con una priorit\u00e0 inferiore rispetto al valore predefinito (0).<\/p>\n<p>Questa configurazione \u00e8 ideale per attivit\u00e0 che possono essere eseguite senza influenzare le prestazioni del sistema, come:<\/p>\n<ul>\n<li>backup;<\/li>\n<li>compressione di file;<\/li>\n<li>elaborazioni batch;<\/li>\n<li>compilazioni non urgenti.<\/li>\n<\/ul>\n<hr \/>\n<h3>Avviare un processo con priorit\u00e0 elevata<\/h3>\n<p>Per aumentare la priorit\u00e0 \u00e8 possibile utilizzare un valore negativo.<\/p>\n<p>Ad esempio:<\/p>\n<pre><code>nice -n -10 command_to_run\r\n<\/code><\/pre>\n<p>oppure, in alcune implementazioni:<\/p>\n<pre><code>nice --10 command_to_run\r\n<\/code><\/pre>\n<p>Un valore di nice pari a <code>-10<\/code> assegna al processo una priorit\u00e0 superiore rispetto a quella normale.<\/p>\n<blockquote><p><strong>\u26a0\ufe0f Attenzione<\/strong> Solo l&#8217;utente <strong>root<\/strong> pu\u00f2 utilizzare valori di nice negativi. Un utente normale pu\u00f2 soltanto aumentare il valore di nice, riducendo quindi la priorit\u00e0 dei propri processi.<\/p><\/blockquote>\n<hr \/>\n<h3>Come influisce il Nice Value<\/h3>\n<table>\n<thead>\n<tr>\n<th>Comando<\/th>\n<th>Effetto<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>nice -n 10 comando<\/code><\/td>\n<td>Avvia il processo con priorit\u00e0 pi\u00f9 bassa.<\/td>\n<\/tr>\n<tr>\n<td><code>nice -n 0 comando<\/code><\/td>\n<td>Avvia il processo con priorit\u00e0 normale.<\/td>\n<\/tr>\n<tr>\n<td><code>nice -n -10 comando<\/code><\/td>\n<td>Avvia il processo con priorit\u00e0 pi\u00f9 alta (solo root).<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Ricorda che:<\/p>\n<ul>\n<li>un valore di nice <strong>pi\u00f9 alto<\/strong> significa <strong>priorit\u00e0 pi\u00f9 bassa<\/strong>;<\/li>\n<li>un valore di nice <strong>pi\u00f9 basso<\/strong> significa <strong>priorit\u00e0 pi\u00f9 alta<\/strong>.<\/li>\n<\/ul>\n<hr \/>\n<h3>Quando utilizzare <code>nice<\/code>?<\/h3>\n<p>Il comando \u00e8 particolarmente utile quando si desidera:<\/p>\n<ul>\n<li>ridurre l&#8217;impatto di processi molto pesanti;<\/li>\n<li>eseguire attivit\u00e0 in background senza rallentare il sistema;<\/li>\n<li>assegnare maggiore priorit\u00e0 a servizi critici (come utente root).<\/li>\n<\/ul>\n<p>Nella maggior parte dei casi non \u00e8 necessario modificare manualmente la priorit\u00e0 dei processi, poich\u00e9 il kernel Linux gestisce automaticamente la pianificazione della CPU.<\/p>\n<blockquote><p><strong>\ud83d\udccc Da ricordare<\/strong> Il comando <code>nice<\/code> influisce esclusivamente sui processi avviati con esso. Per modificare la priorit\u00e0 di un processo gi\u00e0 in esecuzione \u00e8 necessario utilizzare <code>renice<\/code>.<\/p><\/blockquote>\n<hr \/>\n<h3>Best Practice<\/h3>\n<p>Quando esegui operazioni molto lunghe o particolarmente pesanti, avviale con un valore di nice positivo, ad esempio <code>nice -n 10<\/code>. In questo modo il processo consumer\u00e0 meno tempo di CPU, lasciando il sistema pi\u00f9 reattivo per gli altri utenti e servizi.<\/p>\n<hr \/>\n<h3>Riepilogo<\/h3>\n<ul>\n<li><code>nice<\/code> permette di avviare un nuovo processo con una priorit\u00e0 diversa da quella predefinita.<\/li>\n<li>Il valore di nice pu\u00f2 variare da <code>-20<\/code> a <code>19<\/code>.<\/li>\n<li>Valori positivi riducono la priorit\u00e0 del processo.<\/li>\n<li>Valori negativi aumentano la priorit\u00e0 e possono essere utilizzati solo dall&#8217;utente <strong>root<\/strong>.<\/li>\n<li>Per modificare la priorit\u00e0 di un processo gi\u00e0 avviato si utilizza <code>renice<\/code>.<\/li>\n<\/ul>\n<h2>103.6.3 Visualizzare la priorit\u00e0 dei processi<\/h2>\n<p>Dopo aver assegnato una priorit\u00e0 a un processo, \u00e8 spesso necessario verificarne il valore effettivo. Linux mette a disposizione diversi strumenti che consentono di visualizzare il <strong>nice value (NI)<\/strong> dei processi in esecuzione.<\/p>\n<p>I comandi pi\u00f9 utilizzati sono <code>ps<\/code> e <code>top<\/code>, gi\u00e0 introdotti nella lezione precedente dedicata al monitoraggio dei processi.<\/p>\n<blockquote><p><strong>\ud83d\udca1 Exam Tip<\/strong> Per l&#8217;esame LPIC-1 \u00e8 importante sapere come visualizzare il <strong>nice value (NI)<\/strong> utilizzando i comandi <code>ps<\/code> e <code>top<\/code>.<\/p><\/blockquote>\n<hr \/>\n<h3>Visualizzare il Nice Value con <code>ps<\/code><\/h3>\n<p>Il comando <code>ps<\/code> permette di personalizzare le informazioni visualizzate per ciascun processo.<\/p>\n<p>Ad esempio:<\/p>\n<pre><code>ps -eo pid,ni,cmd\r\n<\/code><\/pre>\n<p>L&#8217;output sar\u00e0 simile al seguente:<\/p>\n<pre><code>PID   NI  CMD\r\n1023   0  systemd\r\n2487  10  backup.sh\r\n3512 -10  database-service\r\n<\/code><\/pre>\n<p>Le colonne principali sono:<\/p>\n<ul>\n<li><strong>PID<\/strong> \u2192 identificatore del processo (Process ID);<\/li>\n<li><strong>NI<\/strong> \u2192 valore di nice;<\/li>\n<li><strong>CMD<\/strong> \u2192 comando che ha avviato il processo.<\/li>\n<\/ul>\n<p>Questo comando \u00e8 molto utile per ottenere una fotografia dettagliata delle priorit\u00e0 dei processi.<\/p>\n<hr \/>\n<h3>Visualizzare le priorit\u00e0 con <code>top<\/code><\/h3>\n<p>Il comando:<\/p>\n<pre><code>top\r\n<\/code><\/pre>\n<p>mostra in tempo reale tutti i processi attivi.<\/p>\n<p>Tra le colonne visualizzate compare anche:<\/p>\n<ul>\n<li><strong>NI<\/strong> \u2192 Nice Value del processo.<\/li>\n<\/ul>\n<p>Il valore viene aggiornato automaticamente insieme alle altre informazioni sul sistema.<\/p>\n<blockquote><p><strong>\ud83d\udccc Da ricordare<\/strong> La colonna <code>NI<\/code> indica il <strong>nice value<\/strong>, mentre la colonna <code>PR<\/code> rappresenta la priorit\u00e0 effettiva calcolata dal kernel. Per l&#8217;esame LPIC-1 \u00e8 generalmente sufficiente conoscere il significato del campo <code>NI<\/code>.<\/p><\/blockquote>\n<hr \/>\n<h3>Interpretare il valore NI<\/h3>\n<table>\n<thead>\n<tr>\n<th>Valore NI<\/th>\n<th>Significato<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>-20<\/code><\/td>\n<td>Priorit\u00e0 massima.<\/td>\n<\/tr>\n<tr>\n<td><code>0<\/code><\/td>\n<td>Priorit\u00e0 normale (predefinita).<\/td>\n<\/tr>\n<tr>\n<td><code>19<\/code><\/td>\n<td>Priorit\u00e0 minima.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Ricorda sempre che:<\/p>\n<ul>\n<li>un valore di <strong>NI basso<\/strong> indica una priorit\u00e0 pi\u00f9 alta;<\/li>\n<li>un valore di <strong>NI alto<\/strong> indica una priorit\u00e0 pi\u00f9 bassa.<\/li>\n<\/ul>\n<hr \/>\n<h3>Quando verificare il Nice Value?<\/h3>\n<p>Controllare il valore di nice \u00e8 utile quando si desidera:<\/p>\n<ul>\n<li>verificare che un processo sia stato avviato con la priorit\u00e0 desiderata;<\/li>\n<li>analizzare le prestazioni del sistema;<\/li>\n<li>controllare gli effetti dei comandi <code>nice<\/code> e <code>renice<\/code>;<\/li>\n<li>individuare processi con priorit\u00e0 particolarmente elevate o ridotte.<\/li>\n<\/ul>\n<hr \/>\n<h3>Confronto tra <code>ps<\/code> e <code>top<\/code><\/h3>\n<table>\n<thead>\n<tr>\n<th>Comando<\/th>\n<th>Caratteristiche<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>ps<\/code><\/td>\n<td>Mostra una fotografia istantanea dei processi e dei relativi valori di nice.<\/td>\n<\/tr>\n<tr>\n<td><code>top<\/code><\/td>\n<td>Visualizza le priorit\u00e0 dei processi in tempo reale, aggiornando continuamente le informazioni.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h3>Best Practice<\/h3>\n<p>Dopo aver modificato la priorit\u00e0 di un processo con <code>nice<\/code> o <code>renice<\/code>, verifica sempre il risultato utilizzando <code>ps<\/code> o <code>top<\/code>. In questo modo puoi confermare che il nuovo valore di <strong>NI<\/strong> sia stato applicato correttamente.<\/p>\n<hr \/>\n<h3>Riepilogo<\/h3>\n<ul>\n<li><code>ps -eo pid,ni,cmd<\/code> visualizza PID, valore di nice e comando associato a ciascun processo.<\/li>\n<li><code>top<\/code> mostra il valore di <strong>NI<\/strong> in tempo reale.<\/li>\n<li>La colonna <code>NI<\/code> rappresenta il <strong>nice value<\/strong>.<\/li>\n<li>Un valore di <code>NI<\/code> pi\u00f9 basso corrisponde a una priorit\u00e0 pi\u00f9 elevata.<\/li>\n<li>La verifica del nice value consente di controllare l&#8217;effetto dei comandi <code>nice<\/code> e <code>renice<\/code>.<\/li>\n<\/ul>\n<h2>103.6.4 Modificare la priorit\u00e0 di un processo con <code>renice<\/code><\/h2>\n<p>Mentre il comando <code>nice<\/code> permette di impostare la priorit\u00e0 di un processo al momento della sua esecuzione, il comando <code>renice<\/code> consente di modificare il <strong>nice value<\/strong> di un processo gi\u00e0 in esecuzione.<\/p>\n<p>Questa funzionalit\u00e0 \u00e8 particolarmente utile quando un&#8217;applicazione sta consumando troppe risorse oppure quando \u00e8 necessario aumentare o ridurre la priorit\u00e0 di un servizio senza riavviarlo.<\/p>\n<blockquote><p><strong>\ud83d\udca1 Exam Tip<\/strong> Per l&#8217;esame LPIC-1 \u00e8 importante conoscere il comando <code>renice<\/code>, sapere che agisce su processi gi\u00e0 avviati e ricordare che solo l&#8217;utente <strong>root<\/strong> pu\u00f2 assegnare valori di nice negativi.<\/p><\/blockquote>\n<hr \/>\n<h3>Modificare il Nice Value<\/h3>\n<p>La sintassi generale \u00e8:<\/p>\n<pre><code>renice valore -p PID\r\n<\/code><\/pre>\n<p>dove:<\/p>\n<ul>\n<li><strong>valore<\/strong> rappresenta il nuovo nice value;<\/li>\n<li><strong>-p<\/strong> indica che si sta specificando un PID.<\/li>\n<\/ul>\n<p>Ad esempio:<\/p>\n<pre><code>renice +5 -p 24561\r\n<\/code><\/pre>\n<p>Il processo con PID <code>24561<\/code> verr\u00e0 impostato con un <strong>nice value pari a 5<\/strong>, riducendone la priorit\u00e0.<\/p>\n<p>Per aumentare la priorit\u00e0 (solo come utente root):<\/p>\n<pre><code>renice -5 -p 24561\r\n<\/code><\/pre>\n<p>In questo caso il processo ricever\u00e0 un <strong>nice value pari a -5<\/strong>, aumentando la quantit\u00e0 di tempo CPU che il kernel potr\u00e0 assegnargli.<\/p>\n<blockquote><p><strong>\ud83d\udccc Attenzione<\/strong> Il valore specificato con <code>renice<\/code> rappresenta il <strong>nuovo nice value<\/strong>, non una variazione rispetto a quello attuale.<\/p><\/blockquote>\n<hr \/>\n<h3>Verificare la modifica<\/h3>\n<p>Dopo aver utilizzato <code>renice<\/code>, \u00e8 possibile verificare il nuovo valore con:<\/p>\n<pre><code>ps -o pid,ni,cmd -p 24561\r\n<\/code><\/pre>\n<p>oppure monitorando il processo con:<\/p>\n<pre><code>top\r\n<\/code><\/pre>\n<p>La colonna <code>NI<\/code> mostrer\u00e0 il nuovo valore di nice.<\/p>\n<hr \/>\n<h3>Chi pu\u00f2 utilizzare <code>renice<\/code>?<\/h3>\n<p>Le autorizzazioni seguono le stesse regole del comando <code>nice<\/code>.<\/p>\n<ul>\n<li>Un utente normale pu\u00f2 aumentare il valore di nice dei propri processi, diminuendone la priorit\u00e0.<\/li>\n<li>Solo l&#8217;utente <strong>root<\/strong> pu\u00f2 assegnare valori di nice negativi, aumentando la priorit\u00e0 di un processo.<\/li>\n<\/ul>\n<p>Questa limitazione evita che utenti non privilegiati possano monopolizzare le risorse del sistema.<\/p>\n<hr \/>\n<h3><code>nice<\/code> e <code>renice<\/code> a confronto<\/h3>\n<table>\n<thead>\n<tr>\n<th>Comando<\/th>\n<th>Quando si utilizza<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>nice<\/code><\/td>\n<td>Per avviare un nuovo processo con una priorit\u00e0 specifica.<\/td>\n<\/tr>\n<tr>\n<td><code>renice<\/code><\/td>\n<td>Per modificare la priorit\u00e0 di un processo gi\u00e0 in esecuzione.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h3>Quando utilizzare <code>renice<\/code>?<\/h3>\n<p>Il comando \u00e8 particolarmente utile quando:<\/p>\n<ul>\n<li>un processo sta consumando troppa CPU;<\/li>\n<li>\u00e8 necessario ridurre l&#8217;impatto di un&#8217;applicazione in esecuzione;<\/li>\n<li>si desidera aumentare la priorit\u00e0 di un servizio critico senza riavviarlo.<\/li>\n<\/ul>\n<blockquote><p><strong>\ud83d\udccc Da ricordare<\/strong> <code>nice<\/code> agisce prima dell&#8217;avvio del processo, mentre <code>renice<\/code> modifica la priorit\u00e0 di un processo gi\u00e0 esistente.<\/p><\/blockquote>\n<hr \/>\n<h3>Best Practice<\/h3>\n<p>Prima di modificare la priorit\u00e0 di un processo, verifica il suo comportamento utilizzando <code>top<\/code> o <code>ps<\/code>. Riduci la priorit\u00e0 dei processi che consumano molte risorse e aumenta la priorit\u00e0 solo quando strettamente necessario, evitando di penalizzare il resto del sistema.<\/p>\n<hr \/>\n<h3>Riepilogo<\/h3>\n<ul>\n<li><code>renice<\/code> modifica il nice value di un processo gi\u00e0 in esecuzione.<\/li>\n<li>Il parametro <code>-p<\/code> permette di specificare il PID del processo.<\/li>\n<li>Un valore di nice pi\u00f9 alto riduce la priorit\u00e0 del processo.<\/li>\n<li>Un valore di nice negativo aumenta la priorit\u00e0 ed \u00e8 riservato all&#8217;utente <strong>root<\/strong>.<\/li>\n<li>Dopo la modifica \u00e8 possibile verificare il nuovo valore mediante <code>ps<\/code> o <code>top<\/code>.<\/li>\n<\/ul>\n<h2>\ud83d\udcda Riepilogo della lezione<\/h2>\n<p>In questa lezione hai imparato come Linux assegna la priorit\u00e0 di esecuzione ai processi attraverso il <strong>nice value<\/strong>. Hai scoperto come influenzare lo scheduler del sistema avviando nuovi processi con una priorit\u00e0 personalizzata oppure modificando quella di processi gi\u00e0 in esecuzione.<\/p>\n<p>Hai inoltre imparato a visualizzare il valore di <strong>NI (Nice)<\/strong> mediante gli strumenti di monitoraggio e a scegliere quando sia opportuno modificare la priorit\u00e0 di un processo.<\/p>\n<h3>Concetti principali<\/h3>\n<ul>\n<li>Hai compreso il significato del <strong>nice value<\/strong> e il suo intervallo di valori, da <code>-20<\/code> a <code>19<\/code>.<\/li>\n<li>Hai imparato che un valore di nice pi\u00f9 basso corrisponde a una priorit\u00e0 maggiore.<\/li>\n<li>Hai utilizzato il comando <code>nice<\/code> per avviare nuovi processi con una priorit\u00e0 diversa da quella predefinita.<\/li>\n<li>Hai scoperto come modificare la priorit\u00e0 di un processo gi\u00e0 in esecuzione mediante <code>renice<\/code>.<\/li>\n<li>Hai imparato a verificare il valore di <strong>NI<\/strong> utilizzando <code>ps<\/code> e <code>top<\/code>.<\/li>\n<li>Hai compreso quando \u00e8 opportuno aumentare o diminuire la priorit\u00e0 di un processo.<\/li>\n<\/ul>\n<blockquote><p><strong>\ud83c\udfaf Obiettivo raggiunto<\/strong> Al termine di questa lezione sei in grado di controllare la priorit\u00e0 di esecuzione dei processi Linux, ottimizzando l&#8217;utilizzo della CPU mediante i comandi <code>nice<\/code> e <code>renice<\/code>.<\/p><\/blockquote>\n<h3>Comandi da ricordare<\/h3>\n<table>\n<thead>\n<tr>\n<th>Comando<\/th>\n<th>Descrizione<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>nice -n valore comando<\/code><\/td>\n<td>Avvia un nuovo processo con un valore di nice specificato.<\/td>\n<\/tr>\n<tr>\n<td><code>renice valore -p PID<\/code><\/td>\n<td>Modifica il nice value di un processo gi\u00e0 in esecuzione.<\/td>\n<\/tr>\n<tr>\n<td><code>ps -eo pid,ni,cmd<\/code><\/td>\n<td>Visualizza PID, valore di nice e comando associato ai processi.<\/td>\n<\/tr>\n<tr>\n<td><code>top<\/code><\/td>\n<td>Mostra in tempo reale la colonna <code>NI<\/code> dei processi.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Valori del Nice Value<\/h3>\n<table>\n<thead>\n<tr>\n<th>Nice Value<\/th>\n<th>Priorit\u00e0<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>-20<\/code><\/td>\n<td>Priorit\u00e0 massima (solo root).<\/td>\n<\/tr>\n<tr>\n<td><code>0<\/code><\/td>\n<td>Priorit\u00e0 predefinita.<\/td>\n<\/tr>\n<tr>\n<td><code>19<\/code><\/td>\n<td>Priorit\u00e0 minima.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<blockquote><p><strong>\ud83d\udca1 Preparazione all&#8217;esame LPIC-1<\/strong> Prima di proseguire assicurati di ricordare che il <strong>nice value<\/strong> varia da <code>-20<\/code> a <code>19<\/code>, che <code>nice<\/code> viene utilizzato per avviare nuovi processi con una priorit\u00e0 personalizzata e che <code>renice<\/code> modifica la priorit\u00e0 di processi gi\u00e0 in esecuzione. Ricorda inoltre che solo l&#8217;utente <strong>root<\/strong> pu\u00f2 assegnare valori di nice negativi.<\/p><\/blockquote>\n<hr \/>\n<h2>\u27a1\ufe0f Prossima lezione<\/h2>\n<p>Nella prossima lezione (<strong>103.7 Ricercare testo nei file utilizzando le espressioni regolari<\/strong>) scoprirai come individuare rapidamente informazioni all&#8217;interno dei file di testo utilizzando <strong>grep<\/strong> e le <strong>espressioni regolari<\/strong>. Imparerai a costruire pattern di ricerca efficaci, indispensabili per l&#8217;amministrazione di sistemi Linux e per superare l&#8217;esame LPIC-1.<\/p>\n<blockquote><p><strong>\ud83d\udcd6 Materiale di approfondimento<\/strong> Consulta il PDF allegato alla lezione per esercitarti con laboratori guidati, scenari realistici e quiz di autovalutazione.<\/p><\/blockquote>\n","protected":false},"comment_status":"open","ping_status":"closed","template":"","class_list":["post-3640","lesson","type-lesson","status-publish","has-post-thumbnail","hentry"],"uagb_featured_image_src":[],"uagb_author_info":{"display_name":"Rootmail Academy","author_link":"https:\/\/rootmail.it\/en\/author\/"},"uagb_comment_info":0,"uagb_excerpt":"103.6 Modificare la priorit\u00e0 di esecuzione dei processi In un sistema Linux possono essere eseguiti contemporaneamente decine o addirittura centinaia di processi. Per garantire un utilizzo efficiente della CPU, il kernel assegna a ciascun processo una determinata priorit\u00e0 di esecuzione, stabilendo quali processi debbano ricevere pi\u00f9 tempo di elaborazione e quali possano attendere. Sebbene il&hellip;","_links":{"self":[{"href":"https:\/\/rootmail.it\/en\/wp-json\/wp\/v2\/lesson\/3640","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rootmail.it\/en\/wp-json\/wp\/v2\/lesson"}],"about":[{"href":"https:\/\/rootmail.it\/en\/wp-json\/wp\/v2\/types\/lesson"}],"replies":[{"embeddable":true,"href":"https:\/\/rootmail.it\/en\/wp-json\/wp\/v2\/comments?post=3640"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rootmail.it\/en\/wp-json\/wp\/v2\/media\/3678"}],"wp:attachment":[{"href":"https:\/\/rootmail.it\/en\/wp-json\/wp\/v2\/media?parent=3640"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}