Newsgroup: it.comp.os.dibattiti
Titolo: Una esperienza per capire quanto è facile e semplice Linux.....

Vorrei raccontarvi una bella esperienza per farvi
capire quanto è semplice il pinguino. E soprattutto
quanto è economico, facile da usare, coerente,
intelligente... il miglior sistema operativo del mondo.
Parliamoci subito chiaro: non sono un estimatore del
pinguino. Considero Linux un sistema operativo poco
più che mediocre e credo che solo in certi ambiti
applicativi (armadio dei server, set top box) possa
servire a qualcosa. Ciò che più mi infastidisce sono
soprattutto i "linuxari", che difenderebbero quel coso
contro tutto e contro tutti. Quindi, segue che "Linux è
già pronto per il desktop", "Se non si diffonde il
pinguino è a causa di quella monopolista di Micro$of",
"Nessuno ha niente da imparare da Windows: se non
lo capisci sei un troll" e diecimila altre scemenze che
non sto qui a commentare.
Problema. Piastra madre Gigabyte K8VNXP, con tre
controller: Controller EIDE VIA 133, controller SATA
VIA, e Controller RAID della ITE.
Il controller RAID della ITE non può gestire (malgrado
quanto detto dal sito della Gigabyte) le unità ATAPI,
e quindi ho collegato DVD, Masterizzatore e ZIP su
controller EIDE 133, e gli hard disk sul controller RAID
(configurato per funzionare come un controller ATA).
Vogliamo installare Linux su questo sistema, dove
abbiamo già installato Windows 98 e Windows XP.
Cominciamo a vedere cosa accade con Windows 98.
Il controller RAID ha un BIOS. Quindi, io posso
accedere a tutti i dischi utilizzando il BIOS del sistema.
Segue che sotto Windows 98 posso eseguire l'installazione
senza alcun problema: il sistema si installerà.
Certo, le unità andranno in "modalità compatibile" proprio
perchè l'OS non può usare i propri driver a 32 bit per
accedere al disco (il controller RAID non è agli indirizzi
standard di un controller EIDE e quindi ESDI_506.PDR
non potrà mai interfacciarsi con esso). Ma si installa,
funziona.
Il chè è importante perchè a quel punto io posso
installare dal Cd-Rom i drivers forniti dalla ITE, riavviare,
ed alla prossima installazione trovo il mio controller RAID
che lavora ottimizzato e con i suoi drivers a 32 bit.
Questa mania dei kernel Linux di bypassare il BIOS sempre
e comunque, come vedremo, è un male.
Vediamo cosa succede con Windows XP. Windows XP non
ha un BIOS driver. Il chè potrebbe far dire ai linuxari del NG
che sia come Windows. Ma, in compenso, ha un'architettura
decente per l'installazione del nuovo hardware ed un
sistema perfettamente standardizzato per l'esecuzione dei
binari. Che è la salvezza di quell'OS e lo rende meglio di
Linux ora e per sempre.
L'installer di Windows XP richiede il dischetto con i drivers.
Questo dischetto si crea semplicemente copiando tre file
scaricabili dal sito della ITE su un floppy vuoto. Uno di
questi file è il file .INF. Che è la salvezza di Windows XP
perchè l'OS può intercettarlo, capire cosa deve fare con
i drivers presenti sul dischetto, memorizzare il driver
in una propria cartella (in modo che al riavvio del sistema
Windows XP parta senza bisogno di reimmettere il
dischetto), e proseguire il processo di installazione.
Notate che lo stesso driver è utilizzabile sotto Windows XP,
sotto Windows 2000 e credo sotto Windows NT.
Notate anche che lo stesso driver gira sia che Windows XP
sia in quel momento in esecuzione su un Athlon, sia che sia
in esecuzione su un Pentium, sia che sia in esecuzione su
un K6-3. Per la precisione.
Vediamo adesso che cosa succede con Linux. E qui ci
divertiremo.
Intanto occorre specificare quale Linux, perchè Linux, in
realtà, è solo un kernel. Quel kernel poi diventa un sistema
operativo vero e proprio attraverso una miriade di altri
elementi (Xfree, la GUI, i programmi di configurazione ecc.
ecc.). In altre parole, non c'è Linux, ma ci sono le distribuzioni:
il Linux di RedHat, quello di Suse, quello di Knoppix e
via dicendo.
Scegliamo la Suse 9.1, anche perchè è quella che appare
essere più curata (Fedora e Mandrake non mi sembrano
granchè, quindi....).
Prendiamo il CD 1 della Suse, e riavviamo il PC con il Cd
dentro il lettore. Primo intoppo: Yast non vede i dischi rigidi.
Perchè? Perchè il kernel Linux che viene caricato alla
partenza dall'installer non è abbastanza furbo da passare,
una volta visto che non sembrano esserci dischi fissi,
automaticamente in una modalità compatibile che consenta
al sistema di comunicare con gli hard disk indipendentemente
dal controller utilizzato, usando semplicemente l'interfaccia
del BIOS.
Vabbè, ci sarà qualche soluzione. Sul Cd della SUSE c'è un
file che dice che creando quattro floppy speciali, è possibile
fare leggere a Yast dei drivers per controller non standard
(come controller RAID o SCSI), prima dell'installazione.
Ok, proviamo, penso io. Il floppy che contiene i drivers che
servono a me è il due, quindi provvedo a creare solo quello
(gli altri floppy non contengono drivers per i controller
dischi SCSI o RAID).
Riavviamo Yast, e premiamo F3. Yast legge i drivers presenti
sul dischetto. Peccato che tra questi non vi sia alcun drivers
relativo al controller ITE (che è quello che serve a me).
Ok, altra installazione fallita. Proviamo in altro modo. Sempre
sul file readme della distribuzione, si fa riferimento alla possibilità
di aggiungere il drivers necessario al dischetto (più o meno come
si fa in Windows XP: copi i file scaricati dal sito internet del
produttore su un dischetto, fai partire l'installazione di Windows
XP, premi F6 e fa tutto lui).
Allora, prendiamo un dischetto, e copiamogli i drivers per Linux
scaricati dal sito internet della società (esattamente come si
fa in Windows). Riavviamo Yast. Premiamo F6. Yast legge
i contenuti del dischetto. Peccato che non capisca che
iteraid.o è proprio un driver dischi che lui deve caricare, e
che se ne freghi altamente di lui. Yast: nessun disco trovato.
Installazione fallita (e tre).
Ok, torniamo su Internet con Windows e cerchiamo altre soluzioni
(giusto: e se non ho Windows? Bello un OS che si installa solo
cercando per tre giorni soluzioni per mezzo di un altro OS. E
proprio l'ideale per essere venduto su un PC come sistema
operativo unico. Poi si lamentano se i commercianti non vendono
PC senza Windows preinstallato....).
Trovo un documento scritto da un sig. Pincopallino tedesco che
dice che in fase di installazione, quando l'installer chiede la
lingua, è possibile forzare il sistema ad usare iteraid.o per
mezzo di insmod.
Ok, nel file zip scaricato dal sito di ITE ci sono dei file iteraid.o.
Notate il plurale. Perchè, in realtà, c'è il file iteraid.o di Suse 8.2,
il file iteraid.o di RH 7.2, il file iteraid.o di Fedora ecc. ecc.
Ok? Io devo installare il driver su una Suse 9.0. Che guarda caso
non c'è.
Vabbè penso. Usiamo il driver della Suse 8.2. Trattandosi della
stessa distribuzione, c'è speranza che sia ugualmente compatibile
con una distribuzione *successiva*.
Microsoft ha fatto i soldi perchè i problemi della compatibilità tra
i binari non sono mai stati messi a carico del cliente, ma solo
a carico di chi progetta l'OS. Tanto vero, che ci sono applicativi
che girano su Dos 5 o su Dos 7.1 o su Windows 98, o su
Windows XP. Si chiama *retrocompatibilità*. Cambiamo solo
alcune cose che sono essenziali e lasciamo le altre inalterate. O
creiamo dei sottosistemi che gestiscono la retrocompatibilità
con i vecchi applicativi attraverso dei relink delle syscall o
per mezzo di wrapper.
Ok. Proviamo. Copia iteraid.o su floppy. Avvio dal Cd della
Suse 9.1. Quando Yast chiede la lingua premo CTRL-F2.
Adesso posso usare la console.
mount /dev/fd0 /temp
cd /temp
insmod iteraid.o
Ed insmod mi risponde che iteraid.o non può essere installato
perchè è compilato per il kernel 2.4.x, mentre questo è il
kernel 2.4.y. Come se Windows 95b mi dicesse che
l'applicazione non può essere installata perchè è stata scritta
per Windows 95a.
Non pretendo compatibilità tra i drivers per il 2.4 ed i drivers
per il 2.6 (sarebbe troppo?), ma almeno compatibilità tra i
drivers compilati per due diverse subversion di terzo livello
del kernel mi sembrava il minimo....
Ah ma sono io che non lo so usare! Per esempio, mi ricordo
che su ICOD tempo fa postai una cosa simile ed un certo
Valentino Dialonghi aka Dialtone, linuxista doc, mi disse
che è sufficiente usare quel cazzo di -f per forzare il load
dei drivers.
Ok, riproviamo:
insmod -f iteraid.o
Insmod comunica che ha forzato il caricamento del modulo
nel kernel. Ora possiamo lavorare, wow!
CTRL-F1. Vai Yast, rileva i dischi sul controller RAID!
Nessun disco trovato. Controllare il vostro hardware.
Simpatico. Ho provato più volte. Alla fine ho potuto realizzare
che in pratica il drivers comunicava a Yast una tabella delle
partizioni totalmente errata. La tabella delle partizioni è
corretta (realizzata su quel sistema a regola d'arte due giorni fa con
Partition Magic e funzionamente perfettamente con
Windows 98, Windows XP, perfetta sia per ScanDisk
che per DiskMinder).
Bello, no? Capite cosa è successo? Voi dite al kernel di
caricare un driver scritto per una subversion diversa del
kernel, forzandolo con l'opzione -f? E lui tutto bello contento
si mette a sparare minchiate a yast. Fortuna che yast non
rilevava alcuna partizione. Se invece avesse rilevato una
partizione, e l'utente ignaro di tutto si fosse messo ad
installare su disco? Cosa avrebbe fatto un driver così
malfunzionante agli altri dati del disco, magari a quelli
su FAT?
Va bene. Installazione fallita (e quattro).
Cerchiamo aiuto su un NG. Andiamo su it.comp.os.iniziare.
E lì renaissance mi dice due cose importanti:
a) non puoi usare un drivers su due kernel diversi, anche se
sono entrambi 2.4.
b) l'unica soluzione sarebbe ricompilare il modulo per la
tua attuale versione del kernel, ossia per la versione del
kernel usata nella tua distribuzione.
Solo che c'è un problemuccio. Non si può compilare un
modulo sotto Windows, ma solo sotto Linux.
Chiaro il concetto? Insomma, se vuoi installare il tuo linux
ti serve un modulo che si compila sotto linux. Che ancora
non hai. Esempio di ottima ingegnerizzazione, non
credete?
Ma c'è una soluzione. Quale? Semplice: ti installi Suse
con VMWare su una macchina virtuale sotto Windows,
e li ti crei un kernel ad hoc, e ti compili il tuo iteraid.o in
modo da averlo compatibile con la tua distribuzione.
Semplice no? D'altra parte, tutti sanno che VMWare è
a pagamento. Ed io devo installare un programma a
pagamento per rimediare alle caratteristiche di fessoide
progettazione del sistema operativo del futuro (e tutto
perchè non esiste un bios driver), rinomato per il fatto
che dà di più di Microsoft e non costa niente.
Semplicemente geniale.
Per fortuna che avevo un computer secondario con
processore a 300 Mhz e posso installare lì Linux.
Certo, la ricompilazione del kernel durerà tre ore,
ma almeno posso tentare di fare qualcosa.
Installiamo Suse. Adesso copiare i file iteraid.c, iteraid.h
e makefile in una directory e lanciamo il make.
Ok, errori a go-go. Perchè? Perchè i sorgenti puntano a
dei file che si trovano in directory con un nome leggermente
diverso da quello in cui è stato installato il kernel della
mia distribuzione.
Per esempio, il make cerca i file in una directory
usr/src/linux-2.4
mentre Suse tiene i sorgenti del kernel
in usr/src/linux-2.4.99 ed ha un link che si chiama
usr/src/linux.
Paolitto, ho pensato, mi ha detto che la posizione dei file è
stata perfettamente standardizzata nelle ultime distribuzioni.
C'è un documento seguito come la Bibbia da tutte le
distribuzioni: la Linux Standard Base, LSB per gli amici.
Infatti. Si vede. C'è l'ho davanti allo schermo quanto è
seguito quel documento lì.
Va bè, creiamo un link simbolico che si chiama usr/src/linux-2.4
e non se ne parla più.
Ancora errori su errori. Evidentemente, anche il contenuto delle
cartelle che contengono i sorgenti del kernel è lievemente
diverso rispetto a quello che si aspettano sorgente e makefile.
Non vi posso dire cosa pensavo in quel momento del pinguino
perchè diventerei poco educato.
Ma quel coso purtroppo mi serve installarlo perchè è richiesta
ad un ingegnere una minima conoscenza unix e quindi...
continuiamo a sbatterci la testa.
Torniamo al nostro buon Windows XP. Colleghiamoci ad
Internet e cerchiamo aiuto. Sempre il ragazzo tedesco che
prima ho citato ha trovato il modo di modificare i sorgenti
del kernel in modo da integrare il file iteraid.c.
Ok, penso. Posso fare anch'io queste modifiche ai sorgenti
del kernel. Poi, eseguo due ricompilazioni del kernel.
In una, iteraid.c viene compilato come modulo. Così, potrò
prendere il tanto sospirato iteraid.o creato per essere
compatibile con il kernel che usa Suse.
Nell'altra, compilerò iteraid staticamente nel kernel. Così,
avrò un bzImage che contiene un kernel in grado di
gestire nativamente i controller dischi ITE RAID,
senza bisogno di caricare moduli.
Pertanto, per ben due volte: make mrproper, make menuconfig,
make dep, make bzImage, make modules, make modules_install.
Visto che sono su un 300 Mhz, tempo medio dell'operazione
6 ore....
Comunque va a buon fine, e mi ritrovo con il mio iteraid.o
ottimizzato per la mia versione del kernel (compilo come
athlon perchè, per fortuna, mi hanno informato che il
kernel usato dall'installer di Suse è ottimizzato per Athlon
altrimenti avrei avuto altri casini...).
Ok. Proviamo.
Riavvio del sistema. Yast chiede la lingua d'installazione.
CTRL-F2 per accedere alla console.
Di nuovo:
mount /dev/fd0 /temp
cd /temp
insmod iteraid.o    (con il nuovo modulo che adesso ho)
Insmod installa iteraid.o. Ci sono riuscito! Ci sono riuscito!
Adesso Yast vede i miei dischi. Gli dico di installare in
una partizione Linux creata apposta. Suse non usa Ext3,
ma usa ReiserFS, quindi Yast formatta la partizione con
questo file system.
Dopo ci riversa tutto il contenuto del Cd nr. 1 (dei cinque
previsti).
Adesso è previsto un riavvio del sistema. Normalmente,
GRUB dovrebbe caricare il nuovo kernel di Linux, che
dovrebbe caricare la seconda parte dell'installazione
che procede copiando i file dei cd-rom nr. 2,3,4,5,
settando la password di root e la password utente e
chiedendo quale wm si vuole all'avvio.
E riecco i guai. GRUB carica sì il kernel Linux su
/dev/sda7 (la prima unità RAID dove è installato
Linux), ma siccome il kernel installato dalla distribuzione
non contiene alcun driver per l'accesso al controller
ITE, il sistema si blocca con un bel:
kernel panic: no init found.
Va bè, penso. Me l'aspettavo. Ora prendo il kernel
che ho ricompilato dal Linux sulla macchina
secondaria, e che contiene il codice di iteraid.c
compilato staticamente, lo porto su una partizione
Dos, e lo faccio partire con loadlin. Poichè questo
kernel contiene il codice per interfacciarsi con il
controller Raid, c'è speranza che riconosca automaticamente
la partizione Linux e parta.
Proviamo:
kernel panic: unable mount FS root.
Bello. Non c'è che dire. Ci penso un pò sù e dico: però,
forse il problema è che questo kernel non ha compilato
staticamente il supporto per ReiserFS. La partizione
Linux non è in Ext2, ma in ReiserFS. Poichè il kernel
non può montare moduli (perchè non può accedere al
disco), è chiaro che non può neanche accedere a
ReiserFS.
Ok, torniamo sulla macchina secondaria. Ricompiliamo
il kernel con il supporto per athlon, per iteraid.c, e
per reiserfs, tutti compilati staticamente nel kernel.
Altre tre ore perse. Kernel trasferito sulla nuova
macchina. Provo a farlo partire.
kernel panic: unable mount FS root.
Analizzando meglio il log del kernel, ho osservato un
bel unable to find root=/dev/sda7. Significa una cosa
precisa: il kernel non carica il driver ITE RAID prima
di tentare di trovare /init. Il chè fa sì che anche se il
modulo iteraid.c è compilato staticamente nel kernel,
ciò non è di alcun aiuto.
A questo punto ho mollato. Secondo voi Bill Gates
dovrebbe avere paura di un prodotto simile?
Saluti
Vegeta

 dovrebbe avere paura di un prodotto simile?
