Pagina 1 di 2

slackware 486?

Inviato: mar 17 lug 2012, 15:41
da conraid
stavo cercando di avviare una stable tramite qemu-kvm, prima c'era qemu-system-386 o qualcosa di simile, ora solo qemu-kvm da cui far partire un tipo di cpu con l'opzione -cpu
Se io faccio partire la stable 13.37 con qemu -cpu 486 non parte dicendo "This kernel requires a i586 cpu..."
Che senso ha allora a questo punto compilare il tutto con 486?

Re: slackware 486?

Inviato: mar 17 lug 2012, 22:24
da slux
Anch'io credo che oggi sia solo una castrazione.Ormai direi che compilare per i686 sia il minimo sindacabile,però Pat la pensa diversamente evidentemente....

Re: slackware 486?

Inviato: mer 18 lug 2012, 12:59
da lablinux
i586 sono i primi pentium, i686 dal pentium 2 in avanti. Puoi provare a usare cpu pentium2 (anche se non so come sia il parametro).

Re: slackware 486?

Inviato: mer 18 lug 2012, 13:08
da d4z_c0nf
ma credo che conraid si chiedesse il senso di avere una distribuzione compilata per 486 con kernel di default che richiede come minimo un'architettura i586..
Non mi viene in mente nessuna risposta plausibile :D

Re: slackware 486?

Inviato: mer 18 lug 2012, 13:31
da conraid
d4z_c0nf ha scritto:ma credo che conraid si chiedesse il senso di avere una distribuzione compilata per 486 con kernel di default che richiede come minimo un'architettura i586..
il senso era proprio quello :-)
al di la di qemu, se avessi un pc 486 non potrei utilizzarla, quindi... boh

Re: slackware 486?

Inviato: mer 18 lug 2012, 13:46
da wakkokid
Tra l'altro...
Anche se funzionasse, che senso avrebbe usare oggi un 486? Anche per dei compiti "basilari" come router e simili... se mi basta poca potenza, uso un'altra macchina: 30€ di RaspberryPi (tanto per fare un esempio) e ho una macchina DECISAMENTE più potente e rientro dei 30€ semplicemente sul risparmio di energia elettrica, con tanto di guadagno anche per l'ambiente.
Se vogliamo dirla tutta, usare PC troppo obsoleti è anche antiecologico a causa dell'elevato rapporto Watt-per-istruzione (ovviamente andrebbe considerato anche lo smaltimento del device).
Ormai i laboratori "trashware" non si degnano di effettuare il recupero di macchine più vecchie dei PIII (in certi casi pretendono anche P4 o superiori) e una distro "Mainstrem" come slackware compila per 486. Su certe politiche non mi trovo proprio d'accordo: lasciamo alle varie [puppy/damnSmall/...]linux il supporto all'hardware antico e facciamo si che le distro mainstream siano compatibili con parco macchine di età ragionevole ad esempio da PII in su (che già un PII potrebbe essere sostituito benissimo con un RaspberryPI senza perdita di prestazioni e senza perdite economiche)

Re: slackware 486?

Inviato: ven 9 ago 2013, 18:18
da kimotori
Scusate passavo di qui e la cosa ha attirato la mia attenzione... benchè è roba vecchia da più di un anno, ci sono delle inesattezze.

Slackware ha il kernel a 686 (hugesmp.s) per le nuove macchine e anche per i486. State facendo confusione!! solo i programmi sono compilati per i486, MA,usano mtune=i686 (e qui è ben diverso) in parole povere sono velocissimi perchè compilati su i486 ma che possono utilizzare alcune feature (se presenti nella propria cpu) del i686, (mmx,sse,sse2 etc..) altrimenti tuttla la slackware gira (eccetto il solo kernel hugesmp.s x i686) su macchine datate. Qui sta la differenza. Non tutti i programmi usano mmx sse sse2 3dnow etcc.... e menate varie, anzi, molti programmi ne fanno a meno!! :)

