LKN: Ricette per Configurare il Kernel: differenze tra le versioni

nessun oggetto della modifica
Nessun oggetto della modifica
Riga 4: Riga 4:


Il [[LKN:_Personalizzare_un_Kernel|capitolo precedente]] ci ha insegnato i meccanismi per la riconfigurazione del kernel; in questo capitolo arriva la parte interessante, in cui si possono trovare tutte le modifiche più comuni che gli utenti hanno bisogno di apportare ai loro kernel, con le istruzioni specifiche per effettuarle.
Il [[LKN:_Personalizzare_un_Kernel|capitolo precedente]] ci ha insegnato i meccanismi per la riconfigurazione del kernel; in questo capitolo arriva la parte interessante, in cui si possono trovare tutte le modifiche più comuni che gli utenti hanno bisogno di apportare ai loro kernel, con le istruzioni specifiche per effettuarle.


== '''Dischi''' ==
== '''Dischi''' ==
Riga 10: Riga 9:
Il kernel Linux supporta una grande varietà di differenti tipi di disco. Questa sezione mostra come configurare il kernel in modo tale che supporti la maggior parte dei modelli più comuni di controller di disco.
Il kernel Linux supporta una grande varietà di differenti tipi di disco. Questa sezione mostra come configurare il kernel in modo tale che supporti la maggior parte dei modelli più comuni di controller di disco.


 
===Dispositivi USB===
'''Dispositivi USB'''


Per utilizzare un dispositivo di archiviazione USB (come quelli chiamati comunemente memorie "flash" USB, oppure dischi esterni USB) il supporto USB deve prima funzionare correttamente. Fare riferimento alla ricetta nella sezione chiamata [[USB]] per sapere come fare.
Per utilizzare un dispositivo di archiviazione USB (come quelli chiamati comunemente memorie "flash" USB, oppure dischi esterni USB) il supporto USB deve prima funzionare correttamente. Fare riferimento alla ricetta nella sezione chiamata [[USB]] per sapere come fare.
Riga 50: Riga 48:
Nelle pagine che seguono verranno illustrate specifici dispostivi di archiviazione USB per i quali si rende necessaria una configurazione differente, in quanto non seguono gli standard USB e richiedono un codice speciale. Se si possiede uno di questi dispositivi, è necessario abilitare il supporto per essi.
Nelle pagine che seguono verranno illustrate specifici dispostivi di archiviazione USB per i quali si rende necessaria una configurazione differente, in quanto non seguono gli standard USB e richiedono un codice speciale. Se si possiede uno di questi dispositivi, è necessario abilitare il supporto per essi.


 
===Dischi IDE===
'''Dischi IDE'''


I dischi IDE sono i più comuni dischi per PC. Il dispositivo che abilita tali dischi affinchè essi lavorino correttamente è un controller di disco IDE. Per determinare se si abbia un controller di disco IDE sul proprio sistema, usare il comando ''lspci'' nel seguente modo:
I dischi IDE sono i più comuni dischi per PC. Il dispositivo che abilita tali dischi affinchè essi lavorino correttamente è un controller di disco IDE. Per determinare se si abbia un controller di disco IDE sul proprio sistema, usare il comando ''lspci'' nel seguente modo:
Riga 100: Riga 97:
Ciò porta all'apertura di un lungo sottomenu di differenti tipi di controller IDE. Selezionare il proprio in base al nome del dispositivo mostrato col comando ''lspci''
Ciò porta all'apertura di un lungo sottomenu di differenti tipi di controller IDE. Selezionare il proprio in base al nome del dispositivo mostrato col comando ''lspci''


 
===Serial ATA (SATA)===
'''Serial ATA (SATA)'''


SATA è un tipo di controller di disco che rappresenta il successore del controller di disco IDE. Per determinare se si possiede sul sistema un controller di disco SATA, lanciare il seguente comando:
SATA è un tipo di controller di disco che rappresenta il successore del controller di disco IDE. Per determinare se si possiede sul sistema un controller di disco SATA, lanciare il seguente comando:
Riga 154: Riga 150:
             [*]  Intel PIIX/ICH SATA support  
             [*]  Intel PIIX/ICH SATA support  
</pre>
</pre>


== '''Masterizzare un CD-ROM''' ==
== '''Masterizzare un CD-ROM''' ==
Riga 161: Riga 156:
Ci sono due metodi per abilitare il supporto CD-ROM in Linux, uno per i lettori IDE ed uno per i lettori SCSI e SATA
Ci sono due metodi per abilitare il supporto CD-ROM in Linux, uno per i lettori IDE ed uno per i lettori SCSI e SATA


 
===Lettori CD-ROM IDE===
'''Lettori CD-ROM IDE'''