Fammi capire, il produttore di hardware 'minchiolo' non distribuisce un
driver decente come fa per windows ed e` colpa di linux?
Peggiori col tempo caro sajan...
-- 
Valentino Volonghi aka Dialtone
Linux User #310274, Proud Gentoo User
Blog: 
http://vvolonghi.blogspot.com
Home Page: 
http://xoomer.virgilio.it/dialtone/

Vegeta wrote:
[CUT]
oltre a cio' che ti ha risposto Valentino Volonghi
vorrei aggiungere che il tuo è un caso limite, io ho avuto esperienze
contrarie per quanto riguarda il supporto harware, per esempio ho una
scheda TV col CDROM dei driver solo per win98, guarda caso non esistono
driver per windows2000 nè XP,sempre guarda caso la scheda in questione
funziona meglio che sotto win98 sulla mia Slackware, come su tutte le
distribuzioni che installo per provarle,certo non è la stessa cosa pero'
direi che è singolare che dell'hardware supportato da win98 non lo sia dalle
versioni successive, come hai scritto ??? compatibilità con le versioni
precedenti ??? ho capito male ??
-- 
Linux user "Slackware-dotato" 

 ha scritto nel messaggio
news:IqhHc.9837$tj3.4...@news3.tin.it...


 Vegeta
bttv: driver version 0.7.108 loaded
bttv: using 4 buffers with 2080k (8320k total) for capture
bttv: Bt8xx card found (0).
bttv0: Bt878 (rev 2) at 02:0d.0, irq: 21, latency: 32, mmio: 0xcf000000
bttv0: using: Lifeview FlyVideo 98/ Lucky Star Image World ConferenceTV LR50
[card=21,insmod option]
bttv0: gpio config override: mask=0xffffffff,
mux=0x0,0x1,0xffffffff,0xffffffff,0xffffffff
bttv0: FlyVideo_gpio: unknown tuner type.
bttv0: FlyVideo Radio=no  RemoteControl=no  Tuner=-1 gpio=0x3fc0ff
bttv0: FlyVideo  LR90=yes tda9821/tda9820=no  capture_only=no
bttv0: using tuner=1
bttv0: i2c: checking for MSP34xx @ 0x80... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA7432 @ 0x8a... not found
bttv0: PLL: 28636363 => 35468950 .. ok
bttv0: registered device video0
bttv0: registered device vbi0
ti basta ?
-- 
Linux user "Slackware-dotato" 

 > Ok. Mi potresti dire qual č il chip montato sulla


 
OK! hai trovato i driver bravo ! 
ora che ne dici di imparare anche a quotare ??
-- 
Linux user "Slackware-dotato" 


Non c'è peggior sordo di chi non vuol sentire, eh?
Ora ti spiego perchè è colpa di Linux.
1) Mancanza di ingegnerizzazione. Il software deve cercare
di risolvere i problemi all'utente, non viceversa. Anche perchè
il tempo delle persone ha un valore, anche economico.
Nessuno vuole l'auto che si cambia le pastiglie dei freni
usurate da sola. Ma un auto che abbia una spia per
indicarmi che i freni hanno le pastiglie usurate sì.
Ma un auto che possa continuare a funzionare anche solo con i
freni anteriori (freni posteriori con i condotti dell'olio rotti?
il computer esclude il circuito automaticamente), fin quando
arrivo dal meccanico, sì.
E' l'OS che deve aiutare l'utente, non viceversa.
In questo PC c'è un BIOS. Perfettamente funzionante. Linux
dovrebbe eseguire un analisi del sottosistema dischi a
partire dal BIOS. Poi, determina quali sono le unità che
può gestire con i propri drivers a 32 bit, e quali sono quelle
che devono continuare ad essere gestite con il BIOS perchè
non c'è alcun driver installato che le supporti. Il sistema
si sarebbe installato perfettamente. Poi, l'utente avrebbe
potuto compilarsi un driver ottimizzato per i cavoli suoi.
Sul sistema installato sul suo PC. Non su un secondo sistema
(che puoi non avere), o peggio ancora su una macchina
virtuale. Peggio ancora poi ove si pensi che stiamo parlando
di un OS dove i problemi di drivers in linea di principio ci
sono e quindi la compatibilità ottenuta attraverso il BIOS
della periferica sarebbe una santa cosa (una volta che c'è
l'hai, qualsiasi periferica abbia un BIOS funzionerà).
Vero è che ci sono BIOS che non supportano unità di
dimensioni superiori a 32 Gb, ma con degli switch di
configurazione (opzione -exclude_bios), ad esempio,
risolvi tutto.
2) Progettazione raffazzonata ed approssimativa. Anche
Windows XP non usa un BIOS driver. Però:
a) Esistono i file .INF. Percui, quando premo F6 in fase
di installazione e metto il dischetto, l'installer di Windows
intercetta i file .INF e capisce che quel ATARAID.DRV
e proprio un driver per un controller dischi non
standard.
b) C'è una progettazione. ATARAID.DRV viene copiato
nella directory di Windows e viene subito eseguito da
Windows prima di caricare qualsiasi altra cosa. Quindi,
quando l'installer di XP riavvia il sistema dopo avere
copiato tutti i file, al riavvio verrà caricato il Boot Loader
di XP, che usando il BIOS caricherà il loader di NT,
e questo avvierà per prima cosa ATARAID.DRV.
In questo modo potrà essere caricato tutto il resto
del sistema operativo.
Sotto Suse questo non accade perchè l'installer non
copia nella partizione ReiserFS il kernel ed il modulo
inserito con il dischetto, riconfigurando il kernel stesso
per caricarlo come prima altra cosa al riavvio.
Conseguenza: nella prima fase dell'installazione riesci
a copiare dei file su disco (perchè con F2 e poi
insmod iteraid.o sei riuscito a caricare il driver ed
ad accedere al disco). Ma al riavvio, quando il
sistema non ha più il driver in memoria, viene
caricato solo il kernel. Che non avendo nessun sistema
di failsafe ti spara un bel kernel panic.
3) Compatibilità binari inesistente. La scena del modulo
compilato per il kernel 2.42.16 che non va sul kernel
2.42.99 (ovvero, si carica con insmod -f, e comincia
a comunicare al kernel dati errati), è da consegnare ai
posteri per idiozia ed approssimazione nella progettazione
di un OS.
A parte il fatto che una situazione simile mette a rischio
tutti i dati sul disco dieci volte più di qualsiasi virus su
Windows, ci sono da fare delle considerazioni.
Intanto, è necessario escludere qualsiasi responsabilità
di ITE. Il codice in C è corretto, tantovero che ricompilato
con il kernel 2.42.99 funziona bene.
Il problema, semmai, è che tra una versione del kernel
e l'altra si continuano a cambiare costantemente versioni
del GCC, simboli di debug e via dicendo. Quello che
non si capisce, è quale vantaggio possa venire da
una simile situazione. Che cosa migliorano tra una
versione e l'altra dei vari kernel queste piccole
differenze? Prestazioni? Stabilità? O forse il problema
è che ognuno fa quello che cavolo vuole ed il risultato
è una confusione immensa?
Non è ammissibile che ITE debba distribuire dieci
versioni di ITERAID.O: una per RedHat, l'altra per
Suse, l'altra per Fedora, l'altra per Mandrake....
E se uso Knoppix? E se uso Gentoo? Che deve fare
un produttore: ci sono trenta distribuzioni * 10
sottoversioni, e distribuisce 300 file binari che
differiscono ognuno di pochi byte dall'altro e che
fanno tutti la stessa cosa?
Demenziale poi la situazione del binario progettato per
Suse 8.2, che non va bene per Suse 9.
Anche qui, mancanza di ingegnerizzazione. Creiamo un
formato per i binari che contenga informazioni per i
metadati, ed ogni volta che il loader del kernel legge
che questo binario è compatibile con le specifiche
SPEC001 (posto che il kernel sia progettato per le
specifiche SPEC002), sia carica un layer di compatibilità
che traduce le chiamate delle specifiche SPEC001 in
chiamate alle specifiche correnti. In modo che lo
stesso binario giri almeno su tutti i kernel 2.4 o 2.6.
Anche perchè la tesi che sia l'utente finale a dovere
ricompilare a raffica, qui ha mostrato la corda. Primo
perchè per ricompilare devi primo averlo installato
Linux. Secondo perchè esistono **clienti** (cominciate
a considerare così gli utenti se volete che Linux
si diffonda) che dicono: io pago un OS, ergo pretendo
che io faccia l'utente, e lui l'OS. Il binario me lo deve
dare il produttore della periferica, o l'os o internet:
non ho tempo (e non mi conviene perchè tanto
l'alternativa c'è l'ho, ed è quella che mi installa quel
cattivone del mio negoziante quando compro il PC),
nè voglia, nè interesse a fare due ricompilazioni del
kernel sul PC di mio cuggino per fare funzionare
il caro Linux.
Saluti
Vegeta

 Ora ti spiego perchč č colpa di Linux.
[STRA-CUT]
Ti quoto in pieno ed esprimo solidarietą.
Le tue critiche mi sembrano costruttive e ragionevoli.
SALUTONI,
WindoM

 Non c'è peggior sordo di chi non vuol sentire, eh?
Probabilmente capisci poco l'italiano ma te lo ripeto:
Se il produttore non fa i driver non e` colpa di linux, poi inventati
quello che vuoi.
Tutto il resto che scrivi non lo leggo neanche, sto ancora aspettanto il
tuo sistema operativo io ROTFL...


 vedremo, è un male.
