linux Ottimizzare la compilazione del Kernel (CFLAGS)Ottimizzare la compilazione del Kernel (CFLAGS)

Di LuNa | Lug 25, 2008
Stampa questo post Stampa questo post Articolo originale

Scoperto proprio ora sfrucugliando con la mia Gentoo, è possibile ottimizzare le flags del compilatore anche per il kernel. Funziona su qualsiasi distribuzione. Rivediamo anche, velocemente, come compilare il kernel di linux.

Il *trucco* sta tutto nell’esportare la variabile CFLAGS_KERNEL (1), nel mio caso prendo quella del mio make.conf:

# export CFLAGS_KERNEL="-O3 -march=athlon64 -pipe -fomit-frame-pointer"

prima di compilare. Scarichiamo i sorgenti dell’ultimo kernel Vanilla e scompattiamoli:

# cd /usr/src
# wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.tar.bz2
# tar xf linux-2.6.26.tar.bz2

creiamo il link simbolico linux nella cartella dei sorgenti

# ln -s /usr/src/linux-2.6.26 /usr/src/linux

entriamo nella cartella del kernel:

# cd /usr/src/linux

!! se non è la prima volta che compiliamo lo stesso sorgente:

# make mrproper

per ripulire dalla *rumenta* della compilazione precedente. Ora configuriamo il nostro kernel:

# make menuconfig

compiliamo:

# make -j 3

il parametro -j serve per comunicare al compilatore quanti processi in parallelo deve eseguire: l’impostazione migliore è numero di core del processore + 1 (Io con un solo core utilizzo comunque -j 3 da molto tempo senza problemi)
TIP: Possiamo inserire i sorgenti (scompattati!!) di eventuali moduli esterni al kernel copiando la cartella contenente il sorgente in /usr/src/modules
Proseguiamo installando i moduli:

# make modules_install

!! cancelliamo i vecchi moduli prima di installarli se il kernel ha lo stesso nome (stessa versione)

# rm -rf /lib/modules/`uname -r`

Ora abbiamo due opzioni: se abbiamo compilato il kernel in maniera monolitica possiamo copiare l’immagine in /boot:

# cp ./arch/x86/boot/bzImage /boot/bzImage

diversamente se abbiamo compilato l’initrd:

# make install

Modifichiamo la configurazione del bootloader se necessario e riavviamo il calcolatore con il nuovo kernel.

(1) Per una lista delle CFLAGS vedere qui: http://gentoo-wiki.com/CFLAGS

convert this post to pdf. Tags: Linux

Post correlati

Lascia un commento

Se vuoi inserire un commento, per favore completa il form sottostante.

Nome (obbligatorio)

Email (obbligatorio)

Sito Web

Commenti

© 2008 Tuttolinux - novità ed articoli dal mondo del pinguino !
Tutti i contenuti © dei rispettivi autori. Leggi questo per ulteriori informazioni.
Creative Commons LicenseIl contenuto di questo sito web è pubblicato sotto una Licenza Creative Commons.

Warning: stristr() [function.stristr]: Empty delimiter in /home/.nine/luckylinux/tutto-linux.com/wp-content/plugins/wassup/wassup.php on line 2093