Mondo
Uno studio molto contestato, pubblicato dall¿istituto americano Alexis de Tocqueville, ha riaperto il dibattito relativo al ruolo di Linus Torvalds nella genesi del sistema operativo aperto Linux.
Secondo il curatore dello studio, Ken Brown, Torvalds non sarebbe affatto l¿autore del più celebre software libero, la cui paternità viene attribuita invece al professore di informatica Andrew Tanenbaum, autore anche del progetto Minix, un clone di Unix sul quale Linus si è effettivamente basato per sviluppare il suo sistema operativo.
Secondo l¿istituto Alexis de Tocqueville, , ¿¿Non è serio credere che un semplice studente con nessuna esperienza abbia potuto creare in pochi mesi e partendo da zero, un programma equivalente a Minix che, ricordiamolo, ha avuto bisogno di tre anni di lavoro da parte di uno specialista dei sistemi operativi¿.
Senza contare il fatto che Linus Torvalds sarebbe giunto allo stesso livello tecnologico di un gigante dell¿industria, Unix, che all¿epoca regnava incontrastato sul segmento dei grandi sistemi.
Un¿altra critica posta dal prof. Brown: Linux conterrebbe numerosi concetti funzionali inizialmente implementati in Minix, quali alcuni meccanismi legati ai sistemi di file e alla strutturazione delle linee del codice.
Ma questo, Torvalds non l¿ha mai nascosto. Anzi, ha sempre ammesso che essendo Linux un clone di Unix, era scontato avesse anche molte similitudini con Minix.
Torvalds, ovviamente, si è prontamente difeso dalle accuse di plagio avanzate dall¿istituto americano, ma in sua difesa, è sceso nientemeno anche lo stesso Tanenbaum che sul suo sito chiarisce molti punti relativi al contestato studio condotto al Brown.
¿Linus ¿ dice Tanenbaum – non si sedette in un vuoto e improvvisamente cominciò a scrivere il codice sorgente di Linux. Egli aveva il mio libro, stava usando MINIX, e indubbiamente conosceva la storia, contenuta appunto nel mio libro. Ma il codice fu il suo. La prova è che ha rivoluzionato l”architettura¿.
¿MINIX ¿ spiega ancora il Professore – era un simpatico e modulare sistema a microkernel, con un gestore della memoria e un file system che venivano eseguiti come processi nello spazio utente. Questo rende il sistema più chiaro e più affidabile di un grosso kernel monolitico, e più facile da correggere e mantenere, con un piccolo prezzo in prestazioni: perfino in un 8088 a 4.77 MHz si avviava in circa 5 secondi (contro un minuto per Windows su un hardware 500 volte più veloce)¿Invece di scrivere un nuovo file system e un nuovo gestore di memoria, che sarebbe stato facile, Linus riscrisse tutto quanto come un grosso kernel monolitico¿La prima versione di Linux era come una macchina del tempo. Portava indietro a un sistema peggiore di quello che aveva già sulla sua scrivania. Naturalmente era solo un ragazzo e non sapeva far di meglio¿ma produrre un sistema che era fondamentalmente differente dalla base da cui era partito mi sembra una chiara prova che era una progettazione da zero¿.
Quindi, dice Tanenbaum, ¿Io non penso che abbia copiato UNIX perché non aveva accesso al codice sorgente di UNIX, eccetto forse il libro di John Lions, relativo a una precedente versione di UNIX che non assomiglia molto a Linux¿Alcuni possono trovare strano che io stia difendendo Linus in questa sede ¿ conclude Tanenbaum – Dopo tutto, io e lui abbiamo avuto un “dibattito” pubblico alcuni anni fa. Il mio interesse primario è cercare di ottenere la verità¿io e Linus non siamo “nemici” o niente del genere. Lo ho incontrato una volta e mi è sembrato un ragazzo simpatico, amichevole e intelligente. L”unica cosa che mi dispiace è che non ha sviluppato Linux sulla base della tecnologia a microkernel di MINIX. Con tutti i problemi di sicurezza che Windows ha adesso, è ovvio in maniera crescente a tutti che piccoli microkernel, come quelli di MINIX, sono una base migliore per i sistemi operativi che grossi sistemi monolitici. Linux è stato vittima di minori attacchi rispetto a Windows perché è effettivamente più sicuro, ma anche gran parte degli attaccanti prendono di mira Windows perché offre un bersaglio più grande, e quindi Windows viene attaccato di più. ¿¿
¿La mia conclusione è che Ken Brown non sapeva di cosa stava parlando¿.
Al giorno d¿oggi abbiamo ormai fatto l”abitudine all”intrinseca complessità di un semplice computer. Quello che a volte ci sfugge è che il far dialogare il monitor, la tastiera, il mouse, i dischi e tutto l”hardware del nostro computer è un”operazione che richiede un enorme numero di operazioni. Per semplificare la vita a chi deve scrivere i programmi e a chi deve poi utilizzarli si pone uno strato “cuscinetto” tra l”hardware e il software del calcolatore. Questo strato è chiamato sistema operativo.
Nel 1979 una licenza di Unix veniva a costare 40.000 dollari a processore, prezzo scontato a 7.500 per gli enti universitari. Una cifra abnorme già oggi, figuriamoci nel ”79.
Narra la leggenda che il professor Andrew Tanenbaum, capì di non poter permettersi di pagare tutti quei soldi per far lavorare i propri studenti sotto Unix e decise di elaborare il Minix, una versione ridotta compatibile a tutti gli effetti con lo Unix ma libera da licenza.
Circa 10 anni dopo, Linus Torvalds, all¿epoca studente dell”università di Helsinki, doveva studiare il nuovo processore Intel 80386, che aveva caratteristiche molto innovative rispetto ai suoi predecessori, come ad esempio la natura multitasking. Sulla macchina utilizzata da Linus girava il Sistema Operativo Minix: un ottimo strumento didattico ma ben lontano dall”essere un vero sistema operativo.
Linus si pose il problema di migliorare Minix; ma non riuscendo nell”intento, iniziò lo sviluppo di un kernel che permettesse di scrivere una versione gratuita di UNIX.
Tra Torvalds e Tanenbaum l”approccio per lo sviluppo di un sistema operativo era abbastanza diverso, in quanto Tanenbaum sosteneva e pretendeva che chiunque avesse realizzato del codice per il suo SO lo avrebbe dovuto preventivamente sottoporre alla sua approvazione, mentre invece Torvalds diede libertà assoluta agli sviluppatori, mantenendo per sè solamente il trade mark.
È lo stesso Tanenbaum a spiegare il perché di questa scelta: ¿Dopo un paio di mesi dal suo rilascio, MINIX divenne oggetto di culto, con un suo newsgroup USENET, comp.os.minix, che contava 40.000 iscritti. Molte persone aggiunsero nuovi programmi di utilità e migliorarono il kernel in molti modi, ma il kernel originale era il lavoro di una sola persona — io. Molti iniziarono a incalzarmi chiedendomi di migliorarlo. In aggiunta ai numerosi messaggi nel newsgroup di USENET, mi arrivavano 200 email al giorno (ai tempi in cui solo pochi scelti avevano del tutto un eMail), dicendo cose come “mi servono i pseudoterminali, e mi servono per venerdì”. La mia risposta era generalmente veloce e andava al punto: No¿.
¿La ragione del mio frequente “no” ¿ spiega il Prof Tanenbaun – era legata al fatto che tutti stavano tentando di trasformare MINIX in un sistema UNIX di qualità adeguata per sistemi di produzione; io non volevo che diventasse qualcosa di così complicato per il mio obiettivo, ovvero insegnarlo agli studenti¿.
Fu questa scelta comunque a dare il via al progetto opensource di Torvalds che, nel giro di pochi anni, ha coalizzato centinaia di programmatori che nel proprio tempo libero si dilettano ad aggiungere nuove righe di codice al progetto Linux.
Per visionare l”intera ”difesa” del prof. Tanenbaum, clicca qui.
© 2004 Key4biz.it
Per ulteriori approfondimenti, consulta:
Archivio delle news sul Linux