Si ?
Non ti è passato per la testa che il BIOS dei PC serve solo per il boot e
per quel vecchiume (riferito ad allora, mica ad oggi...) di Windows 98 per
il semplice motivo che è a 16 bit ? E che quindi non può essere
utilizzato nè da Linux nè dai Windows della serie NT/2000/XP ? 
Lasciami capire... hai scritto 409 righe per dire che hai avuto dei
problemi con un driver ?!?!?!?
Dovevi compilare il kernel ? E non potevi montare il disco sul controller
EIDE, ricompilare il kernel e poi rimontare il disco su RAID ?
Probabilmente facevi prima che scrivere questo post....

 ora che ne dici di imparare anche a quotare ??
A Roma ti direbbero: "hai rosicato?" ;-)
Tra l'altro, una mancata retrocompatibilità dei drivers tra due major
releases è normale. Ma un driver che funziona con un kernel 2.4.x e non
funziona con un 2.4.y è sintomo che all'affascinante piramide di vetro del
modello di sviluppo di Linux manca qualcosa di indispensabile a livello
progettistico, ingegneristico od organizzativo. Un lurking attento e
costante al newsgroup linux.kernel apre molte questioni.
Installare una patch su WindowsXP non implica l'installazione di una nuova
versione di tutti i drivers.
SALUTONI,
WindoM

 un driver decente come fa per windows ed e` colpa di linux?
Il problema č che non dovrebbe distribuirne uno solo, ma uno per ogni kernel
e per ogni distribuzione, per un totale ad almeno due zeri.
SALUTONI,
WindoM


Dialtoncino caro, che cos'è quel iteraid.c? e quell'iteraid.h?
Io, che l'italiano lo capisco benissimo, per "produttore non fa
i drivers" intendo "produttore non scrive codice C per i
drivers".
Non intendo quello che intendi tu:
a) abbiamo un file .zip scaricabile da Internet
b) dentro ci sono dieci versioni per dieci distribuzioni + sorgenti
c) purtroppo non bastano perchè c'è ne vorrebbero 300 di versioni,
visto il casino che c'è in linux.
Oppure:
YAST    :     algoritmo cretino:
1) l'utente ha forzato l'installazione di un driver con insmod
2) installazione speciale: i dati vanno in un dispositivo non gestito
nativamente dal kernel
3) copio tutti i dati nel dispositivo
4) preparo il riavvio copiando nel dispositivo Grub, ed il kernel.
N.B.
Il driver speciale usato per l'accesso al punto 1 non lo copio
così il kernel (che non supporta nativamente la periferica), al
prossimo riavvio sparerà un bel kernel panic.
N.B. (2)
Il tutto mentre si potrebbe accedere a questo controller (ed a
tremila altri, magari sconosciuti), usando il BIOS, ma chi se
ne frega perchè sarebbe troppo semplice ed il povero utente
deve combattere con 3,4 ricompilazioni su una seconda
macchina perdendo 12 ore e non cavando un ragno dal
buco.

 versione di tutti i drivers.
installare un patch su XP (dalle mie esperienze!) puo' comportare la
risoluzione di 1 problema e la nascita di altri 2 .....:-(
dai su', dimmi che non è vero !!
cmq visto che per Linux posso non pagare un solo cent, direi che non mi
posso lamentare, mentre per essere "asservito" a XP dovrei perfino pagare,
ti pare logico ??  a mè no !!
-- 
Linux user "Slackware-dotato" 


No. Per due ragioni:
a) i file di configurazione creati da yast (per esempio \etc\fstab)
punterebbero a /dev/hdb. Poi, quando sposto il disco su RAID,
la partizione diventa /dev/sdb (perchè il controller RAID è visto
come un controller SCSI, non come un controller EIDE)
b) Non cambiava nulla, perchè il kernel non attiva automaticamente
il codice per il controller RAID all'avvio, prima di andare in kernel
panic per no init found. Sto cercando di risolvere cercando tra le
opzioni del kernel.

 pagare, ti pare logico ??  a mè no !!
C'è chi è disposto a pagare per avere qualcosa che sicuramente funzioni e
chi invece è disposto a (s)battersi per qualcosa di diverso. Sono scelte che
si fanno, a seconda delle situazioni e dei momenti.
SALUTONI,
WindoM

 Ti quoto in pieno ed esprimo solidarietą.
si vede che non lo conosci :))
-- 
RiK0
 Il sonno del teschio genera troll, e il quoting li manifesta.

 OK! hai trovato i driver bravo !
Se lo vuoi opensource: 
http://btwincap.sourceforge.net/
Alessandro.

Vegeta ha scritto:

man mkinitrd
-- 
Linux registered user #347063

 Se lo vuoi opensource: 
http://btwincap.sourceforge.net/
Cito dalla descrizione del driver:
 **It is also implemented as a WDM driver, so the same driver works under
Win2000, Win98SE, WinXP and WinMe without modifications**
A quando qualcosa di paragonabile nel mondo Linux?
SALUTONI,
WindoM

 A quando qualcosa di paragonabile nel mondo Linux?
Aggiungo: già sarebbe sufficiente qualcosa di simile a WDM. Ma perché non
muoversi fin d'ora in direzione di qualcosa di più avanzato come questo?
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndevice/html/WDF_intro.asp
Purtroppo l'impressione che ho è che la Microsoft, nonostante le critiche,
sia in perenne innovazione, pur trascurando alcuni settori. Ed ho la triste
sensazione che il mondo OpenSource e FreeSoftware si limiti esclusivamente a
reimplementare cosa già fatte, e neanche delle migliori. A parte il kernel,
che pure non è altro che un eccellente mix di concetti e idee vecchie di
almeno 20 anni, Gnome e KDE non hanno innovato affatto, così come molti
altri progetti più piccoli. Un esempio recente: Mono. Allo stesso modo, non
si è visto un linguaggio della comunità salire ai livelli di eccellenza di
Java o C#.
Il tutto, chiaramente, IMHO.
SALUTONI,
WindoM

 Dialtoncino caro, che cos'è quel iteraid.c? e quell'iteraid.h?
vegetuccio poco caro, io non so cosa sono, se non vanno non sono fatti
miei. Colpa del produttore. Io vivo con i driver binari della ati e ho
vissuto per anni con quelli binari di nvidia senza problemi di sorta.
Tra parentesi, non so perche` usassi una versione 'vecchia' di linux
quando ormai siamo alla 2.6.7 inoltrata che si e` dimostrata ampiamente
stabile e veloce.
Dubito che, a meno di situazione particolarissime, i driver debbano essere
ricompilati per ogni kernel, piu` probabilmente il TUO kernel non era
vanilla (ovvio considerando SuSE e il bizzarro numero di versione 2.4.99)
e pertanto quella che tu credevi essere una minor release, come puo`
essere una 2.4.18 rispetto a una 2.4.17, era in realta` un miscuglio di
backport dal 2.6.x al 2.4 per avere in anteprima piu` caratteristiche
possibili.
Detto questo ripeto: Il produttore e` tenuto a dare dei driver funzionanti
e il problema mi sembra proprio che i tuoi driver non funzionavano,
perche`, anche se per vie traverse, eri riuscito a installarli ma non
andavano uguale.
Detto tra noi poi, io ho una Asus A7N8X-Deluxe con tutto il ben di dio che
si possa immaginare con chipset nforce2 e funziona _TUTTO_ il mio hardware
che ho comprato a dicembre per natale, quindi piuttosto recente. Capito?
Funziona TUTTO, come sul tuo amato windows.
Come mia consueta prassi nei tuoi confronti il tuo post non e` stato letto
perche` sicuramente non contiene informazioni interessanti oltre alla
prima riga.


 e per ogni distribuzione, per un totale ad almeno due zeri.
Ho letto 6 righe (2 solo in questo reply) di quello che hai scritto e mi
stai talmente sulle palle che ti filtro immediatamente...
Non mi va neanche di dirti perche` o per come, men che meno di spiegarti i
tuoi errori. Semplicemente mi stai sulle balle e ti filtro, almeno
pilotino fa ridere perche` si impegna, ma tu sei proprio scarso. poi il
tuo compare vegeta sta scrivendo un sistema operativo suo, tu invece sei
insipido, cosa stai facendo? Implementi palladium tu?
addio


 stabile e veloce.
beh, pero` io un 2.6 non lo metterei ancora su un server di produzione,
se non sotto determinate ipotesi o non avendo altra scelta. :)


 Java o C#.