I lettori CD-ROM IDE sono gestiti dallo stesso controller IDE del disco principale. Assicurarsi che il controller IDE sia correttamente supportato come descritto nella sezione ''Dischi IDE''. Se lo è, allora occorre selezionare solo un'altra voce nella procedura di configurazione:
I lettori CD-ROM IDE sono gestiti dallo stesso controller IDE del disco principale. Assicurarsi che il controller IDE sia correttamente supportato come descritto nella sezione ''Dischi IDE''. Se lo è, allora occorre selezionare solo un'altra voce nella procedura di configurazione:
Riga 173: Riga 167:
</pre>
</pre>


 
===Lettori CD-ROM SCSI e SATA===
'''Lettori CD-ROM SCSI e SATA'''


I lettori CD-ROM SCSI e SATA sono gestiti dallo stesso controller del disco principale. Assicurarsi che il controller SCSI o SATA sia correttamente supportato. Per i dischi SATA, vedere la precedente sezione ''Serial ATA (SATA).''   
I lettori CD-ROM SCSI e SATA sono gestiti dallo stesso controller del disco principale. Assicurarsi che il controller SCSI o SATA sia correttamente supportato. Per i dischi SATA, vedere la precedente sezione ''Serial ATA (SATA).''   
Riga 186: Riga 179:


Una volta che è stato abilitato, il lettore CD-ROM SCSI o SATA dovrebbe funzionare correttamente.
Una volta che è stato abilitato, il lettore CD-ROM SCSI o SATA dovrebbe funzionare correttamente.


== '''Dispositivi''' ==
== '''Dispositivi''' ==
Riga 192: Riga 184:
Linux supporta un grande numero di differenti tipi di dispositivi (più di qualunque altro sistema operativo). Questa sezione descrive come abilitare i dispositivi più comuni.
Linux supporta un grande numero di differenti tipi di dispositivi (più di qualunque altro sistema operativo). Questa sezione descrive come abilitare i dispositivi più comuni.


 
===USB===
'''USB'''


Linux supporta molti tipi di dispositivi USB. Per abilitare il supporto USB, bisogna innanzitutto abilitare il supporto per il controller USB, che gestisce il collegamento USB sulla macchina. Per determinare se la propria macchina possiede un controller USB, e di quale tipo è, lanciare il seguente comando:
Linux supporta molti tipi di dispositivi USB. Per abilitare il supporto USB, bisogna innanzitutto abilitare il supporto per il controller USB, che gestisce il collegamento USB sulla macchina. Per determinare se la propria macchina possiede un controller USB, e di quale tipo è, lanciare il seguente comando:
Riga 259: Riga 250:
Per inserire dispositivi di archiviazione USB (USB flash), vedere la sezione chiamata "Archiviazione USB", all'inizio di questo capitolo.
Per inserire dispositivi di archiviazione USB (USB flash), vedere la sezione chiamata "Archiviazione USB", all'inizio di questo capitolo.


 
===IEEE 1394 (FireWire)===
'''IEEE 1394 (FireWire)'''


IEEE 1394 è comunemente conosciuta col nome FireWire, il nome con il quale fu pubblicizzata dalla Apple Computer. IEEE 1394 è un bus ad alta velocità che connette dispositivi esterni, come i dispositivi USB.
IEEE 1394 è comunemente conosciuta col nome FireWire, il nome con il quale fu pubblicizzata dalla Apple Computer. IEEE 1394 è un bus ad alta velocità che connette dispositivi esterni, come i dispositivi USB.
Riga 316: Riga 306:
</pre>
</pre>


 
===PCI Hotplug===
'''PCI Hotplug'''


I sistemi PCI hotplug stanno diventando sempre più popolari grazie all'uso di Express Card e laptop docking stations.
I sistemi PCI hotplug stanno diventando sempre più popolari grazie all'uso di Express Card e laptop docking stations.
Riga 358: Riga 347:
</pre>
</pre>


 
===PCMCIA/CardBus===
'''PCMCIA/CardBus'''


Il supporto per dispositivi PCMCIA e CardBus è fabbricato su quasi ogni portatile. In ogni caso, i portatili più recenti si stanno orientando verso il formato ExpressCard (vedere la ricetta PCI Hotplug nella sezione precedente, ''PCI Hotplug'').
Il supporto per dispositivi PCMCIA e CardBus è fabbricato su quasi ogni portatile. In ogni caso, i portatili più recenti si stanno orientando verso il formato ExpressCard (vedere la ricetta PCI Hotplug nella sezione precedente, ''PCI Hotplug'').
Riga 403: Riga 391:
</pre>
</pre>


 
===Audio (ALSA)===
'''Audio (ALSA)'''


