Difference between revisions of "Kernels (Italiano)"
Kynikos.bot (talk | contribs) (Template:i18n is deprecated, use interlanguage links, see Help talk:I18n#"Dummy" interlanguage links and deprecation of Template:i18n) |
(zen-kernel Changed to linux-zen.) |
||
Line 60: | Line 60: | ||
:Il kernel Linux e gli header - patchato per rendere funzionante la suite [http://aircrack-ng.org/ aircrack-ng]. | :Il kernel Linux e gli header - patchato per rendere funzionante la suite [http://aircrack-ng.org/ aircrack-ng]. | ||
− | ;{{AUR|zen | + | ;{{AUR|linux-zen}} |
:Il [http://zen-kernel.org Kernel Zen] è il risultato della colaborazione tra kernel hacker per fornire il miglior kernel Linux possibile per i sistemi attuali. | :Il [http://zen-kernel.org Kernel Zen] è il risultato della colaborazione tra kernel hacker per fornire il miglior kernel Linux possibile per i sistemi attuali. | ||
Revision as of 13:34, 6 August 2012
zh-CN:Kernels Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end
Da Wikipedia:
- il kernel è la componente più importante del sistema operativo; è un ponte tra le applicazioni e l'elaborazione dei dati eseguita a livello hardware. Le responsabilità del kernel comprendono la gastione delle risorse del sistema (la comunicazione tra le componenti hardware e software).
Esistono diversi kernel alternativi per Arch Linux oltre a quello principale. Questo articolo elenca alcune delle opzioni disponibili nei repository con una breve descrizione per ognuna. È anche presente una descrizione delle patch che possono essere applicate al kernel del sistema. L'articolo termina con una panoramica sulla compilazione dei kernel personalizzati con link ai vari metodi.
Kernel precompilati
Pacchetti ufficiali
- linux
- Il kernel Linux e i moduli dal repository [core]. Kernel vanilla con tre patch (dalla versione 3.1.3-1).
- linux-lts
- Il kernel linux e i moduli supportati a lungo termine (LTS) dal repository [core].
Pacchetti AUR
- linux-bfsAUR
- Il kernel Linux e i moduli con il Brain Fuck Scheduler (BFS) - creato da Con Kolivas per computer desktop con meno di 4096 cores, con scheduler I/O BFQ opzionale.
- linux-ckAUR
- Il kernel Linux compilato con il patchset di Con Kolivas.
- Le opzioni aggiuntive che possono essere abilitate/disabilitate dal PKGBUILD includono: scheduler BFQ, nconfig, localmodconfig utilizzo del config del kernel in esecuzione.
- Queste sono patch progettate per migliorare la reattività del sistema con particolare enfasi nei desktop, ma adattabili a qualsiasi carico di lavoro. Le patch ck includono il BFS.
- Per ulteriori informazioni ed istruzioni per l'installazione, si prega di leggere l'articolo linux-ck.
- linux-fbcondecorAUR
- Il kernel Linux e i moduli con supporto fbcondecor.
- linux-grsecAUR
- Il kernel Linux e i moduli con le patch grsecurity e PaX per una maggiore sicurezza.
- linux-iceAUR
- Il kernel Linux e i moduli con il patchset dai sorgenti gentoo e il supporto TuxOnIce.
- linux-lqxAUR
- Liquorix è una distribuzione kernel sostitutiva costruita usando la migliore configurazione e i migliori sorgenti kernel per utilizzo desktop, multimediale e ludico, spesso usato per ottenere migliori prestazioni su Debian Linux. damentz, il mantenitore del patchset Liquorix, è anche sviluppatore del patchset Zen, quindi molti di quei miglioramenti possono essere trovati in questo patchset.
- linux-paxAUR
- Il kernel Linux e i moduli con le patch PaX per aumentare la sicurezza.
- linux-pfAUR
- Il kernel linux e i moduli con il patchset del pf-kernel [patchset -ck (incluso BFS), TuxOnIce, BFQ], aufs2 e squashfs-lzma.
- linux-vanillaAUR
- Il kernel Linux vanilla e i moduli senza le patch di Arch Linux.
- linux-aircrackAUR
- Il kernel Linux e gli header - patchato per rendere funzionante la suite aircrack-ng.
- linux-zenAUR
- Il Kernel Zen è il risultato della colaborazione tra kernel hacker per fornire il miglior kernel Linux possibile per i sistemi attuali.
- kernel-netbookAUR
- Kernel statico per netbook con Intel Atom N270/N280/N450/N550 come l'Eee PC con l'aggiunta di firmware (broadcom-wlAUR) e patchset (BFS + TuxOnIce + BFQ optional) esterni - Solo GPU Intel
Patch e Patchset
Ci sono diverse ragioni per patchare il proprio kernel, le principali riguardano le prestazioni o il supporto per caratteristiche secondarie come il supporto per il file system reiser4. Altre ragioni possono essere il divertimento e il vedere come funziona e quali sono i miglioramenti.
Comunque è importante notare che il modo migliore per aumentare la velocità del sistema è innanzitutto quello di ottimizzare il kernel per il proprio sistema, specialmente per l'architettura e il tipo del processore. Per queste ragioni è sconsigliato utilizzare versioni pacchetti di kernel personalizzati già pronti con impostazioni per un'architettura generica. Un ulteriore miglioramento può essere il ridurre la grandezza dell'immagine del proprio kernel (e quindi il tempo di compilazione) escludendo il supporto per ciò che non si possiede o non si usa.
Come installare
Il processo d'installazione dei pacchetti del kernel personalizzato si affida all'Arch Build System (ABS). Riguardo la creazione di pacchetti personalizzati, consultare i seguenti articoli: Arch Build System (Italiano) e Creating Packages (Italiano).
Applicare patch o personalizzare un kernel non è così complicato come può apparire, ed esistono molti PKGBUILD nel forum per singoli patchset. In ogni caso, è raccomandato cominciare dalle basi facendo ricerche sui vantaggi di ogni patchset piuttosto che installare il primo che capita: in questo modo si acquisiranno molte più conoscenze sulle differenze tra i vari kernel.
Vedere #Compilazione.
Patchset principali
Prima di tutto è importante notare che i patchset sono sviluppati da diverse persono. Alcuni sono fanno effettivamente parte della produzione del kernel Linux, altri sono hobbisti, il che può riflettere il loro livello di affidabilità e stabilità.
È anche importante notare che alcuni patchset sono costruiti dietro altri patchset (il può o meno influenzare la validità della patch). I patchset (e gli aggiornamenti del kernel) possono essere rilasciati molto frequentemente e spesso non vale la pena seguirli TUTTI per non impazzire, a meno che non diventi un hobby!
Si possono anche cercare altri patchset tramite google - ricordarsi di utilizzare le virgolette "-nitro"
per esempio altrimenti google NON mostrerà deliberatamente i risultati voluti!
-ck
Queste sono patch progettate per migliorare la reattività del sistema, in particolar modo per i desktop, ma utilizzabile in ogni sistema. Le patch sono create e mantenute da Con Kolivas, il suo sito internet è http://users.on.net/~ckolivas/kernel/. Con mantiene un set completo, ma fornisce anche singolarmente le patch così da poter aggiungere solo quelle desiderate.
Le patch -ck possono essere trovate su http://ck.kolivas.org/patches/3.0/
-rt
Questo patchset è mantenuto da un piccolo gruppo di sviluppatori core, con a capo Ingo Molnar. Questa patch permette a quasi tutto il kernel di essere prevaricato, ad eccezione di un parte molto piccola di codice ("raw_spinlock critical regions"). Ciò è ottenuto sostituendo la maggior parte degli spinlock con mutex che supportano l'eredità della priorità, ma anche spostando gli interrupt e i software interrupt nelle istanze del kernel.
Inoltre sono presenti timer ad alta risoluzione - un patchset, mantenuto indipendentemente.
[come scritto sulla Real-Time Linux Wiki]
patch su http://www.kernel.org/pub/linux/kernel/projects/rt/
-bld
BLD è meglio descritto come una tecnica di selezione CPU 0(1). Essa consiste nel riordinare le code di esecuzione in base ai carichi delle code. In altre parole, mantiene informato lo scheduler sui cambiamenti di carico, il che lo aiuta a tenere ordinate le code di esecuzione. Questa tecnica non dipende dal funzionamento dello scheduler. Le due cose più semplici in essa sono: tracciamento del carico e riordinamento delle code; le quali sono operazioni abbastanza semplici. Il tracciamento del carico viene eseguito ogni volta in cui avviene un cambiamento del carico di sistema e a seconda di questo cambiamento vengono riordinate le code di esecuzione. Lo scheduler può selezionare la coda più bassa senza dover calcolare e confrontare al momento di inserire un'attività in una coda. Cercando di distribuire il carico allo sched_exec e sched_fork, la scelta migliore è quella di prendere la coda del sistema meno occupata. In tal modo il sistema rimane bilanciato senza dover effettuare un bilanciamento del carico. Al momento del try_to_wake_up selezionare la coda meno attiva ha la massima priorità, ma viene effettuato secondo il dominio per utilizzare la cache della CPU in modo appropriato ed è il punto in cui si richiede una maggiore concentrazione.
Pagina di Google code: http://code.google.com/p/bld/
È disponibile solo la patch per la versione 3.3-rc3
-grsecurity
Grsecurity è un patchset per la sicurezza. Aggiunge numerose feature legate alla sicurezza come Role-Based Access Control e utilizza caratteristiche del progetto PaX. Può essere usato su desktop, ma si trae il maggior beneficio su un server pubblico. Alcune applicazioni sono incompatibili come le misure di sicurezza implementate da questo patchset. In questo caso, è consigliabile usare un livello di sicurezza più basso.
Le patch -grsecurity si trovano su at http://grsecurity.net
Tiny-Patch
Lo scopo di Linux Tiny è di ridurre le tracce nella memoria e sul disco, così come aggiungere feature per permettere di lavorare su sistemi ridotti. Gli utenti designati sono sviluppatori di sistemi integrati e utenti di macchine ridotte o datate come le 386.
I rilasci della patch rispetto a quelli del kernel Linux sono discontinui. Gli sviluppatori hanno scelto di concentrarsi su alcune patch ed utilizzare il proprio tempo per cercare di unirle all'interno del kernel.
Patch individuali
Queste sono patch che possono essere semplicemente incluse in ogni build del kernel vanilla o incorporate (magari insieme a modifiche maggiori) in altri patchset. Qui sono presenti alcune delle più comuni.
Reiser4
Gensplash/fbsplash
Gensplash - http://dev.gentoo.org/~spock/projects/
Compilazione
Arch Linux fornisce metodi diversi per la compilazione del kernel.
Usare l'Arch Build System (consigliato)
Usare l'Arch Build System è consigliato per poter trarre vantaggio dall'alta qualità del PKGBUILD linux esistente ed avere i benefici della sistema di gestione dei pacchetti. Il PKGBUILD è strutturato in modo da poter fermare la compilazione appena i sorgenti sono stati scaricati e configurare il kernel.
Vedere Kernels/Compilation/Arch_Build_System_(Italiano).
Tradizionale
Alternativamente è possibile compilare un kernel senza l'Arch Build System (metodo tradizionale). Questo metodo comporta lo scaricamento manuale della tarball dei sorgenti e la compilazione nella propria cartella home come normale utente. Una volta configurato, vengono offerti due metodi di compilazione/installazione: quello tradizionale e quello con makepkg/pacman.
Un vantaggio del metodo tradizionale è che funziona su altre distribuzioni Linux.
Vedere Kernels/Compilation/Traditional.
È disponibile uno script che automatizza il metodo non-Arch Build System. Vedere Kernels/Compilation/Script.
Driver proprietari NVIDIA
Consultare NVIDIA_(Italiano)#Installazione alternativa: kernel personalizzato per istruzioni riguardo l'utilizzo dei driver proprietari NVIDIA con un kernel personalizzato
Vedere anche
- O'Reilly - Linux Kernel in a Nutshell (free ebook)