Odio, il Java non lo digerisco nemmeno con due chili di bicarbonato.
Qui eccellenza si scrive Python.


 kernel.
Su questo non saprei dirti...


Quindi tu intervieni in una discussione senza avere letto interamente
il messaggio del tuo interlocutore? Alle volte mi domando se ci sei
o ci fai.....

 addio
O_o
Tu stai male!
SALUTONI,
WindoM

 se non sotto determinate ipotesi o non avendo altra scelta. :)
Io, ti diro`, non ho ancora avuto un problema che sia uno da un kernel
serie 2.6 e li uso dal 2.5.67 e quasi sempre in versione -mmX contenente
tutte le patch che poi entreranno in -mcX e infine nella mainline
(corrispondono un po` all'unstable-testing-stable di debian).
Anzi, uno si invece, nel 2.6.7-mm1 e 2.6.7-mm2 ho avuto 2 problemi: nel
primo l'orologio andava troppo veloce, sistemato con una patch quando mi
e` venuta voglia (era disponibile subito ma sono pigro). Il secondo aveva
una patch chiamata flexible reverse mmap che mandava a puttane un po` di
roba e sono tornato al 2.6.7-mm1 patchato. Ora sono col 2.6.7-mm6.
Di problemi non ne ho avuti ma e` anche vero che non ho fatto chissa` che
grandi cose. So per certo che c'e` chi li ha gia` in produzione i nuovi
kernel, come c'e` chi ha i 2.0.X in produzione.
In linea di massima per i server seguo la logica del non riparare nulla se
funziona tutto :P.
Se metto su un server nuovo (in futuro) sicuramente pero` considerero`
il 2.6.7 prima dei 2.4 a meno di macchine estremamente critiche.
Su un desktop invece non ci sono discussioni :), 2.6.7 senza pensarci due
volte, aspetto solo che i driver del mio controller raid entrino in
mainline invece che essere nelle -mm per poi passare ai miei affezionati
kernel -ck che per i desktop sono il meglio (si dice anche per server :P)
con la loro capacita` di autoregolare la swapposita` e lo scheduler
isocrono con le policy riscritte (rispetto al mainline).
Tanto l'autore dello scheduler e` lo stesso sia per il mainline che per la
serie -ck :).
Va be... ho spiegato al mia visione contorta delle versioni della serie
2.6 :P.


 Qui eccellenza si scrive Python.
