compilazione del kernel

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
targzeta
Iper Master
Iper Master
Messaggi: 6520
Iscritto il: gio nov 03, 2005 14:05
Nome Cognome: Emanuele Tomasi
Slackware: current
Kernel: latest stable
Desktop: IceWM
Località: Carpignano Sal. (LE) <-> Pisa

Re: compilazione del kernel

Messaggioda targzeta » mar mar 03, 2009 12:09

Mario Vanoni ha scritto:...Scusa Corrado puoi spiegarmi quali cose hanno "bisogno per forza di un initram" ?
Oltre a quello che ti ha già datto conraid, a volte (esperienza vissuta :) ) si usano degli hard disk particolari (tipo dei raid) che abbisognano di caricare un firmware. Come ben sai i firmware sono caricati da udev o dal vecchio hotplug. Al momento dell'avvio se nessuno di questi è attivo (e non può esserlo perchè risiedono nella root directory che ancora non è stata montata perchè sta proprio sul disco) non si può caricare il firmware e di conseguenza non si può usare il disco. In questi casi si usa eseguire il caricamento del firmware in un ambiente di initrd.

Altro esempio è quello in cui si vuole eseguire l'avvio da un supporto USB, puoi anche installare il modulo come builtin nel kernel, però all'avvio devi sempre aspettare che il modulo abbia rilevato la pennina in cui risiede il root filesystem. Anche in questi casi si usa un ambiente di initrd in cui non si fa altro che aspettare che il modulo abbia rilevato i supporti USB.

Spina
Linux Registered User #454438
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
20/04/2013 - Io volevo Rodotà 

Avatar utente
conraid
Staff
Staff
Messaggi: 13279
Iscritto il: gio lug 14, 2005 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Località: Livorno
Contatta:

Re: compilazione del kernel

Messaggioda conraid » mar mar 03, 2009 12:46

puzuma ha scritto:P.S. quindi IMVHO se l'hardware è supportato completamente da kernel generic di Pat non c'è motivo di ricompilare


Beh, ci sono sempre bugfixes nel 2.6.27.* e cose diverse nel 2.6.28.*
Dipende da cosa ti serve, e da cosa vuoi provare, testare, etc...

Avatar utente
raffaele181188
Packager
Packager
Messaggi: 789
Iscritto il: ven set 07, 2007 21:40
Nome Cognome: Raffaele
Slackware: current
Kernel: 2.6.29.6
Desktop: KDE 4.3
Distribuzione: Ubuntu
Località: DearSkin (FG)

Re: compilazione del kernel

Messaggioda raffaele181188 » mar mar 03, 2009 12:54

I passi avanti fatti dal kernel in termini di supporto hardware, secondo me, rendono inutile la ricompilazione. In passato si ricompilava per includrere hardware non supportato. Io non ho mai notato differenze percettibili cambiando le opzioni di compilazione

Comunque il thread è stato aperto proprio perchè "avevo sentito parlare che si può ricompilarsi il kernel per aumentare la velocità del sistema"... e secondo me è ora di scrivere chiaro e tondo che questo non è vero... Magari c'è gente che passa una settimana a studiare tutte le ottimizzazioni di questo mondo, e poi si ritrova lo stesso computer di prima. Secondo me questo fa parte di quei luoghi comuni su Linux che bisogna smettere di propagandare... Come quello che bisogna ottimizzare l'assembly in base al processore, o che si può far andare Linux su macchine vecchie (senza specificare quanto vecchie, e cosa ci si può far girare sopra) o che Linux è leggero. Sì, magari Linux (il kernel) ma tutto il resto? Le ottimizzazione assembly, poi, non servono a un tubo con il gcc. Forse quelle per i processori a più core, ma bisogna anche trovarsi di fronte a programmi scritti per sfruttarli, e non sono molti.

Avatar utente
danix
Staff
Staff
Messaggi: 3287
Iscritto il: ven ott 27, 2006 19:32
Nome Cognome: Danilo M.
Slackware: 64 14.1
Kernel: 4.4.0
Desktop: kde4
Località: Siderno (RC)
Contatta:

Re: compilazione del kernel

Messaggioda danix » mar mar 03, 2009 14:14

vabbè raffaele, non è il caso di generalizzare, alcune ottimizzazioni hanno un loro peso sulle prestazioni complessive del sistema... allo stesso modo concordo con te che bisogna essere più chiari riguardo al fatto che GNU/Linux giri su sistemi antiquati, ma non si tratta assolutamente di un mito da sfatare, semplicemente bisognerebbe ricordarsi di dire anche che non ci girerà compiz (per esempio), ma distro (anche molto recenti) girano benone su catorci di molti anni fa...
danix

myself ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
conraid
Staff
Staff
Messaggi: 13279
Iscritto il: gio lug 14, 2005 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Località: Livorno
Contatta:

Re: compilazione del kernel

Messaggioda conraid » mar mar 03, 2009 14:46

raffaele181188 ha scritto:I passi avanti fatti dal kernel in termini di supporto hardware, secondo me, rendono inutile la ricompilazione. In passato si ricompilava per includrere hardware non supportato. Io non ho mai notato differenze percettibili cambiando le opzioni di compilazione


qui ti contraddici da solo, il supporto hardware migliora sempre, sia in qualità sia in quantità (oddio, a volte succede che peggiorano, ma sono eccezioni), quindi ricompilare serve per includere il nuovo hardware supportato se uno ce l'ha o per migliorare il supporto ad alcune periferiche. E questo sarà anche in futuro, non solo in passato.
Per non parlare dei miglioramenti nei vari filesystem, scheduler, rete (nell'ultimo kernel c'è anche l'opzione per il trasparent proxy direttamente con iptables) e così via

zxzxasas
Linux 2.x
Linux 2.x
Messaggi: 397
Iscritto il: sab nov 15, 2008 2:28
Nome Cognome: Pasquale
Slackware: current
Kernel: 2.6.35.7
Desktop: KDE 4.5.2

Re: compilazione del kernel

Messaggioda zxzxasas » mar mar 03, 2009 14:49

Beh no io non credo che sia inutile.

Innanzitutto si può ottimizzare il kernel per la propria architettura, e svolgendo il kernel operazioni di basso livello non mi pare che sia poco. Inoltre si può stabilire la frequenza di gestione delle interruzioni (slack mi pare porti a 250 Hz, io preferisco 300 se non 1000) per diminuire la latenza (kernel low latency, ci faccio pure qualcosa audio live), anche lo scheduler di gestione dell' I/O è importante per certi versi (CFQ non perde tempo in reti di priorità...). Randomizzare o meno l' heap (Pat non randomizza, questo è un duro colpo alla sicurezza), e tante altre cose.
Togliere o meno 2 MB dei driver serve solo per compilare più velocemente, che già è un' ottima cosa visto le temperature a cui arriva un notebook in fase di compilazione.

Poi io credo che dipende sempre da cosa serve!
Io dopo tantissimi kernel panic non tocco più reti, driver e file system. Però queste piccole modifiche quando mi capita preferisco farle visto l' uso che ne devo fare.
Ma infondo se si usa per scrivere ed andare su internet, non credo ci sia bisogno di ricompilare!

Avatar utente
masalapianta
Iper Master
Iper Master
Messaggi: 2775
Iscritto il: lun lug 25, 2005 0:00
Nome Cognome: famoso porco
Kernel: uname -r
Desktop: awesome
Distribuzione: Debian
Località: Roma
Contatta:

Re: compilazione del kernel

Messaggioda masalapianta » mar mar 03, 2009 16:23

raffaele181188 ha scritto:I passi avanti fatti dal kernel in termini di supporto hardware, secondo me, rendono inutile la ricompilazione. In passato si ricompilava per includrere hardware non supportato. Io non ho mai notato differenze percettibili cambiando le opzioni di compilazione

con le performance dei moderni processori, se parliamo di soli guadagni prestazionali, effettivamente ricompilare il kernel ha poco senso; mentre ha senso se bisogna abilitare opzioni (che nei kernel precompilati per uso generico non sono abilitate) per fare cose particolari (ad esempio realtime)
Comunque il thread è stato aperto proprio perchè "avevo sentito parlare che si può ricompilarsi il kernel per aumentare la velocità del sistema"... e secondo me è ora di scrivere chiaro e tondo che questo non è vero...

invece e' vero, solo che il guadagno,su un processore moderno, e' talmente insignificante da non valerne la pena
Come quello che bisogna ottimizzare l'assembly in base al processore,

questo e' vero, non fa miracoli ma i guadagni sono percettibili, soprattutto se parliamo di librerie di sistema
o che si può far andare Linux su macchine vecchie (senza specificare quanto vecchie, e cosa ci si può far girare sopra) o che Linux è leggero. Sì, magari Linux (il kernel) ma tutto il resto?

il fatto che si possa far andare gnu/linux su macchine vecchie e' vero, sarebbe falso dire che si puo' far andare kde con compiz e altra roba pesante su macchine vecchie, ma se dici genericamente gnu/linux vuol dire che puoi spaziare tra tutto il parco software per poter utilizzare la roba meno avida di risorse
Le ottimizzazione assembly, poi, non servono a un tubo con il gcc. Forse quelle per i processori a più core, ma bisogna anche trovarsi di fronte a programmi scritti per sfruttarli, e non sono molti.

questo non e' vero:
http://vmakarov.fedorapeople.org/spec/index.html (benchmark con -O2 e -O3, le differenze sono ben piu' che percettibili)

Avatar utente
raffaele181188
Packager
Packager
Messaggi: 789
Iscritto il: ven set 07, 2007 21:40
Nome Cognome: Raffaele
Slackware: current
Kernel: 2.6.29.6
Desktop: KDE 4.3
Distribuzione: Ubuntu
Località: DearSkin (FG)

Re: compilazione del kernel

Messaggioda raffaele181188 » mar mar 03, 2009 19:13

masalapianta ha scritto:con le performance dei moderni processori, se parliamo di soli guadagni prestazionali, effettivamente ricompilare il kernel ha poco senso; mentre ha senso se bisogna abilitare opzioni (che nei kernel precompilati per uso generico non sono abilitate) per fare cose particolari (ad esempio realtime)

Questo era quello che intendevo, mi sembrava abbastanza chiaro. Ha poco senso dire che gira tutto tranne compiz.. tutto cosa, il terminale e fluxbox? Se ne è già parlato in altri thread, Firefox e OOo non gireranno mai su un catorcio, nemmeno con kernel e tutto il resto ottimizzati. Chi installa solo tool a riga di comando è abbastanza esperto e non verrà a cercare sui forum il modo per avere più "reattività"
Quel benchmark mette in evidenza (come avevo già scritto) soprattutto le differenze dovute AI COMPILATORI
Poi vorrei sapere se compilano un sorgente scritto apposta o un programma comune (come firefox, emacs o vim), per la fretta non ho cercato. Bisognerebbe iniziare ad usare come benchmark programmi reali come per le schede video. I risultati spesso cambiano

Offtopic: @conraid la contraddizione nel discorso c'è se la vai a cercare... Man mano che passa il tempo molti driver (che prima venivano scaricati da siti a parte) vengono inclusi nel kernel. E spesso il nuovo hardware usa chip vecchi = già supportati = non devi ricompilare. Tutto qui

Avatar utente
conraid
Staff
Staff
Messaggi: 13279
Iscritto il: gio lug 14, 2005 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Località: Livorno
Contatta:

Re: compilazione del kernel

Messaggioda conraid » mar mar 03, 2009 19:23

raffaele181188 ha scritto:Offtopic: @conraid la contraddizione nel discorso c'è se la vai a cercare... Man mano che passa il tempo molti driver (che prima venivano scaricati da siti a parte) vengono inclusi nel kernel. E spesso il nuovo hardware usa chip vecchi = già supportati = non devi ricompilare. Tutto qui


"Man mano che passa il tempo molti driver (che prima venivano scaricati da siti a parte) vengono inclusi nel kernel."
Basterebbe questo per dire che è contraddittoria la tua affermazione, ma mi fermo qui. Ho come l'impressione di parlare al vento

zxzxasas
Linux 2.x
Linux 2.x
Messaggi: 397
Iscritto il: sab nov 15, 2008 2:28
Nome Cognome: Pasquale
Slackware: current
Kernel: 2.6.35.7
Desktop: KDE 4.5.2

Re: compilazione del kernel

Messaggioda zxzxasas » mar mar 03, 2009 19:24

Beh, quando parlammo di benchmark (più precisamente di nbench) trovammo che al variare dei parametri di compilazione c' erano differenze anche del 20%.

Quindi non credo che le differenze siano sensibili solo da compilatore a compilatore, ma anche all' interno dello stesso compilatore.

Avatar utente
raffaele181188
Packager
Packager
Messaggi: 789
Iscritto il: ven set 07, 2007 21:40
Nome Cognome: Raffaele
Slackware: current
Kernel: 2.6.29.6
Desktop: KDE 4.3
Distribuzione: Ubuntu
Località: DearSkin (FG)

Re: compilazione del kernel

Messaggioda raffaele181188 » mar mar 03, 2009 21:54

Offtopic: @conraid Mi sa che ho capito cosa intendi... Tu però potevi fare pure uno sforzo per capire quello che intendevo io
Come ha scritto anche puzuma, se l'hardware è supportato dal tuo kernel non c'è motivo di ricompilare. Masalapianta ha aggiunto che pure secondo lui l'aumento di prestazioni è irrileavante. Il punto è che io davo per scontato che uno tiene aggiornata la propria distro (che sia Slackware o Ubuntu o FreeBSD, con l'ULTIMO kernel fornito dalla stessa. In questo modo NON RICOMPILA lui, ma ha il supporto (ovviamente è stato ricompilato da altri, ma questo a me utente finale non importa perchè ho un kernel che funziona e non mi devo ammazzare per ricompilare niente). Spero di sembrarti meno contradditorio adesso. Lo davo per scontato perchè è buona norma tenere la distro aggiornata su tutto, anche sul kernel

Per quanto riguarda i bench... io ci credo poco come credo poco alle statistiche snocciolate a Porta a Porta, Ballarò, l'Infedele e Matrix... :D :D I migliori bench secondo me restano sempre i programmi usati. Quindi compiliamo due Firefox con diverse opzioni e troviamo un modo per misurare i tempi... Oggi per le schede video i migliori bench sono Doom e Unreal.... :D :D

Avatar utente
slucky
Iper Master
Iper Master
Messaggi: 2412
Iscritto il: mar mag 01, 2007 15:30
Slackware: 14.2
Kernel: 4.11.3-smp
Desktop: xfce4
Distribuzione: freeBSD-12.0-Release

Re: compilazione del kernel

Messaggioda slucky » mar mar 03, 2009 23:50

senza offesa, ma quando leggo i tuoi post ho sempre l'impressione che siano quelli di un utente "convinto" windows che cerca di screditare linux ad ogni occasione, sei sempre polemico e inutilmente provocatorio...
tornando all'argomento non è affatto vero che ricompilando non si ottengano miglioramenti e maggiori prestazioni, i kernel di default delle distro sono generici, ad es. anche solo ottimizzando per la propria cpu e rendendo il kernel preemptible si ottengono maggiore risposta e velocità del sistema, senza contare le patch e le tante altre ottimizzazioni possibili...
inoltre non esiste nessun sistema che come linux possa venire applicato ed utilizzato su quelli che tu chiami vecchi catorci, nell'enorme parco software del pinguino ciascuno può trovare wm e software in grado di ridare vita a vecchi pc...
infine i benchmarch, non sono perfetti ma restano un buon banco di prova per valutare le prestazioni della propria macchina...

zxzxasas
Linux 2.x
Linux 2.x
Messaggi: 397
Iscritto il: sab nov 15, 2008 2:28
Nome Cognome: Pasquale
Slackware: current
Kernel: 2.6.35.7
Desktop: KDE 4.5.2

Re: compilazione del kernel

Messaggioda zxzxasas » mer mar 04, 2009 0:27

Beh quel benchmark elabora ad esempio i coefficienti di una serie di fourier che sono alla base delle comunicazioni.

Ora non so se di fatto vengono fatti dai computer, ma diciamo che vengono fatti dei calcoli matematici abbastanza complessi!

Avatar utente
conraid
Staff
Staff
Messaggi: 13279
Iscritto il: gio lug 14, 2005 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Località: Livorno
Contatta:

Re: compilazione del kernel

Messaggioda conraid » mer mar 04, 2009 11:23

raffaele181188 ha scritto:Il punto è che io davo per scontato che uno tiene aggiornata la propria distro (che sia Slackware o Ubuntu o FreeBSD, con l'ULTIMO kernel fornito dalla stessa. In questo modo NON RICOMPILA lui, ma ha il supporto (ovviamente è stato ricompilato da altri, ma questo a me utente finale non importa perchè ho un kernel che funziona e non mi devo ammazzare per ricompilare niente). Spero di sembrarti meno contradditorio adesso. Lo davo per scontato perchè è buona norma tenere la distro aggiornata su tutto, anche sul kernel


Prendi Slackware. Ha un kernel 2.6.27.7
Ok, la serie di 2.6.27.* è una serie di mantenimento, significa che saranno corretti i bug per un bel po', per questo Pat non aggiornò al 2.6.28 leggendo il changelog. Ma se guardi il changelog del 2.6.28 noterai che ci sono driver aggiunti, altri migliorati, altri peggiorati (a volte succede anche questo con particolare hardware), etc... Se uno ha bisogno di queste cose perché non ricompilarsi il kernel, soprattutto in ambito home dove non c'è il problema di aggiornamenti in serie e possiamo anche fare test?
Io non ho nemmeno accennato all'aumento di prestazioni, ma per esempio con la 12.1 non mi andavano i tasti di regolazione del monitor del notebook, dovetti fare delle "accrocchi" con acpi. Così come non mi andava il microfono. Ricompilando il kernel nelle varie release successive hanno funzionato entrambi, perché hanno inserito il supporto acpi per i notebook hp e migliorato i driver intel audio. In compenso mi è peggiorato il riconoscimento del rf_kill del wifi, ma risolvo usando wicd invece degli script automatici.
Perché non aggiornarlo? Solo per fare il purista?
E Pat non avrebbe aggiornato se non alla prossima release o per bug di sicurezza (lascia perdere che io uso current)
Poi uno fa come crede, la mia non vuole essere una posizione contro di te, ma non mi piace quando si dice "non serve ricompilare", "non bisogna mai usare questo", etc... come se fossero verità assolute. In ogni contesto c'è un un esigenza diversa.

Avatar utente
lablinux
Linux 4.x
Linux 4.x
Messaggi: 1107
Iscritto il: gio nov 27, 2008 12:23
Desktop: Gnome
Distribuzione: Debian testing
Località: Rho

Re: compilazione del kernel

Messaggioda lablinux » mer mar 04, 2009 12:27

Solo per letto e quindi mai testato, sembra che si ottenga un miglioramento delle performaces ricompilando le librerie.
E' corretto?

Ciao Michele