Advanced Linux Sound Architecture (ALSA) è l'attuale sound system per il kernel Linux. Un sound system meno recente (OSS) è stato abbandonato, e quasi tutti i vecchi driver sono stati rimossi dall'albero dei sorgenti del kernel.
Advanced Linux Sound Architecture (ALSA) è l'attuale sound system per il kernel Linux. Un sound system meno recente (OSS) è stato abbandonato, e quasi tutti i vecchi driver sono stati rimossi dall'albero dei sorgenti del kernel.
Riga 457: Riga 444:
                 PCI Devices  
                 PCI Devices  
</pre>
</pre>


=='''CPU'''==
=='''CPU'''==
Riga 463: Riga 449:
Se si desidera avere un kernel che lavori il più velocemente possibile per il proprio hardware e processore, sono poche le opzioni sulle quali bisogna agire per migliorare le performance. Questa sezione mostrerà alcune delle opzioni che si possono configurare in base ai processori.
Se si desidera avere un kernel che lavori il più velocemente possibile per il proprio hardware e processore, sono poche le opzioni sulle quali bisogna agire per migliorare le performance. Questa sezione mostrerà alcune delle opzioni che si possono configurare in base ai processori.


 
===Tipi di processori===
'''Tipi di processori'''


Nel kernel linux possiamo modificare un gran numero di opzioni per i diversi processori. La prima informazione da ricavare è l'esatto tipo di processore che si sta usando. Per scoprire ciò, lanciare il seguente comando:
Nel kernel linux possiamo modificare un gran numero di opzioni per i diversi processori. La prima informazione da ricavare è l'esatto tipo di processore che si sta usando. Per scoprire ciò, lanciare il seguente comando:
Riga 525: Riga 510:
Per maggiori dettagli su questa fase della configurazione, si veda la voce M386 al Capitolo 11 per una completa descrizione di come scegliere la corretta voce di processore in base a quello che si possiede, e per il numero di macchine sul quale si voglia far girare il kernel.
Per maggiori dettagli su questa fase della configurazione, si veda la voce M386 al Capitolo 11 per una completa descrizione di come scegliere la corretta voce di processore in base a quello che si possiede, e per il numero di macchine sul quale si voglia far girare il kernel.


 
===SMP===
'''SMP'''


Se il proprio sistema ha più di una CPU, o una CPU Dual Core o Hyperthreaded, si dovrebbe selezionare l'opzione multiprocessore per il kernel linux in modo da portare vantaggi ai processori addizionali. Se non lo si farà, si sprecheranno risorse per gli altri processori senza tuttavia usarli del tutto.
Se il proprio sistema ha più di una CPU, o una CPU Dual Core o Hyperthreaded, si dovrebbe selezionare l'opzione multiprocessore per il kernel linux in modo da portare vantaggi ai processori addizionali. Se non lo si farà, si sprecheranno risorse per gli altri processori senza tuttavia usarli del tutto.
Riga 537: Riga 521:
</pre>
</pre>


 
===Preemption===
'''Preemption'''


Sistemi che fungono da server devono soddisfare a diversi requisiti fra i quali quelli di essere usati come desktop per applicazioni audio e video. Il kernel permette diversi modi di "preemption" in modo da affrontare diversi carichi di lavoro. "Preemption" è la capacità del kernel di interrompere se stesso mentre sta facendo qualcos'altro, in modo da lavorare per qualcosa che abbia una priorità più alta, ad esempio come aggiornare un programma audio o video.
Sistemi che fungono da server devono soddisfare a diversi requisiti fra i quali quelli di essere usati come desktop per applicazioni audio e video. Il kernel permette diversi modi di "preemption" in modo da affrontare diversi carichi di lavoro. "Preemption" è la capacità del kernel di interrompere se stesso mentre sta facendo qualcos'altro, in modo da lavorare per qualcosa che abbia una priorità più alta, ad esempio come aggiornare un programma audio o video.
Riga 562: Riga 545:
Questa opzione può essere selezionata solo se in precedenza si sono selezionate le voci "Preemptible Kernel" o "Symmetric multi-processin support".
Questa opzione può essere selezionata solo se in precedenza si sono selezionate le voci "Preemptible Kernel" o "Symmetric multi-processin support".


 
===Suspend===
'''Suspend'''