Purtroppo non lo conosco molto, ma prima o poi mi deciderò a scriverci
qualcosa di serio. Però quanti sviluppatori al mondo usano Java e quanti
Python? Quanto sono diffusi l'uno e l'altro a livello aziendale/enterprise?
Se Python è così eccellente la comunità deve trovare il modo di spingerlo ai
piani alti del panorama informatico mondiale!
SALUTONI,
WindoM

quello che fa .NET e molto di più.
ce ne sono N.
Se sei appassionato di VM e compilatori jit basta che consideri
parrot.

 fai.....
Guarda mammino cacchino, ho letto tutto il tuo post e non conteneva
neanche una informazione utile al di la` delle prime 3 righe che
riassumevano il vuoto epocale rappresentato dal tuo post. Fortunatamente
mi e` venuto sonno rispondendoti e pertanto ti ringrazio, anche senza il
tuo sistema operativo sei stato utile a qualcuno. Inoltre giocare con i
diminutivi da appellarti e` davvero appetitoso e credo che ti rispondero`
anche la prossima volta.
Intendiamoci, non sono arrabbiato e neanche incazzato, il contrario, mi
diverti mammino poppino.


 parrot.
"the current release is Parrot version 0.1.0. "
Interessante, ma e' tardi!!
SALUTONI,
WindoM

 Windows in questo senso è terribilmente avanti, purtroppo.
La cosa ridicola di tutta questa storia, che condivido al 200%, e' che 
la fragilita' di linux, che ne impedisce in modo assoluto l'ingresso nel 
campo desktop, non e' solo nei driver. Prendi per esempio il gcc. Lo sai 
che se succede qualcosa a al gcc sei fregato? Peggio che cancellare dll 
a caso in win, almeno li c'e' il sistema che le rigenera. Se si 
sputtanta gcc su un sistema linux sei a terra. Come puo' succedere? Per 
esempio un aggiornamento andato male, ad esempio va via la corrente 
durante la fase di installazione.
Ciao ... Dino
-- 
Non indicare un indirizzo valido nei tuoi post e' un tuo diritto.

 diverti mammino poppino.
Ma solo io ti facico incazzare? Mi metti in imbarazzo cosi', sai?
Ciao ... Dino 
-- 


 le schede Ati?
E cosa sono quei driver per:
	Windows 95
	Windows 98
	Windows ME
	Windows 2000
	Windows XP
Quindi? Diverse versioni di driver per diverse versioni di framework.
Oh, intendiamoci: non è colpa "nostra" se quelli dell'ATI e dell'nVidia
devono rilasciare varie versioni dei loro driver: rendessero pubbliche
le specifiche della loro ferramenta, sarebbe facile per la comunità
scrivere dei driver al posto loro.
+++
Senti, so che brucia ammetterlo, ma stai sparando cazzate. Fermati,
finché sei in tempo, perché dare la colpa all'OS per driver e ferramenta
non ha senso. Gli utilizzatori di Windows lo ripetono tutte le volte che
qualche nuovo utilizzatore di Linux usa questo argomento, non è che
vorrete usare due pesi e due misure, vero?
Ciao,
 Emmanuele.
-- 
Emmanuele Bassi (Zefram)                 [ 
http://www.emmanuelebassi.net
 ]
GnuPG Key fingerprint = 4DD0 C90D 4070 F071 5738  08BD 8ECC DB8F A432 0FF4

 durante la fase di installazione.
Gino, Gino: ma ce l'hai il porto d'armi per sparare stronzate di queste
dimensioni?
Cosa c'entrerebbe il GCC con il resto del sistema?


test wrote:

Denghiu' mà ho già provveduto
-- 
Linux user "Slackware-dotato" 

 wrote in message
news:itjHc.74357$
G%.22952@tornado.fastwebnet.it
[mega cut]
man quoting...
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 argomento, non è che vorrete usare due pesi e due misure, vero?
Lui non ha parlato di mancanza di supporto. Ha parlato di mancanza di
messaggio: "BEEP! Per questo hw non c'e' supporto."
Soprattutto il discorso della forzatura di caricamento di drivers di
versioni precedenti fa senso....
Saluti.

 più.
Pero' fino a Win2000 c'erano 360 set di floppy di avvio diversi, uno per
ogni localizzazione dello _STESSO_ S.O....
E anche oggi ci sono 360 patch diverse una per ogni localizzazione
dello _STESSO_ S.O....


 wrote
in message news:cckg9s$5pd$
1...@lacerta.tiscalinet.it

Cito dalla descrizione di Linux
"Il sistema si puo' avviare spostando il disco con qualsiasi
 distribuzione in circolazione, l'interfaccia a carattere e'
 sempre disponibile ed e' una caratteristica piuttosto utile
 in caso di crash della macchina usata abitualmente. Windows
 al contrario non parte a meno che tu non abbia un clone della
 macchina usata (caso piuttostosto raro, invero). Stessa cosa
 per quanto riguarda le patch: quella per la versione inglese
 non funziona sulla versione italiana".
A quando qualcosa di paragonabile nel mondo Windows?


 - Fabio Fioretti - WindoM :

Che figata arrivare in ufficio di mattina ed avere una signature nuova.
E' evidentemente un fake, VERO ??
HAND,
  ngw

 della comunità salire ai livelli di eccellenza di Java o C#.
definisci livelli di eccellenza, perché si ride....

 piani alti del panorama informatico mondiale!
non è molto pubblicizzato, ma conosco molte persone che vanno in
produzione con python. Inoltre una cosa interessante è che lo si può
integrare dentro zope.

 e per ogni distribuzione, per un totale ad almeno due zeri.
cè una soluzione molto più semplice: rilasci il driver gpl, questo viene
incluso nei sorgenti del kernel e da lì in poi sono le distribuzioni che
si fanno i driver.
E' il discorso che viene fatto per i kernel tainted. Non vale nemmeno la
pena mettersi a debuggare qualcosa che non è documentato.

 hai fatto?
ti rispondo io
RTFM 
ciao
-- 
boydon
See, ho capito. Porto a casa e domani sera gobba in ufficio.
                -- Wil

 volte, [...]
sono perfettamente d'accordo. tanto e` vero che lo tengo su anche io.
(anche se per pigrizia sono rimasto al 2.6.5 -- unica cosa che mi
preoccuperebbe e` che mi sa non e` ancora patchato... ma tanto su quella
macchina li sono monoutente, riko e il mio alterego root :)) )


 piani alti del panorama informatico mondiale!
Beh, Python  e` in grossa diffusione. NASA usa Python, adesso pure
Nokia, per dire... e tanti altri. Non so dirti esattamente i numeri.
Certo, Java e` ancora piu` diffuso. Ma pensa che Python ha avuto (o
meglio, sta avendo) il boom relativamente da poco, rispetto a Java. E
non ha una software house che produce il sistema operativo desktop piu`
diffuso al mondo a spingere.
--------
[0] in realta` e` molto di piu`...


 si vede che non lo conosci :))
rotfl :-))

 intelligente... il miglior sistema operativo del mondo.
la soluzione è una e rapidissima: se il produttore dell'hardware si
sbattesse a fare un driver bene esattamente come si impegna per windows i
problemi non ci sarebbero. Solo che mentre windows richiede la
compatibilità binaria e basta, la comunità linux richiese i sorgenti
sotto linceza gpl.

 nuova. E' evidentemente un fake, VERO ??
:-) Beh, veramente no... So che in questo ng Java non gode di buona fama
(per non parlare di C#) ma io nel panorama mondiale non vedo molti linguaggi
a oggetti altrettanto sofisticati, supportati, standardizzati e con una
piattaforma di sviluppo così solida. Prendendo in considerazione J2SE 1.5
(
http://java.sun.com/j2se/1.5.0/docs/
) e C# 2.0
(
http://download.microsoft.com/download/8/1/6/81682478-4018-48fe-9e5e-f87a44
af3db9/SpecificationVer2.doc, perdonate il .doc :-), entrambi di prossima
uscita, quale altro linguaggio a oggetti garantisce le stesse
caratteristiche?
SALUTONI,
WindoM

 caratteristiche?
C++?


 definisci livelli di eccellenza, perché si ride....
Vedi il reply a Nicholas.
SALUTONI,
WindoM

 corrente durante la fase di installazione.
no tesoro, mi è già successo più di una volta
riparte da dove si era fermato
anche durante un installazione 
ciao
-- 
boydon
Se non fai parte della soluzione, fai parte del precipitato.

 C++?
Mi sembra gli manchi una cosa fondamentale: una macchina virtuale che lo
renda completamente multipiattaforma, e non è una cosa da poco. Inoltre è
molto più ostico, manca una gerarchia delle classi altrettanto completa, non
è type sound e potenzialmente è più soggetto a bug (chi ha detto
puntatori?). Per finire, l'ereditarietà multipla è insopportabile! :-)
Tutto, chiaramente, IMHO.
SALUTONI,
WindoM

 opzioni del kernel.
initrd è stato inventato per qualcosa
io ho sempre saputo che il supporto per il file system o lo compili
statico nel kernel o lo compili come modulo e poi crei l'immagine
initrd
la seconda per te dovrebbe essere praticabile
ciao
-- 
boydon
Pompelmo, s.m.:
        Copricapo protettivo usato dai Vigili del Fuoco.

 Tutto, chiaramente, IMHO.


 che se succede qualcosa a al gcc sei fregato?
no, non lo sapevo.
e ho anche dei server a cui ho *tolto* il gcc. Fortunatamente loro non
leggono il ng e funzionano, se no immagino coglierebbero l'occasione per
scioperare...



tardi per cosa?
Citando Paul Graham quando parla di Arc, il suo dialetto del lisp non
ancora rilasciato: "si vuole fare qualcosa per i prossimi cento anni,
a quel punto a che serve preoccuparsi di un paio di anni in più?"
E qui mi dilungo in un altra direzione:
http://groups.google.it/groups?q=g:thl3903811237d&dq=&hl=it&lr=&ie=UTF-8&selm=1gdq76m.166bs1k5tj8pbN%25aleaxit%40yahoo.com
nota come i linguaggi "non main stream" stiano acquisendo popolarità. 
Pian piano la gente comincia a capire che può usare piattaforme di
altissimo livello allegramente, e tutti i linguaggi dinamici e potenti
(python,ruby,smalltalk,dialetti del lisp) stanno acquisendo una
popolarità enorme.

 Nessuno obbliga ad usarla (io non l'ho mai fatto esplicitamente).
Io si, e da quel momento ho capito che non ne avrei proprio sentito la
mancanza :-)
SALUTONI,
WindoM

piattaforma di sviluppo cosě solida.
SmallTalk? Eiffel? 
considera che entrambi sono multivendor, come piattaformne di
riferimento prenderei GemStone/S+visualWorks e ICE Eiffel.
Sono *piů* sofisticati, piů potenti, altrettanto supportati, piů
standardizzati, e con piattaforme di sviluppo impressionanti. 
Il mondo non si esaurisce in una coppia di parentesti graffe. 

 Per finire, l'ereditarietà multipla è insopportabile! :-)
Neanche a me piace l'ereditarieta` multipla del C++.
Ancora, dai un occhio a quella del Python... di default supporta
ereditarieta` a diamante (Python23).


 KDE? Cosa hanno introdotto di realmente innovativo?
io li ricordo gia` con FVWM.
Ma mi pare che qualcosa di simile ci fosse gia` per Amiga (ma non vorrei
dire una castroneria...)


 sotto linceza gpl.
e peraltro io non capisco perche` un produttore HW che vende HW dovrebbe
avere remore a GPL'izzare i drivers...


 Per finire, l'ereditarietà multipla è insopportabile! :-)
Neanche a me piace l'ereditarieta` multipla del C++.
Ancora, dai un occhio a quella del Python... 


che a run-time non avrai mai problemi di tipi.
neanche java allora lo č, dato che esiste un eccezione proprio
dedicata al type cast. Immagino anche C#, ma non mi sbilancio.

 avere remore a GPL'izzare i drivers...
ma sai, pensa al caso dei winmodem. Tutta la modulazione dei segnali è
fatta con dsp, e nel firmware dei dsp ci sono un mare di brevetti.
Evidentemente i produttori non si sentono tutelati dal sistema dei
brevetti e temono che anche solo rilasciare l'interfaccia sia un pericolo
per le loro proprietà intellettuali.
Il che conferma una volta di più quanto male funzioni la gestione dei
brevetti.

 innovativo?
no, solo trolleggiavo un po' sulle innovazioni di M$. Seriamente, nemmeno
l'interfaccia di windows è molto innovativa. Ok, hanno un framework
curato e l'apparenza delle finestre è uniforme. Se però parliamo di
programmazione e vedi le gtk e gnome (ti parlo di uello perché quello che
conosco e uso) e vedi tutti i binding per i vari linguaggi non è così
terrificantemente diverso.
La coa che mi piace di più di gtk e gnome è proprio la quantità di
binding, che permette di usare le librerie da più linguaggi di
programmazione e che non ho visto negli altri toolkit per unix che ho
studiato. Forse c'è per qt e kde, ma non ho mai approfondito.

 popolarità enorme.
Quelle stime non sono per niente veritiere: Java è a quota 4,2 milioni, in
costante crescita, così come sta crescendo vertiginosamente .NET (pur
partendo in svantaggio, temporalmente parlando, rispetto a Python, Smalltalk
& Co.).
PS: io adoro Smalltalk!
SALUTONI,
WindoM

 puntatori?). Per finire, l'ereditarietà multipla è insopportabile! :-)
ehm, anche java ha l'ereditarietà multipla, ottenuta mediante le
interfacce....
Per quanto riguarda i puntatori,.... Che palle con le referenze di java.
Perché il linguaggio mi tratta come se fossi un deficiente e non mi
lascia tutta l'artimetica dei puntatori?

 SmallTalk? Eiffel?
Conosco molto bene Smalltalk, in particolare VisualWorks. E' spettacolare,
personalmente lo trovo eccezionale ma:
1) E' troppo lento per questioni di tipaggio dinamico e per questioni di
misera efficienza della macchina virtuale.
2) VisualWorks non è quello che definirei propriamente una "piattaforma di
sviluppo completa e funzionale". Mostra limiti in continuazione, a partire
dalla stranissima metodologia di gestione dei progetti. Anche se globalmente
mi ci sono trovato bene, mi sentirei idiota a paragonarlo a VisualStudio o a
Eclipse o ancora a NetBeans o JBuilder...
3) La gerarchia delle classi non è altrettanto completa e funzionale di
quella Java.
SALUTONI,
WindoM

 fatta con dsp, e nel firmware dei dsp ci sono un mare di brevetti.
si, in questo caso hai ragione... io pensavo soprattutto alle schede
video :))


 non mi lascia tutta l'artimetica dei puntatori?
Personalmente trovo la cosa terribilmente comoda, e sicuramente questo mette
tanti sprovveduti al sicuro dallo scrivere codice con bugs terribili... :-)
Cmq, de gustibus. Per me un automatismo in più, quando non è sulla gestione
della memoria che devo perdere tempo ma sull'implementazione delle
specifiche dell'applicazione che sto scrivendo, non può far altro che
comodo.
SALUTONI,
WindoM

 quella Java.
stiamo parlando di linguaggio o libreria? :)


  Forse c'č per qt e kde, ma non ho mai approfondito.
Per Python c'e` e funziona abbastanza bene.
Per Ruby e` in alpha.
Per Perl: 
http://perlqt.sourceforge.net/
Per Ocaml: pare di avere capito che c'e`... ma purtroppo ho trovato solo
link a posts... non il link di un progetto
Comuque fondamentalmente hai ragione... QT e` molto meno
multilinguaggio, afaik.



Ma siamo sicuri che sia legale usare driver sviluppati da un produttore per
far funzionare periferiche non distribuite da questo?
Alessandro.

 lascia tutta l'artimetica dei puntatori?
Giusto. Per questo python ha Pyrex che e` C con la sintassi di python,
leggermente modificata.
-- 
Valentino Volonghi aka Dialtone
Linux User #310274, Proud Gentoo User
Blog: 
http://vvolonghi.blogspot.com
Home Page: 
http://xoomer.virgilio.it/dialtone/

 stiamo parlando di linguaggio o libreria? :)
Di "ambiente" :-) Linguaggio + librerie standard + eventualmente tools
avanzati di sviluppo.
Cosa te ne fai di un linguaggio senza librerie? ;-)
SALUTONI,
WindoM

 Cosa c'entrerebbe il GCC con il resto del sistema?
Tu prova a segare gcc dal tuo sistema e dimmi se poi riesci a 
recuperarlo senza formattare.
La cosa piu' semplice e' spegnere brutalmente il pc verso la fine di 
emerge, quando sta copiando i file e sistemando i link simbolici.
Ciao ... Dino
-- 
Non indicare un indirizzo valido nei tuoi post e' un tuo diritto.

 dedicata al type cast. Immagino anche C#, ma non mi sbilancio.
gabriele caro, ma perche` vai a impelagarti con cotanta ignoranza :). Tu
conosci ruby e python, il meglio del meglio... Ma fregatene di chi dice
che java e C# sono eccellenti ROTFL. Ovvio che lo sono per chi conosce
solo quelli, e per sentito dire poi.


 tutto, rapidamente e bene.
io credo che un linguaggio non *possa*[0] includere una gerarchia di
classi.
perche` e` un linguaggio, non una libreria.
la libreria standard di un linguaggio puo` includere cio`. Ma ancora una
volta non e`cosi` necessario. E` comodo. E solo in un linguaggio di alto
livello.
Ma per il C o il C++ fare esplodere la libreria standard, sarebbe solo un
suicidio controproducente... per come la vedo io. Poi forse si stanno
orientando diversamente loro stessi... (C++ intendo). O per lo meno cosi`
mi era giunta voce.
D'altra parte io tenderei a scrivere il meno possibile in C. Lo userei per
cose di basso livello, per piccole parti in cui la velocita` e` critica e
per pezzi di librerie. Il resto tenderei a scriverlo in un linguaggio di
piu` alto livello. Ormai ce lo si puo` permettere... :)
----------------
[0] proprio per ragioni logiche. un linguaggio e` un oggetto logico ben
preciso. 
-- 
RiK0

 stiamo parlando di linguaggio o libreria? :)
Tanto la libreria di python e` vasta almeno tanto quanto java, se non di
piu`. Purtroppo credo che questo sia un difetto pero`, talmente tanta roba
che ti disorienta se non sai cosa vuoi.


PS: io adoro Smalltalk!
prova ruby :) 

 avanzati di sviluppo.
Parlando di 'ambiente' non ho nulla da obiettare.
Sono anche d'accordo che in generale[0] avere una potente libreria standard
sia senza dubbio un bene.
----------------------
[0] ho gia` spiegato in altro post come la vedo 
-- 
RiK0

 dedicata al type cast. Immagino anche C#, ma non mi sbilancio.
La type soundness di Java è stata *formalmente* dimostrata.
http://www.google.it/search?q=java+type+soundness
C'è anche un'autorevole pubblicazione dell'ACM in merito.
Addirittura, lo hanno dimostrato anche alla Microsoft :-)
http://research.microsoft.com/~dsyme/typesoundness.html
SALUTONI,
WindoM

 vorrei dire una castroneria...)
C'erano anche nel RK di NT 3.1 (e penso pure in quello di OS/2 1.3....)
Saluti.

 che ti disorienta se non sai cosa vuoi.
Uhm... forse hai ragione... io pero` quando ho bisogno di qualcosa
generalmente trovo qualcuno che lo ha gia` implementato :))


 contemporaneamente da javax.swing.Frame.
javax.swing.Frame non esiste stando a quello che dice
http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/package-frame.html
tuttavia dici che è impossibile? perché?

 C'erano anche nel RK di NT 3.1 (e penso pure in quello di OS/2 1.3....)
perche` poi sono scomparsi?


 dello _STESSO_ S.O....
E certo, se la patch va a modificare elementi localizzati o fai una 
megapatch enorme con tutte le lingue oppure patch diverse.


 RTFM 
Guarda che il manuale l'ho letto, perche' senza manuale non istalli 
gentoo manco se ti ammazzi. Quando non hai ancora messo il kernel non 
hai ovviamente neanche x, quindi al piu' puoi avere un client testuale, 
che e' una fucilata sulle paxxe. Inoltre devi avere il buongusto di 
emergiare il client prima di avere un sistema che fa il boot. Cosa poco 
furba visto tutto il casino da fare se le cose vanno male.


 ha scritto:

Perche', nvidia e ati distribuiscono qualche cosa? :)


 comodo.
imho troppi automatismi favoriscono il proliferare di programmatori
distratti.

 piu` alto livello. Ormai ce lo si puo` permettere... :)
dipende. Se lo usi da anni ed è quello che ti dà la maggiore sicurezza
perché buttarlo? :-)

ehm, sicurezza nel senso di comfort per il programmatore.

quella Java.
in che senso? Quali sono le funzionalità di cui sentivi la mancanza? 

 Perche', nvidia e ati distribuiscono qualche cosa? :)
afaik, si.
-- 
RiK0

 tuttavia dici che è impossibile? perché?
Giusto, si chiama javax.swing.jFrame o qualcosa simile. E` impossibile
perche` Remote e jFrame sono entrambe classi e per fare quello che devo
dovrei spostare jFrame a un attributo di classe e poi richiamare metodi su
quello invece che sulla classe per avere Remote tra le classe da cui
derivo... 
Bello proprio sto accrocchio schifoso... Ovviamente non ci si poteva
aspettare nulla di meglio da una schifezza di linguaggio. Mi viene da
ridere a sentire che java ha l'ereditarieta` multipla attraverso le
interfacce... Java ha l'ereditarieta` multipla delle interfacce e basta,
sono cose diverse e java per scelta progettuale non ha quella delle
classi. La scelta e` talmente una cazzata immonda che vi tocca inventarvi
(impersonale, sta per programmatori java) sta cavolata del "ha
l'ereditarieta` multipla attraverso le interfacce" che fa solo ridere...