in passato provai a compilare programmi in -O3 -pipe -march=i686 benchè ottimizzatissimo ognitanto crashava!!!passai anche ll' ottimizzazione -O2, pur non crashando, l' avvio dei prog, non era abbastanza scattante, mentre con -O2 -pipe -march=i486 mtune=i686 il sistema era altrettanto veloce, non estremo, ma decisamente stabilissimo!! ne uscì fuori che era meglio la seconda rispetto alle prime 2 opzioni.

Nel wiki ci sono le linee guida per creare pachetti Slackware se li osservate bene, tutti, creano pachetti per i486 ma con le feature del i686 utilizzando la dicitura mtune la quale dona al programma una marcia opzionale aggiunta, se qualora il programma fosse fatto girare su una cpu con tale opzioni :)

Un occhiata al manuale del compilatore gcc sul sito sarebbe da preferire, perchè più utile delle mie spiegazioni terra terra.

Quindi in se volete che le caratteristiche della vostra nuova cpu a 32bit siano attive su un sistema slack, dovete utilizzare un kernel i686, altrimenti se usate un kernel i486 i programmi si fermeranno ad utilizzare ottimizzazioni fino all vecchio i486.
O altrimenti, oggi il 90% delle macchine è a 64bit, usate quello x86_64 oppure solo 64!

Re: slackware 486?

Inviato: sab 10 ago 2013, 19:47
da ZeroUno
kimotori ha scritto:Nel wiki ci sono le linee guida per creare pachetti Slackware se li osservate bene, tutti, creano pachetti per i486 ma con le feature del i686
Le linee guida vengono da pezzi di copia/incolla di altri collaudati slackbuild. Quella parte specialmente deriva dai vecchi slackbuild di Pat (che nel frattempo sono cambiati di struttura, pur mantenendo i flags di gcc). Abbiamo diverse lacune su opzioni del configure per le quali abbiamo optato per la rimozione (ma ora non le ricordo e non ce l'ho sottomano).
Un occhiata al manuale del compilatore gcc sul sito sarebbe da preferire, perchè più utile delle mie spiegazioni terra terra.
Il manuale di gcc è immenso e illegibile agli occhi dei profani (me); per interpretarlo bisogna conoscere già parecchie di queste cose. Per cui è molto benvenuto il terra terra, quindi grazie per le spiegazioni.

Per slackware x86 sono rimasto un po' indietro; nemmeno avevo visto che il kernel smp è per i686 e quello non-smp è per i486.

Poi ci sono ancora residui antichi, pacchetti compilati per slackware 8.1 e mai ricompilati; p.s. "nc" l'ultima ricompilazione è del 2002 ed infatti il pacchetto è per i386. Quello mi sa che non ce l'ha -mtune=i686 : v. lo slackbuild
ma ci sono anche (pochi= pacchetti come xaos e xine compilati per i686:
slackbuild ha scritto:# I would use "-march=i486 -mcpu=i686" here as usual, but with XINE it's all or nothing.
# I'd rather have it work well for the i686/Athlon crowd than suck for everyone.

Re: slackware 486?

Inviato: dom 11 ago 2013, 2:57
da kimotori
Che dire, certo, in passato si usava la conf -mcpu=i686 successivamente sostituita appunto da mtune, che è quasi la stessa cosa, ed immagino che in rete ci sia una risposta meglio buttata della mia, ma oggi il compilatore gcc ha fatto passi da gigante e Pat si è adattato.
Per quanto riguarda alcuni pachetti i686, alcuni vogliono la feature, che so... 3dnow mmx sse di default, del tipo se lo puoi caricare è bene se no ... cambia programma!!! o cpu :)
Piccolo esempio, personale: avevo un pentum 200mhz MMX, l' unica distro che mi permetteva di vedere i divx/xvid era slack o anche gentoo...(10gg di compilazione...)
Le distro a 64bit, spesso, sono compatibili all' indietro, perchè x86_64bit che significa che non è solo a 64bit ma è anche "trentadue bit e sessantaquattro" ossia con librerie per far funzionare alcuni programmi a 32.. (scusa se mi ripeto).

Molte distro Slack derivate (o repository alternativi), fanno tutte lo stesso errore, quello di rendere la propria distro o pachetto, un pò ibrida/o mettendo, anzi, mischiando pachetti compilati i686 e i486. Tecnicamente non sarebbe sbagliato, se le uso su macchine moderne, così facendo, aumenta l' ottimizzazione per quel formato (32bit), ma su macchine datate? e... li ti voglio.. anche solo un misero centrino, 1gb di ram, 1500 mhz... l' esecuzione di un binario a 686 affaticherebbe la povera cpu rallentandone l' esecuzione-caricamento in memoria. Mi spiego meglio, vediti libreoffice, possiamo averlo in due modi, derivato dal binario, (con le ottimizzazioni scelte dallo staff di libreoffice e per sola architettura i686 in poi) o dai sorgenti, e qui sarebbe bene crearli con il classico -march=i486 -mtune=i686, il vantaggio della seconda è la velocità di caricamento rispetto alla versione binaria (i686) in più si segue lo standard della distro con la sua "universalita" di esecuzione. (Naturalmente per universalità intendo su macchine post i386)
Sai che sbattimento compilare libreoffice... ma su una buona macchina in 3-4 ore dovresti avere il pachetto finito, ma.... molti per praticità, pachettizzano sempre e solo il binario 686... facendo preferire l' uso di calligra perchè all' apparenza è più veloce, anche se.. su un' ambiente un pò pesantuccio (NdA :))
Personalmente se volessi un sistema i686 passerei ad Archlinux, o altra distro i686.

Re: slackware 486?

Inviato: dom 11 ago 2013, 9:07
da conraid
Se ho capito bene sarebbe "tipo" un range di ottimizzazioni. Si compila ottimizzato su 686, ma senza usare quelle caratteristiche specifiche che le rendono incompatibile con i processori 486. Ora capisco perché debian è ancora a 386, altre a 586 e così via. I pacchetti però sfruttano molte caratteristiche dei processori 686. Ripeto, se ho capito bene :-)
Quindi secondo te per fare i pacchetti sarebbe più giusto 486/686? io per esempio per slackers.it uso solo march=686, e non ho mai fatto test. Del resto a me sembra vecchio il mio pentium4...

