INTRODUZIONE Questo documento vuole introdurre il lettore al mondo Linux e in generale al software Open Source. E' la sintesi di molti documenti presenti in Internet pensato per chi necessita di una sintetica (anche se non brevissima) panoramica dalla quale partire per documentarsi autonomamente. In questo documento troverete percio` le informazioni che Vi sono necessarie per formare una prima positiva idea del Sistema Operativo Linux e del Meeting in programma a Roma i giorni 7-8-9 ottobre 98 e organizzato dal Linux User Group di Roma, dal Pluto e in collaborazione con IEEE Student Branch di Roma. Nei giorni del Meeting verra` distribuito un CD-ROM contenente gli atti della manifestazione, molta documentazione in Italiano e una versione italianizzata della distribuzione Debian GNU/Linux. Il documento data la sua lunghezza e` diviso in sezioni per una piu` semplice consultazione: - Open Source (un'introduzione) - Linux (le origini, le caratteristiche) - Linux: la realta` italiana (una panoramica sulla realta` italiana) - Linux Meeting /Pluto Meeting '98 (notizie sul Meeting) Linux, per volonta` del suo autore Linus Torvalds, e` sotto licenza GPL della Free Software Fondation vediamo ora di affrontare questo primo importante aspetto chiarendo il significato di questi termini. OPEN SOURCE Il termine "Open Source" (tm) e' una sorta di marchio di qualita`: e` un insieme di regole e requisiti necessari per definire il software libero. L'obiettivo del marchio "Open Source" e` la tutela del Software Libero, e lo stimolo alla sua produzione e distribuzione. "Open Source" e` un marchio registrato in America da "Software in the Public Interest" (SPI) (un'associazione senza fini di lucro che come dice chiaramente il nome, supporta il software libero) con l'obiettivo di fornire uno strumento per garantire la tutela e fornire un'unificazione delle definizioni di Software Libero delle tante licenze libere esistenti. Open Source e' il riferimento per chi oggi scrive software e intende distribuirlo/venderlo completo di sorgenti. Per comprendere pienamente quanto appena scritto dobbiamo fare un salto in dietro nel tempo a quando cioe` un ricercatore del MIT, Richard Stallman istitui' negli anni `80 la Free Software Foundation (FSF). L'esigenza di liberta' nel settore del software e' sempre stata sentita, per questo motivo alla fine degli anni '80 e' nata negli Stati Uniti la Free Software Foundation con il preciso scopo di creare e diffondere la filosofia del software libero (meglio conosciuto con l'originale nome inglese: Free Software) per liberare gli utilizzatori di software da vincoli che comportassero restrizioni e vessazioni all'uso del software stesso. Nel 1984 la FSF ha dato origine al progetto GNU (GNU e` un gioco di parole che significa "Gnu is Not Unix") che si propone di creare uno Unix non commerciale conforme alle specifiche POSIX. Nel 1991 Linux Torvalds, uno studente finlandese, ha quasi per gioco iniziato lo sviluppo di un kernel (la parte centrale di un sistema operativo, cioe' il nucleo che permette a tutti i programmi di funzionare). E da allora, grazie al contributo di migliaia di persone attraverso Internet, e' diventato uno dei piu' importanti sistemi operativi; Linux come una locomotiva ha trascinato in questi ultimi anni lo sviluppo del software libero e la diffusione della sua filosofia. Con il termine Open Source non si intende semplicemente libero accesso al codice sorgente ma esistono regole alle quali attenersi per non infrangere i termini della licenza. L'esistenza di queste prescrizioni ha come scopo principale la diffusione del software e la possibilita' di poterlo usare, diffondere, migliorare. Le licenze libere come la GNU General Public License (GPL), Artistic License e la Licenza BSD esprimono un alto grado di civilta' e dovrebbero essere sempre piu` impiegate all'interno di Enti o Istituti come naturale provvedimento di tutela del lavoro svolto dai propri ricercatori. LINUX Linux nacque per volonta` di Linus B. Torvalds, il progetto ebbe inizio quando Torvalds non soddisfatto delle funzionalita` di Minix decise di scrivere le prime componenti di questo sistema operativo; Quando sottopose le proprie modifiche all'autore di Minix, questi rifiuto' ogni modifica. Fu questo uno dei motivi che spinse Linus ad attribuire al suo software una licenza, la GNU General Public License, che permettesse, anzi incentivasse, la distribuzione del codice sorgente (la forma leggibile e modificabile di un programma) e il contributo di chiunque volesse. Fu un successo! A lui nel tempo si affiancarono centinaia di programmatori che grazie alla loro competenza costituiscono oggi la migliore garanzia per un sicuro successo. Linux e` sviluppato usando un modello aperto e distribuito, invece di un modello chiuso e centralizzato come altri software. Questo significa che le versioni di sviluppo del kernel sono disponibili a chiunque le voglia usare o contribuire ai test. Il risultato e` che ogni volta che una versione con nuove funzionalita` viene rilasciata e distribuita su Internet, molte persone la analizzano e la testano correggendone i difetti, a volte anche nel giro di poche ore. Linux viene eseguito su macchine 386/486/Pentium/PentiumPro/PentiumII. Una delle sue piu` importanti specifiche recita che Linux e` una implementazione di unix nata sulla piattaforma (i processori) Intel. Tuttavia, grazie al successo incontrato nella comunita` informatica e naturalmente alla intera disponibilita` del codice sorgente, ora Linux funziona su molte altre piattaforme, come Digital Alpha, Sun SPARC, Motorola 68x00 (Amiga e vecchi Macintosh), PowerPc, MIPS, ARM (come il nuovissimo Corel NetWinder). Linux ha molte caratteristiche che gli permettono di sfruttare in modo efficace le risorse disponibili: il kernel che puo` essere ottimizzato in funzione dell'hardware cui e` destinato; multiprocessore: il supporto per sistemi multiprocessore (SMP) e` disponibile per Intel e SPARC; multitasking e multiuser; ottima protezione della memoria se va in crash un processo; un file system (extended 2) di 4 terabyte di capacita`; supporto per protocolli e schede di rete; lettura/scrittura di diversi system non Linux come FAT del DOS la VFAT di W95, HFS di Macintosh, lettura di HPFS (OS/2) e NTFS (Windows NT) e molti altri; una implementazione TCP/IP tra le piu` veloci e robuste. Per ragioni di brevita` siamo costretti ad invitarVi alla lettura dei Linux Data Sheets. A disposizione di utenti finali e sviluppatori troviamo soluzioni applicative in diverse aree: tra i linguaggi di programmazione troviamo il C, C++, Basic, Pascal, Lisp, Fortran, Cobol, Perl, Java, SQL, Tk/Tcl, ecc. tutti Open Source, naturalmente vi sono anche dei linguaggi proprietari commerciali (per esempio AcuCobol) a pagamento. Per quanto riguarda la produttivita' individuale e l'automazione d'ufficio troviamo prodotti commerciali come ApplixWare e StarOffice, il secondo gratuito per usi non commerciali come l'attivita` didattica o studio. Vi sono parecchi prodotti di carattere scientifico, matematico e ingegneristico: Matlab, Mathematica, Maple V e altri. Con Linux e` possibile installare un server Web come Apache, il piu' diffuso su Internet. La stessa IBM lo preinstalla sui server Internet che vende alle aziende, e ne partecipa allo sviluppo. Come browser Web si ha la possibilita' di installare Netscape che non ha bisogno di presentazioni, o lynx che e' ad interfaccia testuale. Per Linux e' disponibile una quantita' enorme di software libero e a testimonianza di cio` valga il recente annuncio di SCO, software house produttrice di UnixWare e Open Server, che ha dichiarato la futura versione 7 del suo sistema operativo compatibile in modo nativo con le applicazioni sviluppate per Linux. Progetti di porting software sono in corso presso le principali software house: il portavoce di Corel, Michael Cowpland, ha annunciato che di tutti i prodotti Corel sara` scritta la versione per Linux, anche Oracle (azienda leader nel mercato database) ha annunciato il porting dei suoi prodotti e stessa cosa ha fatto Informix (sua principale concorrente). Questi atti testimoniano, se mai ce ne fosse bisogno, l'affidabilita` che Linux ha oggi raggiunto. E' in corso di sviluppo e definizione anche una interfaccia grafica standard: GNOME (GNU network object model environment); attraverso l'adozione di una libreria grafica ad oggetti e alle specifiche corba 2.0 sara` finalmente possibile avere le caratteristiche di interfaccia grafica avanzate come OS/2, Rhapsody, NT, il tutto in collaborazione con RedHat labs, il laboratorio di sviluppo dell'omonima casa che distribuisce una delle piu` famose distribuzioni di Linux. LINUX: LA REALTA` ITALIANA Tutti i Linux User Group italiani (LUG), con l'intento di dare un contributo al progetto GNU, hanno dato vita a iniziative che vanno dalla semplice nazionalizzazione dei manuali di Linux, alla scrittura di programmi o modifiche per implementare nuove funzionalita`. I Linux User Group intendono promuovere Linux e il software Open Source legato a Linux stesso e al progetto GNU. Il primo e piu` antico LUG italiano e` il Pluto, definito recursivamente come "Pluto Linux/Lumen Utentibus Terrarum Orbis", nato nel 1992 per iniziativa di alcuni studenti e professori di Informatica dell'Universita` di Padova. Da allora il Pluto e` cresciuto in maniera esponenziale estendendosi su tutto il territorio nazionale ed oltre, e costituisce il piu` grande ed attivo LUG (Linux User Group) di lingua italiana. La crescita vertiginosa del Pluto (conta piu di 200 iscritti) ha reso oggi necessaria la creazione di un minimo di organizzazione interna, di basso profilo per non deviare eccessivamente dalla gerarchia piatta che ne e` stata motore per i suoi primi cinque anni di vita. Allo scopo di espletare mansioni ben delimitate e definite, vengono eletti dei "responsabili", uno per mansione. L'insieme di questi responsabili costituisce l'ufficio amministrativo del Pluto e nomina un portavoce con incarichi di rappresentanza. Molti Linux User Group sono nati come emanazione locale del Pluto, altri da realta' diverse. Sono moltissime le persone che oggi offrono il loro contributo volontario allo sviluppo e alla diffusione di Linux in Italia. Lo scopo di qualunque Linux User Group e` di diffondere l'uso del Sistema Operativo Linux attraverso l'opera volontaria e non retribuita dei suoi membri/soci, non solo, provvedono infatti allo sviluppo del Software Free e della sua filosofia; alla traduzione e diffusione della documentazione Linux in lingua Italiana; infine promuovono corsi, dimostrazioni e Meeting per favorire la conoscenza di Linux. LINUX MEETING / PLUTO MEETING '98 Nel mese di ottobre non si svolgera` soltanto lo Smau, l'ormai arcinoto salone milanese per l'informatica, ma si terra` a Roma cio` che gli utenti Linux ogni anno attendono,il Pluto Meeting Li-Me 98. La scelta di essere ospitati da una citta' prestigiora come Roma, il crescente interesse per il sistema operativo Linux, creano le premesse per una grande affluenza di persone che desiderano condividere esperienze, discutere opinioni o assistere alle conferenze tecniche. Il Pluto/LiMe'98 aprira` i battenti il 7 ottobre per offrire a tutti i visitatori una panoramica a 360 gradi della realta` Linux in Italia. Verranno trattati durante gli interventi, da esperti del settore le tematiche tecniche e commerciali dell'Information Technology dal punto di vista innovativo dell'Open Source. Alcuni interventi verteranno altresi' sull'integrazione di queste tecnologie con gli strumenti di produzione industriale. Per immergersi nell'incredibile mondo Linux la manifestazione ospita delle sessioni interattive in cui sara` possibile provare le performance di questo sistema operativo. Inoltre per un miglior contatto fra aziende e il pubblico che affollera` la Facolta` di Ingegneria sono stati messi a disposizione dagli organizzatori alcuni stand. Gli intervenuti avranno la possibilita` di partecipare liberamente a tutti gli interventi previa iscrizione gratuita da effettuarsi compilando l'apposito modulo disponibile sul sito Web della conferenza: http://meeting.pluto.linux.it L'attivita` degli organizzatori si muove proprio in questa direzione, poter dare risposta a qualunque quesito o necessita` a chiunque decidera` di partecipare. CONCLUSIONE Le istituzioni pubbliche, siano queste Universita` o Enti, dovrebbero privilegiare chi garantisce la massima e soprattutto continua aderenza alle specifiche, agli standard software che vengono promulgati dalle Istituzioni internazionali a questo scopo preposte: ISO, ANSI, W3 Consortium ecc. Con l'impiego di software Free (GPL) o Open Source questo obiettivo e` senza dubbio raggiunto. I laboratori di informatica dell'Universita` di Harvard seguivano la norma per cui nessun programma poteva venir installato nel sistema se i sorgenti non fossero liberamente accessibili, questo per garantire ai propri studenti un ambiente molto piu` formativo, incoraggiando tutti gli studenti ad analizzare e migliorare il software di sistema. Come risultato, un utente che abbia necessita` di apportare dei cambiamenti al sistema sara` sempre in grado di farlo da solo o commissionando i cambiamenti ad un programmatore o ad una ditta di consulenza. Gli utenti non dipenderanno da un solo programmatore o da una azienda che, avendo la proprieta` esclusiva dei sorgenti, sia il solo, o la sola a poter fare le modifiche. Per finire, augurandoci di aver suscitato il Vostro interesse, deve essere osservato che questo documento non e` certo da considerarsi completo in nessuna delle sue parti, vuole infatti essere solo introduttivo all'universo GNU/Linux. Riferimenti Questo documento cita a piene mani: - PLUTO Linux User Group (http://www.pluto.linux.it) - LUG Roma (http://linux.ing.uniroma1.it/LUG/) - Pluto Journal (http:www.pluto.linux.it/journal) - Linux e il calcolo scientifico (http://smog.science.unitn.it/~pluto) - ILDP: Italian Linux Documentation Project (http://www.pluto.linux.it/ildp) - Fabrizio Polacco - O. Kirch: ``Network Administration Guide'' - Licenza Pubblica Generale GNU (http://animal.unipv.it/gnu/gpl.txt) - Il progetto GNU (http://www.gnu.org) - Verso un'etica del software ne "Il giornale dell'Ingegnere" (http://animal.unipv.it/linux/rubini/italiano.htm) - GNU Project web server, www.gnu.org. - Linux per la didattica (c) 1998 Umberto Zanatta - Linux nella didattica. di Antonio Bernardi - Linux Information Sheet, Michael K. Johnson - Appunti Linux, di Daniele Giacomini (http://www.pluto.linux.it/ildp/AppuntiLinux/index.html) Questo documento e' stato realizzato dall'Ufficio Stampa del Pluto-Linux Meeting `98. Per informazioni: meeting-press@pluto.linux.it