Il kernel Linux ha la capacità di autospendersi a disco, permettendo di togliere l'alimentazione e poi, successivamente, di rialimentare e tornare esattamente nel punto in cui la macchina era stata sospesa. Questa funzionalità è molto utile sui laptop nei quali gira Linux
Il kernel Linux ha la capacità di autospendersi a disco, permettendo di togliere l'alimentazione e poi, successivamente, di rialimentare e tornare esattamente nel punto in cui la macchina era stata sospesa. Questa funzionalità è molto utile sui laptop nei quali gira Linux
Riga 590: Riga 572:
Usare l'output del comando precedente in questa opzione di configurazione del kernel e nella riga di boot del kernel dove viene specificato da dove il kernel dovrebbe essere riesumato. Dopo che la macchina è stata sospesa, per farla ripartire correttamente, passare l'argomento ''resume=/dev/swappartition alla riga di comando del kernel affinchè usi l'immagine corretta. Se non si vuole arichiviare l'immagine sospesa, usare l'argomento "noresum" da riga di comando del kernel.
Usare l'output del comando precedente in questa opzione di configurazione del kernel e nella riga di boot del kernel dove viene specificato da dove il kernel dovrebbe essere riesumato. Dopo che la macchina è stata sospesa, per farla ripartire correttamente, passare l'argomento ''resume=/dev/swappartition alla riga di comando del kernel affinchè usi l'immagine corretta. Se non si vuole arichiviare l'immagine sospesa, usare l'argomento "noresum" da riga di comando del kernel.


 
===CPU Frequency Scaling===
'''CPU Frequency Scaling'''


La maggior parte dei moderni processori possono rallentare il clock interno del processore in modo da preservare alimentazione e durata della batteria. Linux supporta questa capacità e offre una varietà di ''regolatori'' di alimentazione. Differenti regolatori implementano differenti ''heuristics'' in modo da determinare come variare la velocità del processore in funzione della velocità del sistema e delle altre variabili.
La maggior parte dei moderni processori possono rallentare il clock interno del processore in modo da preservare alimentazione e durata della batteria. Linux supporta questa capacità e offre una varietà di ''regolatori'' di alimentazione. Differenti regolatori implementano differenti ''heuristics'' in modo da determinare come variare la velocità del processore in funzione della velocità del sistema e delle altre variabili.
Riga 645: Riga 626:
</pre>
</pre>


 
===Differenti Modelli di Memoria===
'''Differenti Modelli di Memoria'''


Linux su hardware Intel 32 bit può accedere a 64 Gb di memoria, ma l'indirizzo fisico di un processore a 32 bit è di soli 4 Gb. Per lavorare con questa limitazione, Linux può mappare la memoria addizionale in un'altra area e poi selezionarla quando altri programmi ne hanno bisogno. Ma se la propria macchina ha una quantità di memoria più piccola, è più facile per Linux non avere problemi nell'occupare aree più grandi, così risulta benefico dire al kernel quanta memoria si vuole per supportarlo. Per una descrizione più dettagliata di questa opzione, si veda la voce HIGHMEM al Capitolo 11.
Linux su hardware Intel 32 bit può accedere a 64 Gb di memoria, ma l'indirizzo fisico di un processore a 32 bit è di soli 4 Gb. Per lavorare con questa limitazione, Linux può mappare la memoria addizionale in un'altra area e poi selezionarla quando altri programmi ne hanno bisogno. Ma se la propria macchina ha una quantità di memoria più piccola, è più facile per Linux non avere problemi nell'occupare aree più grandi, così risulta benefico dire al kernel quanta memoria si vuole per supportarlo. Per una descrizione più dettagliata di questa opzione, si veda la voce HIGHMEM al Capitolo 11.
Riga 666: Riga 646:
</pre>
</pre>


'''ACPI'''
===ACPI===


Sulla maggior parte dei sistemi moderni basati Intel, ACPI è richiesto dalla macchina per poter funzionare correttamente. ACPI è uno standard che permette al BIOS del computer di lavorare con il sistema operativo, dando accesso all'hardware in modo indiretto, così avendo la possibilità di gestire un ampio raggio di interfaccie con un codice relativamente ristretto e specifico per ogni sistema operativo. ACPI fornisce inoltre una facilità nell'aiutare il ''suspend'' e ''resume'' della macchina e il controllo della velocità del processore e le ventole. Se si ha un laptop è consigliabile abilitare questa opzione.<br />
Sulla maggior parte dei sistemi moderni basati Intel, ACPI è richiesto dalla macchina per poter funzionare correttamente. ACPI è uno standard che permette al BIOS del computer di lavorare con il sistema operativo, dando accesso all'hardware in modo indiretto, così avendo la possibilità di gestire un ampio raggio di interfaccie con un codice relativamente ristretto e specifico per ogni sistema operativo. ACPI fornisce inoltre una facilità nell'aiutare il ''suspend'' e ''resume'' della macchina e il controllo della velocità del processore e le ventole. Se si ha un laptop è consigliabile abilitare questa opzione.<br />
Riga 950: Riga 930:
         USB Network Adapters
         USB Network Adapters
</pre>
</pre>
=='''Filesystems'''==


----
----
47

contributi