Re: slackware 486?

Inviato: dom 11 ago 2013, 12:18
da kimotori
Certo, se mi sono spiegato bene, per sommi capi è così.
il pachetto se compilato 386 486 586 o 686 ha grandezze diverse, e si comporta diversamente quando si "apre in memoria ram", altra cosa è l' ottimizzazione, quel famoso -O2 : di base la maggior parte delle distro preferiscono un ottimizzazione media (perl appunto O2) e non estrema, ad alcuni piace avere il systema in -O3 che, seppur possibile, spesso genera codice instabile, ma la mia esperienza si ferma al 2007, da allora, dopo il test su -O3 (usavo gentoo) ho passato i guai a "manutenerlo", lo abbandonai e non tornai mai su O3, di contro, alcuni programmi più semplici, tipo chat e lettori di posta o rss li compilai su slack con opzione -O3. La velocità o meglio l' immediatezza che osservi, era palpabile :) poi con il tempo ho abbandonato tutto, passavo troppo tempo sul sistema e non su "quel che dovevo farci" :)
Ma nel manuale gcc c'è una spiegazione per ogni tipo di opzione, di recente (un paio di anni credo) in gcc hanno implementato la dicitura -march=native che serve appunto a compilare nella architettura nativa, ossia se hai un 486 compilerà per 486, se hai un core2, compilerà con -march=core2, quindi, gcc con l' opzione native, autodetermina l' architettura della macchina su cui gira il sistema.
Se volessi un sistema compilato ad hoc per la mia macchina, preferirei usare gentoo. Li si che compilerei tutto con native :)
Quindi ben vengano i pachetti i686 dentro una slack, ma se poi gli utilizzatori utilizzeranno il kernel 486, è solo uno spreco di dimensioni..di contro una vecchia architettura avrà come risultato una dicitura simile al tuo qemu conraid. Il 686 è per molti, ma non per tutti.


Ecco penso che qui sia più chiaro di come lo dico io:

http://gcc.gnu.org/onlinedocs/gcc/i386- ... tions.html

Credo che se rispecchiate lo standard di Pat, con i repo creati da voi tutti di slacky.eu, ci uscirebbe una distribuzione slack derivata :) Oppure altre distro minori utilizzerebbero i vostri repo.

Re: slackware 486?

Inviato: dom 11 ago 2013, 18:56
da Blallo
Offtopic: La discussione è interessante :D
kimotori ha scritto:ad alcuni piace avere il systema in -O3 che, seppur possibile, spesso genera codice instabile, ma la mia esperienza si ferma al 2007, da allora, dopo il test su -O3 (usavo gentoo) ho passato i guai a "manutenerlo", lo abbandonai e non tornai mai su O3
Ho compilato una Linux From Scratch sul mio i5 con 8gb di ram.
Almeno per i pacchetti base, -O3 continua ad essere dannatamente instabile.

Re: slackware 486?

Inviato: dom 11 ago 2013, 20:25
da hashbang
kimotori ha scritto:ad alcuni piace avere il systema in -O3 che, seppur possibile, spesso genera codice instabile, ma la mia esperienza si ferma al 2007, da allora, dopo il test su -O3 (usavo gentoo) ho passato i guai a "manutenerlo", lo abbandonai e non tornai mai su O3
Non ci ho mai trovato nulla di interessante in -O3, se non l'uso di tale flag per sperimentare qualcosa di diverso.
Io, quando devo compilare per me stesso, vado sempre di "-O2 -march=native". Anche su FreeBSD, tutti i miei ports sono compilati con quei flag.

Re: slackware 486?

Inviato: lun 12 ago 2013, 1:01
da kimotori
hashbang ha scritto:
kimotori ha scritto:ad alcuni piace avere il systema in -O3 che, seppur possibile, spesso genera codice instabile, ma la mia esperienza si ferma al 2007, da allora, dopo il test su -O3 (usavo gentoo) ho passato i guai a "manutenerlo", lo abbandonai e non tornai mai su O3
Non ci ho mai trovato nulla di interessante in -O3, se non l'uso di tale flag per sperimentare qualcosa di diverso.
Io, quando devo compilare per me stesso, vado sempre di "-O2 -march=native". Anche su FreeBSD, tutti i miei ports sono compilati con quei flag.
Concordo pienamente, ma native ormai non lo uso più, perchè spesso mi diletto a copiare il mio file system su usb e a lanciarlo su di un altro pc :) con native, mi limiterei solo sulla mia macchina :).
Ma su slackware uso sempre lo standard di Pat., Veloce e "snello"

Re: slackware 486?

Inviato: lun 12 ago 2013, 8:26
da hashbang
kimotori ha scritto:Concordo pienamente, ma native ormai non lo uso più, perchè spesso mi diletto a copiare il mio file system su usb e a lanciarlo su di un altro pc :) con native, mi limiterei solo sulla mia macchina :).
Ma su slackware uso sempre lo standard di Pat., Veloce e "snello"
Io non copio mai il mio file system su USB, quindi diciamo che il problema non me lo pongo e posso cercare di ottimizzare un po'.


PS: Io una gentoo tutta in "-O2 -march=native" l'ho installata sul mio vecchio PC (una CPU AMD i686 con 10 anni sul groppone, 256MB di RAM da me portati ad 1GB e 60GB di HD). Che dire, la velocità di esecuzione delle applicazioni e quella di boot erano qualcosa di spaventoso. :shock:
Pensa che un mio amico (a digiuno di informatica) era convinto che lo stessi prendendo in giro, quando gli dissi che il mio era un vecchio PC arrivato al decimo anno di "servizio". Pensava seriamente che fosse un PC comprato qualche mese fa. :roll: