Corso di Informatica Open Source Linux - Storia, filosofia e concetti di base - Pag.1 di 65

Pagina creata da Nicolo' Carboni
 
CONTINUA A LEGGERE
Corso di Informatica Open Source Linux - Storia, filosofia e concetti di base - Pag.1 di 65
Corso di Informatica
      Open Source
         Linux
Storia, filosofia e concetti di base

                                 Pag.1 di 65
Corso di Informatica Open Source Linux - Storia, filosofia e concetti di base - Pag.1 di 65
Testo Guida per il corso
                “Linux”
            che si è tenuto
        tra Marzo e Aprile 2008
                presso:

            Istituto Prof.le
di Stato per l'Industria e l'Artigianato
          “Giancarlo Vallauri”
      Via B. Peruzzi 10 Carpi (MO)

         in collaborazione con

    Centro Formazione Professionale
               CDR EDSEG
           Città dei Ragazzi

          Relatore del corso
           Guandalini Mirko

Il presente manuale è stato scritto da
            LABORATORI AIDAN
           Via. C.Colombo, 5
      Sozzigalli di Soliera (MO)
            Tel. 059.563.227
            Fax. 059.853.091
         Email: info@aidan.it
       Web: http://www.aidan.it

                                         Pag.2 di 65
Corso di Informatica Open Source Linux - Storia, filosofia e concetti di base - Pag.1 di 65
Indice
Sezione 0: Vedere un computer
           Dimostrazione pratica in sede
   ● Visione dell'interno di un Computer.
   ● Dimostrazione di Linux e Windows in funzione.
   ● Dimostrazione della presenza di Linux su oggetti di uso comune.

Sezione 1: Basi

   ●   Codice sorgente, codice binario, compilatori.
   ●   Cos'è il BIOS.
   ●   Cos'è un Sistema Operativo.

Sezione 2: Sistemi Closed Source

   ●   Cosa vuol dire Closed Source
   ●   Come avviene lo sviluppo Closed Source.
   ●   Come è nata Microsoft e come mai ha il monopolio del mercato.
   ●   Vantaggi/svantaggi tecnici, economici e sociali del modello Closed Source.

Sezione 3: Introduzione all'Open Source

   ●   L'importanza di avere libertà di scelta.
   ●   Cos'è uno standard.
   ●   Standard veri e standard falsi.
   ●   Cos'è l'Open Source, come è nato e come funziona la licenza GPL.
   ●   Cos'è Linux, come è nato e come viene sviluppato.
   ●   Vantaggi/svantaggi tecnici, economici e sociali del modello Open Source.
   ●   Campi applicativi di Linux.
   ●   Altri sistemi Open Source.
   ●   Perché Linux e l'Open Source sono un pericolo per Microsoft.

Sezione 4: Come funziona Windows. Come funziona Linux.

   ●   Cos'è e come funziona un Kernel.
   ●   Cos'è un Driver.
   ●   Driver su Windows, vantaggi e svantaggi.
   ●   Driver su Linux, vantaggi e svantaggi.
   ●   Integrazione: come funzionano e cosa sono le librerie.
   ●   In cosa Linux è migliore di Windows.
   ●   In cosa Windows è migliore di Linux.
   ●   Com'è possibile sopperire alla mancanza di certi software        costruiti
       esclusivamente per Windows.
   ●   Hacker e Craker
   ●   Cosa sono i “Malware”, cosa fanno e perché.
   ●   Come si difende Windows dai “Malware”.
   ●   Perché Linux non è soggetto a “Malware”.
   ●   A quali attacchi è soggetto Linux?
   ●   Curiosità su Linux.

Sezione 5: Licenze a riconoscimenti.

   ●   Licenza del corso e riconoscimenti vari.

                                                                        Pag.3 di 65
Corso di Informatica Open Source Linux - Storia, filosofia e concetti di base - Pag.1 di 65
Basi
Codice Sorgente, codice binario, compilatori:
I microprocessori (chiamati anche CPU), sono il cervello di un computer. Le CPU
sono in grando di comprendere ed elaborare solo codice binario, ossia sequenze
di Bit. Un bit può avere valore 0 o 1 ed i numeri sono rappresentati secondo la
logica booleana (Algebra di Boole: prende il nome da George Boole, matematico
inglese 1815-1864).

Una sequenza di 8 bit viene chiamata Byte.

Ovviamente, per un essere umano, programmare un computer immettendo dentro di
esso sequenze binarie è un'impresa a dir poco ardua, sebbene non impossibile
(almeno per programmi minuscoli). I primi computer, nati negli anni 70, venivano
programmati manualmente impostando 1 Byte tramite una sequenza di 8
interruttori, confermandolo e caricandolo poi in memorira tramite la pressione
di un pulsate.

           Nell'immagine qui sotto si vede il frontalino di un'altair 8800 del 1973

Tuttavia la crescente complessità degli elaboratori e le esigenze dell'industria
richiedevano programmazioni sempre più complesse e ben presto vi fu la necessità
di creare veri e propri linguaggi di programmazione che fossero facilmente
comprensibili dagli esseri umani e che quindi accelerassero il processo di
scrittura dei programmi.

Ovviamente gli elaboratori continuavano (e continuano tutt'ora) a comprendere
solo sequenze binarie. Vennero creati i “Compilatori”. Un compilatore è uno
speciale programma per computer capace di accettare in ingresso un programma
scritto in un linguaggio “umano” e tradurlo nella forma binaria.

Come avviene allora la costruzione di un programma?
   1. L'essere umano scrive il programma utilizzando un linguaggio di alto
      livello, il programma presentato in questa forma viene definito “sorgente”
   2. L'essere umano fa elaborare il “sorgente” dal “compilatore”
   3. Il compilatore genera un file binario che non è altro che la traduzione
      del sorgente in sequenze di bit comprensibili direttamente dalla CPU.

Otteniamo così il programma in forma binaria (eseguibile), però non è detto che
questo programma sia perfetto! Potremmo aver sbagliato qualcosa in fase di
programmazione, oppure dopo un po' potremmo renderci conto che ci sono cose
migliorabili o che si potrebbero aggiungere. Per effettuare questi miglioramenti
sarà necessario intervenire sul sorgente per poi compilarlo nuovamente in
quanto, per assunto, il binario risulta incomprensibile.

E' ovvio che se smarriamo il sorgente ci sarà impossibile modificare il
programma, dovremo riscriverlo da zero. Allo stesso modo ci è impossibile
modificare un programma altrui senza possederne il sorgente.

                                                                                      Pag.4 di 65
Corso di Informatica Open Source Linux - Storia, filosofia e concetti di base - Pag.1 di 65
Cos'è il BIOS:
Il BIOS è un piccolo frammento software contenuto all'interno di una memoria non
volatile (ROM, EPROM, Etc) direttamente inserita nell'hardware del computer. Il
compito del BIOS è quello di inizializzare le componenti hardware al momento
dell'accensione e successivamente avviare il Sistema Operativo (in gergo fare il
bootstrap) da una unità a disco (floppy, cdrom, harddisk). Senza un BIOS il
computer non si accenderebbe nemmeno, sarebbe solo un ammasso di circuiti che
consuma corrente elettrica senza fare nulla.

Cos'è un Sistema Operativo:
In informatica il sistema operativo (abbreviato spesso nel suo acronimo SO, o
all'inglese OS, operating system) è il programma responsabile del controllo e
della gestione dei componenti hardware che costituiscono un computer e dei
programmi che su di esso girano. Il sistema operativo mette anche a disposizione
dei programmi una interfaccia software per accedere alle risorse hardware
(dischi, memoria, I/O in generale) del sistema, ed un vasto insieme di librerie
e funzioni alle quali le stesse applicazioni possono accedere.
Il compito principale del sistema operativo è quello di permettere all'uomo di
interagire direttamente con la macchina.
Il sistema operativo quindi è la base su cui girano tutti i programmi e la
qualità del sistema operativo è direttamente responsabile delle prestazioni del
computer e delle applicazioni che girano su di esso.
Cenno storico: Prima dell'avvento del PC, sulla maggior parte dei computer a 8
bit, non vi erano né BIOS né SO, ma solo una ROM da cui avviava direttamente un
piccolissimo ambiente operativo che a malapena si può definire sistema
operativo. Un esempio: il Commodore 64
All'epoca solo su enormi, costosissimi e potentissimi (per allora) computer,
destinati a enti, governi, militari, etc, girava un noto sistema operativo
estremamente potente. Questo sistema operativo si chiamava UNIX
Nell'immagine sotto un sistema VAX, consumava diversi Kilowatt, sistema a 32bit che solo nei modelli
più recenti arrivava ad avere alcuni Mb di memoria ram. Occupava lo spazio di una stanza e per
quanto possa sembrare buffo veniva definito “super mini-computer” per le sue “ridotte dimensioni”.

                                                                                        Pag.5 di 65
Corso di Informatica Open Source Linux - Storia, filosofia e concetti di base - Pag.1 di 65
Sistemi Closed Source
Cosa vuol dire Closed Source:
Si definisce Closed Source un programma “a sorgente chiuso”, ossia un programma
di cui si posseggono i binari ma NON i sorgenti, che restano chiusi, di
proprietà esclusiva del programmatore che ha creato il programma o dell'azienda
per cui lavora.

Come avviene lo sviluppo Closed Source:
Semplicemente avviene “in privato”: il programma viene scritto da uno o più
sviluppatori, solo un circolo chiuso di persone hanno accesso al codice
sorgente.

Come è nata Microsoft e come mai ha il monopolio del mercato:
Microsoft nasce negli anni '70 come minuscola ed insignificante software house
composta da sole 3 persone tra cui Bill Gates. Uno dei primi lavori di Microsoft
fu la scrittura di un compilatore che permise la programmazione dell'altair 8800
usando il linguaggio Fortran.

Ma la vera fortuna di Microsoft non fu farina del proprio sacco, nei primi anni
'80, IBM (un gigante dalla potenza commerciale enorme, ieri come oggi) cercava
qualcuno che scrivesse un Sistema Operativo per un nuovo modello di computer:
l'IBM XT che portava una tra le prime cpu a 16bit ad essere commercializzate,
l'8086, il capostipite dei moderni PC (che conservano con esso compatibilità).

 Nella foto sotto un IBM XT, CPU 8086 4,7Mhz, poteva utilizzare al massimo 1Mb di memoria RAM, anche
se spesso si vedevano XT con 512Kb o meno di ram, in quanto i costi dei chip di ram erano proibitivi
            e comunque i programmi di allora difficilmente ne avrebbero tratto beneficio.

Microsoft si presentò alla IBM dichiarando di possedere un sistema operativo
adatto a questo primordiale PC, il DOS... In realtà Microsoft non aveva nulla in
mano, solo la notizia avuta per passaparola che un piccolo programmatore
squattrinato (Tim Paterson) ne aveva scritto uno. Stipulato l'accordo
commerciale con IBM, Bill Gates ed i suoi amici si recarono a casa di Tim
Paterson offrendo a lui 50.000$ per acquistare il suo 86-DOS (adattamento per
8086 dell'analogo sistema CP/M creato da Gary Kildall per computer a 8bit).

L'IBM XT fu un successo (e tutti i suoi successori). Questo fece la fortuna di
Microsoft. Mentre nessuno ricorda il povero Tim Peterson, ormai morto, pugnalato
da un motociclista a cui stava antipatica la maglietta che indossava.

Proseguendo con la storia di Microsoft: nel 1985 venne commercializzata la prima
versione di Windows, sistema grafico a finestre, che altro non era che la copia
del sistema installato su di un prototipo Apple Machitosh che Bill Gates riuscì
ad avere in visione dallo stesso Steve Jobs, ingannandolo. C'è da dire che il
sistema Macintosh era la copia di un sistema sviluppato da Xerox ma comprato
dalla Apple. Quindi Windows era la copia di una copia.

                                                                                        Pag.6 di 65
Corso di Informatica Open Source Linux - Storia, filosofia e concetti di base - Pag.1 di 65
Vediamo sotto una schermata del desktop Xerox mai commercializzato

                   Qui una schermata di MacOS 1

                                                          Pag.7 di 65
Qui invece una schermata di Windows 1.01

A parte la presenza dei colori in Windows 1.0 (all'epoca ben pochi PC
possedevano schede grafiche o monitor in grado di visualizzare i colori) appare
evidente all'occhio che il desktop Xerox era il più evoluto, per poi passare a
quello Apple fino a quello Windows che era decisamente rudimentale.

                                                                      Pag.8 di 65
Nonostante tutto, l'alleanza con IBM, e la grande diffusione dei PC, sospinta
soprattutto dal loro basso costo, affermò Microsoft come azienda leader del
mercato dei sistemi operativi. Purtroppo la sua posizione dominante ha indotto
la stessa a trascurare parecchio la qualità dei propri prodotti...

Rispondete a queta domanda: Voi vi sforzereste di migliorare un vostro prodotto,
quando riuscite a venderlo comunque, al prezzo che vi pare, perché questo
prodotto è l'unica scelta presente sul mercato, o perché avete la forza di
imporlo? Ovviamente no, o almeno no se siete privi di scrupoli e di etica. E il
denaro è un solvente eccezionale per l'etica e lo scrupolo di una persona e/o di
una società.

Oltre a questo, un'altra pratica commerciale comune in Microsoft è quella di
spazzare via la concorrenza, non con la qualità dei suoi prodotti ma con la
forza del denaro... (Premessa: in america una ditta non può superare una certa
mole di affari senza entrare in borsa, e in molti altri paesi è così).

Fai qualcosa meglio di me? Ok, ti compro a ti cancello dalla faccia della terra,
non ti fai vendere? Aspettiamo che tu cresca, quando entri in borsa compro il
51% delle tue azioni e dopo sei costretto a fare come dico io: smetti di vendere
il tuo programma che mi fa concorrenza, non smetti? Vendo tutte le tue azioni e
ti riduco in mutande quindi chiudi i battenti per banca rotta. Oppure visto che
il mercato dei SO è mio, faccio un programma analogo al tuo e lo metto integrato
dentro allo stesso Windows così la gente non sentirà più il bisogno di comprare
il tuo, avendo il mio gratis.

Alcuni esempi
WordStar: era uno dei programmi di video scrittura più in voga negli anni 80,
decisamente superiore e concorrenziale nei confronti di MS Word. La ditta che lo
commercializzava fu soffocata e acquisita da Microsoft, che continuò in seguito
a vendere MS Word, facendo sparire ogni traccia di WordStar.

Netscape, uno dei primissimi browser web: Nei primi anni '90         internet fu
definita dallo stesso Bill Gates “una moda passeggera”. In seguito    il fenomeno
internet diventò sempre più grande e l'immagine di Netscape           sempre più
importante. Netscape ovviamente andava eliminato (comperato) e       la Netscape
viveva di questi introiti.

Microsoft allora decise di investire alcuni milioni di dollari per sviluppare
Internet Explorer al solo scopo di regalarlo assieme a Windows, eclissando di
conseguenza Netscape, che fallì alcuni anni dopo per banca rotta in quanto
nessuno comprava più il loro software quando Internet Explorer (per quanto
qualitativamente peggiore) era gratis e già installato assieme a Windows. Le
primissime versioni di Windows 95 (Win 95a) NON avevano Internet Explorer,
mentre la seconda versione di Windows 95 (Win95 osr2) era equipaggiata di
Internet Explorer di serie e così fu per tutte le successive versioni di
Windows.

Però netscape fece un brutto dispetto a Microsoft: poco prima di andare a fondo
rilasciò pubblicamente i codici sorgenti del suo Browser così che la comunità
Open Source (allora giovanissima) potesse prenderne le redini e continuarne lo
sviluppo. Da queste “ceneri” nacque Mozzilla e succesivamente Firefox, Browser
Open Source che sta dando filo da torcere a Microsoft e che ha già mangiato
oltre il 25% dell'utenza mondiale di Internet Explorer.

                                                                       Pag.9 di 65
Vantaggi/svantaggi tecnici, economici e sociali del modello Closed Source:

Vantaggi:
Tecnicamente parlando: non ci sono particolari vantaggi, tu crei un programma,
fai in modo che faccia il suo lavoro e che non ci siano vistosi bug e basta.

Commercialmente parlando: devi investire tanto tempo nello sviluppo, se sei
un'azienda devi stipendiare tutti i programmatori per ottenere qualcosa di
abbastanza buono da essere venduto ad un prezzo che possa coprire le spese e
permetterti di guadagnare. Oltre a questo devi rispettare dei tempi di consegna
per i tuoi prodotti.

Socialmente parlando: non c'è niente di che, tu vendi il tuo prodotto e basta.

Svantaggi:
Tecnicamente parlando: una cerchia ristretta di cervelli che lavorano su di un
progetto potrebbe avere una visione limitata dello stesso, dei suoi difetti e
lacune funzionali/architetturali. Soprattutto se associamo questa situazione con
una limitata comunicazioni con il pubblico acquirente. Il fatto di dover
rispettare determinati tempi per finire un progetto crea pressione sugli
sviluppatori (scrivere software è molto difficile, e ancora più difficile è
preventivare/rispettare determinati tempi).

Questa situazione spinge gli sviluppatori ad adottare compromessi tecnici che se
da una parte accelerano il completamento del prodotto dall'altra ne peggiorano
la qualità. Gli sviluppatori vengono spinti a curare di più l'aspetto esteriore
e funzionale di un'applicazione piuttosto che concentrarsi sulla sua struttura
operativa interna, perché l'aspetto esteriore è quello che l'utente (acquirente)
medio percepisce più facilmente. Questo modo di programmare, alla lunga, provoca
un decadimento generale della qualità di un programma, rendendo anche più
difficile il suo mantenimento; cioè aggiornare e modificare un programma scritto
male o con un'architettura pessima è notevolmente più difficile che farlo su un
programma ben scritto.

Oltre a questo, chi scrive software closed è obbligato a reinventare ogni volta
la ruota, non importa se altre 1000 persone hanno fatto software simili al tuo,
non avendo il codice sorgente dovrai fare tutto partendo da 0.

Un esempio?
Acrobat Reader ufficiale (visualizzatore di file PDF), scritto dalla Adobe,
(Closed Source) installato è un “malloppone” di quasi un centinaio di megabytes
di binari.

KPDF, visualizzatore di file PDF Open Source installa poco più di 1 megabytes di
binari e per certi aspetti offre funzionalità più appetibili del reader
ufficiale.

Commercialmente parlando: devi pregare che il tasso di pirateria, ossia persone
che fanno copie abusive del tuo programma, non sia troppo alto. Devi investire
tempo e denaro in sistemi di protezione da copia e nella difesa del tuo diritto
d'autore e di repressione delle copie pirata.

Socialmente parlando: questo modo di sviluppare software soffoca molto la
comunicazione con gli utenti. Tu fai una bella scatola colorata venduta nei
supermercati, la gente arriva nei supermercati e compra. Fine della storia.

Inoltre se tu un giorno fallissi o decidessi di abbandonare lo sviluppo di un
determinato programma lasceresti un sacco di persone, che lo usavano, alla
deriva. Immaginate quale danno fu arrecato alle tantissime aziende, enti, e
pubbliche amministrazioni quando la ditta produttrice di WordStar chiuse i
battenti. Quanti documenti divennero illeggibili dopo pochi anni perché non
esisteva più un programma capace di aprirli.

                                                                      Pag.10 di 65
Introduzione all'Open Source
L'importanza di avere libertà di scelta:
La libertà di scelta è qualcosa di molto importante. Voi oggi siete abituati ad
andare al supermercato dove avete la libertà di scegliere tra centinaia di
marche diverse di cereali, di conserve, pasta, di saponi e prodotti per la casa.

Avete la possibilità di scegliere tra centinaia di marche e modelli di auto,
moto, scooter, biciclette, telefoni cellulari, TV, HiFi, etc. In base ai vostri
gusti personali e al vostro potere di acquisto. Questo perché su tutti questi
prodotti c'è un mercato ricco di alternative, di aziende in libera concorrenza
tra di loro.

Allora perché ci viene negata la libertà di scelta sul sistema operativo o sulle
suite office da utilizzare sul nostro computer? Andate in un mercatone qualsiasi
e cercate di comprare un notebook o computer che NON abbia preinstallato
Microsoft Windows. Ancora peggio: provate a rifiutare il pagamento del costo
dello stesso Windows sul totale del costo del computer, perché non lo volete.
Magari a casa avete una confezione retail di Windows che vorreste usare, oppure
desiderate installare Linux, perché pagare?

Vi scontrerete contro un muro di gomma, non ci sarà verso, se volete il notebook
vi toccherà pagare anche Windows (e non è vero che è regalato col computer come
qualcuno dice o crede).

Eppure quando comprate un'auto pagate solo l'auto, nessuno vi impone di fare
benzina dall'AGIP piuttosto che alla Q8. Quando comprate un'impianto HiFi avete
la libertà di sintonizzarlo sulla stazione radio che vi pare.

Soprattutto in un mercato libero, un'azienda che commercializza prodotti
scadenti sarebbe costretta a migliorare oppure fallirebbe, perché la gente
comprerebbe i prodotti migliori della concorrenza.

Questo non capita a Microsoft. perché essa è riuscita a stabilire una posizione
di “monopolio” attuando per anni politiche atte a spezzare le gambe di chiunque
si mettesse in mezzo al suo cammino, aiutata dalla potenza del denaro guadagnato
da quelli che sono stati i suoi iniziali successi commerciali. Il protrarsi di
questa situazione ha portato Microsoft ad acquisire sempre maggiore ricchezza e
potere.

Da diversi anni ha il potere di imporre a chiunque voglia acquistare un computer
di comprare assieme ad esso una copia di Windows, questo indifferentemente se
l'acquirente lo vuole o no.

Vi sembra giusto che un'azienda si arricchisca attraverso i soldi di utenti che
NON desiderano usare i suoi prodotti?

Ma quello che è peggio è che ormai la mancanza di alternative poste sotto gli
occhi delle persone ha instaurato una situazione culturale tale per cui la
maggioranza delle stesse considera il PC e Windows come 2 cose inseparabili.

Tanti non sanno che esistono altri Sistemi Operativi alternativi magari anche
migliori di Windows.

Ad esempio ogni tanto capita in negozio qualche cliente che viene a fare domande
e quando gli si chiede: Ma lei che computer ha? Ci si aspetterebbe una risposta
tipo “Acer modello ...”, “HP modello...” invece a volte si ottiene la triste
risposta: “Un computer Windows XP o Windows 98 o Windows quello che è...”.

Questo non fa altro che rafforzare la capacità di Microsoft di mantenere il
monopolio sul mercato.

                                                                      Pag.11 di 65
Cos'è uno standard:
Uno standard, in ambito informatico, ma anche nelle telecomunicazioni, nei
sistemi di misura, nell'ingegneria in genere, rappresenta una base di
riferimento, un paradigma codificato per la produzione di tecnologie fra loro
compatibili, che siano computer, reti di computer o componenti elettronici.

Diversi enti a livello internazionale come l'ISO (International Organization for
Standardization) e l'IEEE (Institute of Electrical and Electronics Engineers)
propongono, concordano e ratificano gli standard nei diversi ambiti.

Prima di essere considerato tale dalla comunità internazionale, ed essere preso
a buon diritto come modello di riferimento, uno standard passa attraverso una
serie di fasi di analisi e accreditamento:

  ●   L'analisi delle esigenze dell'utenza da parte delle università e dei
      settori che si occupano di ricerca e sviluppo per le varie aziende
      produttrici, dà luogo alla ricerca di soluzioni per i problemi e le
      necessità eventualmente riscontrate.
  ●   Quando possibile, delle specifiche tecniche vengono emesse sotto forma di
      descrizioni documentate estremamente dettagliate.
  ●   Il testing e l'utilizzo di tali specifiche da parte della comunità
      internazionale dei produttori e dei laboratori di ricerca evidenzia le
      soluzioni migliori. A questo gli enti internazionali possono cominciare a
      scegliere cosa scartare e cosa mantenere dei vari contributi, producendo
      l'insieme delle specifiche finali.
  ●   Le specifiche finali vengono accreditate come standard internazionale da
      un ente scientifico. Il risultato è un documento che descrive il modello
      cui le ditte di settore dovranno attenersi, pena l'incompatibilità dei
      loro prodotti tecnologici.

Standard veri e standard falsi:
Nel mondo, ogni giorno nascono molteplici formati di file. I software di
elaborazione dati spesso utilizzano un proprio formato per gestire i file. Se
questi software riceveranno una larga diffusione, allora potranno vantare anche
un'elevata "compatibilità". Molte persone saranno in grado di leggere,
modificare e scambiare dati fra loro usando uno specifico software. Un formato,
tipico di un determinato software, se usato da una stragrande maggioranza delle
persone, viene considerato erroneamente uno standard.

In uno scenario come quello descritto sopra, voi non potrete scambiare
informazioni con le minoranze che non usano il vostro stesso software.

Un file, o più specificatamente un formato è compatibile con ogni sistema
informatico, quando i dettagli di funzionamento sono pubblici, ma soprattutto
accettati, ad esempio, da un consorzio di standardizzazione come la ISO.

Basta un pò di tempo e di impegno per realizzare un nuovo formato              ed
implementarlo in un software, ma creare uno standard è ben altra cosa.

Ogni giorno però gli standard, ma soprattutto coloro che ci lavorano, si trovano
a combattere contro una larga schiera di persone ignoranti che continuano ad
usare quei formati proprietari che si trovano di default nei loro sistemi
informatici casalinghi. Anche da parte di alcuni colossi del settore, come la
Microsoft, è possibile aspettarsi un mancanza di coerenza rispetto determinati
standard.

Spesso a causa di superficialità e/o di profondi interessi economici i formati
proprietari vengono preferiti agli standard. Uno degli aspetti più pericolosi
rappresentato dalla società statunitense Microsoft è la forte attrazione a
raggiungere e conservare una posizione dominante di mercato, imponendo monopoli
spesso difficili da percepire.

                                                                      Pag.12 di 65
Facciamo un esempio: recentemente mi è capitato di dover scaricare il dettaglio
delle chiamate effettuate con il mio telefono mobile Wind. I dati erano stati
memorizzati in un un foglio di calcolo in formato xls e per poterlo visualizzare
e modificare avevo bisogno di un software proprietario. Anche questa volta non
era stato usato uno standard ed io mi sentivo discriminato. Ho contattato quindi
l'assistenza della Wind ed ho atteso. Il giorno dopo mi ha chiamato
un'operatrice. Le ho chiesto come pensava che io dovessi aprire quel documento e
lei si è stupita del fatto che non usavo il software proprietario Excel,
prodotto da Microsoft ed integrato nella suite MS Office, che tra l'altro, mi ha
precisato, essere presente spesso in tutti i computer venduti nei mega store
italiani.

Tralasciando questo notevole punto che conferma l'aspetto monopolistico della
Microsoft in ambito informatico, le ho detto di non aver acquistato una licenza
d'uso per il suddetto software e di voler accedere ai miei dati usando una
modalità standard, o per meglio dire, un formato standard, cioè compatibile con
ogni software e hardware che io preferisco, e non che mi sia imposto da loro,
favorendo in questo modo la distribuzione di qualche particolare software
proprietario.

Tutta questa mia spaventosa richiesta, in realtà si riassume con il formato ods
(OpenDocument Speadsheet). In generale il formato OpenDocument nasce per fornire
una alternativa "aperta" ai formati proprietari, tra cui i DOC, XLS e PPT usati
da Microsoft Office.

Utilizzando formati standard si permette agli utenti di accedere a determinati
dati/documenti da qualsiasi sistema operativo e con qualsiasi software
predisposto alla lettura di quel determinato tipo di dati. Se non esistesse un
software specifico per una determinata piattaforma si avrebbe in mano tutta la
documentazione necessaria ad implementarne uno. Anche a distanza di anni,
ipotizzando che un determinato programma sia caduto in disuso, si avrebbe ancora
la documentazione necessaria per leggere i vecchi dati. Se il formato dei
documenti di WordStar fosse stato standard i governi e le grosse compagnie
avrebbero avuto modo di implementare qualcosa in grado di permettergli di
continuare a leggere i vecchi documenti, che non sarebbero andati persi per
sempre, creando un danno economico molto più ampio di quello necessario a pagare
un gruppetto di programmatori che implementassero questo lettore.

OpenOffice è una suite office gratuita e Open Source che produce file in formato
OpenDocument. OpenOffice è disponibile per tutti i sistemi operativi (Windows,
Linux, Mac, etc). E non solo per Windows!

                                                                      Pag.13 di 65
Cos'è l'Open Source, come è nato e come funziona la licenza GPL:

La condivisione del codice fino agli anni Settanta: A partire dagli anni
Cinquanta, e soprattutto negli anni Sessanta, è stato possibile riusare lo
stesso codice e distribuirlo anche se in modo oggi ritenuto piuttosto
artigianale, ovvero con nastri e schede perforate. Questo fenomeno diventò
evidente soprattutto quando si affermò il vantaggio di riusare una stessa
porzione di codice, il che presupponeva di avere macchine uguali e problemi
simili.

Fino a tutti gli anni Settanta, anche se in misura decrescente, la componente
principale e costosa di un computer era l'hardware, il quale era comunque
inutile in assenza di software. Da ciò la scelta dei produttori di hardware di
vendere il loro prodotto accompagnato da più software possibile e di facilitarne
la diffusione, fenomeno che rendeva più utili le loro macchine e dunque più
concorrenziali. Il software, tra l'altro, non poteva avvantaggiare la
concorrenza in quanto funzionava solo su un preciso tipo di computer e non su
altri, neanche dello stesso produttore.

L'introduzione dei sistemi operativi rese i programmi sempre più portabili, in
quanto lo stesso sistema operativo veniva offerto dal produttore per diversi
modelli di hardware. La presenza di sistemi operativi funzionanti per macchine
di differenti produttori hardware ampliava ulteriormente le possibilità di usare
lo stesso codice in modo relativamente indipendente dall'hardware usato.

Uno di questi sistemi operativi era UNIX, nato nel 1969 come progetto
all'interno di un'impresa delle telecomunicazioni, la AT&T. Una famosa causa
antitrust contro la AT&T le vietò di entrare nel settore dell'informatica.

Questo fece sì che UNIX venisse distribuito ad un prezzo simbolico a buona parte
delle istituzioni universitarie, le quali si ritrovarono ad avere una
piattaforma comune, ma senza alcun supporto da parte del produttore. Si creò
spontaneamente una rete di collaborazioni attorno al codice di questo sistema
operativo, coordinata dall'Università di Berkeley, da dove sarebbe poi uscita la
versione BSD di UNIX, che diventa da un lato un centro di sviluppo ed
innovazione, dall'altro è la base di partenza per numerosi fork.

La nascita del software proprietario: Considerato che la condivisione del codice
è nata insieme all'informatica, piuttosto che di origini dell'Open Source
potrebbe essere più appropriato parlare invece di origine del software
proprietario, ed esaminare il contesto storico in cui questa origine ha avuto
luogo.

L'utilità principale delle licenze restrittive consiste nella possibilità di
rivendere un programma più volte, se necessario con alcune modifiche purché non
rilevanti. Questo presuppone che esistano clienti diversi con esigenze simili,
oltre che l'esistenza di più computer sul quale poter far eseguire il programma.

Queste condizioni cominciano a determinarsi negli anni sessanta, grazie al fatto
che esistevano un maggior numero di utilizzatori con esigenze standardizzabili
come   lo  erano   quelle  delle   organizzazioni  economiche   nell'area  della
contabilità, la logistica o delle statistiche.

L'introduzione dei sistemi operativi rese inoltre possibile l'utilizzo dello
stesso programma anche su hardware differente aumentando così le possibilità di
riutilizzo dello stesso codice e dunque l'utilità nell'impedire la duplicazione
non autorizzata dei programmi.

La suddivisione della AT&T in 26 società, permise alla AT&T di usare logiche
prettamente commerciali nella distribuzione del suo sistema operativo UNIX,
innalzando notevolmente i costi delle licenze e impedendo che potesse essere
modificato.

                                                                      Pag.14 di 65
Il 1982 fu anche l'anno della divisione delle diverse versioni commerciali di
UNIX, portate avanti dai singoli produttori di hardware. Questi ultimi,
effettuando delle piccole modifiche alla propria versione del sistema operativo,
impedirono ai propri utenti l'utilizzo di altri sistemi, facendo in modo che i
programmi scritti per la propria versione di UNIX non funzionassero su versioni
concorrenti. Anche Microsoft creò un suo sistema UNIX, che in pochi
ricorderanno, morto poco tempo dopo a favore di Windows: Microsoft XENIX

Gli anni Ottanta: Stallman, la Free Software Foundation e l'innovazione dei PC:
Al MIT la sostituzione dei computer fece sì che i programmatori (fra i quali
Richard Stallman che sarebbe diventato il portabandiera del free software) non
potessero accedere al sorgente del nuovo driver di una stampante Xerox per
implementarvi una funzionalità gradita in passato: la segnalazione automatica
che vi erano problemi con la carta inceppata. Contemporaneamente, società
private cominciarono ad assumere diversi programmatori del MIT e si diffuse la
pratica di non rendere disponibili i sorgenti dei programmi firmando accordi di
non divulgazione (in inglese: NDA, ovvero Non Disclosure Agreement).

In questo contesto Stallman si rifiutò di lavorare per una società privata e
fondò nel 1985 la Free Software Foundation (FSF), un'organizzazione senza fini
di lucro per lo sviluppo e la distribuzione di software libero. In particolare
lo sviluppo di un sistema operativo completo, compatibile con UNIX, ma
distribuito con una licenza permissiva, con tutti gli strumenti necessari
altrettanto liberi. Si tratta del progetto GNU. GNU è un acronimo ricorsivo che
significa “GNU Non è Unix”.

L'obiettivo principale di GNU era “essere software libero”. Anche se GNU non
avesse avuto alcun vantaggio tecnico su UNIX, sarebbe comunque stato un
vantaggio sociale, permettendo agli utenti di cooperare, e un vantaggio etico
rispettando la loro libertà.

Tale progetto, finanziato dalla FSF, venne pertanto prodotto da programmatori
appositamente stipendiati.

I principali contributi    vennero   da   Stallman   stesso:   il   compilatore   gcc   e
l'editor di testo Emacs.

Furono sviluppate anche altre componenti di          sistema UNIX. Questi programmi
furono distribuiti per circa 150$ che oltre a        coprire i costi di riproduzione
garantivano un servizio di supporto al cliente.      L'unica condizione era che tutte
le modifiche eventualmente effettuate su tali         programmi venissero notificate
agli sviluppatori.

Nacque così la GNU General Public License (GPL), il preambolo del cui manifesto
comincia con:

  ●   Le licenze per la maggioranza dei programmi hanno lo scopo di togliere
      all'utente la libertà di condividerlo e di modificarlo. Al contrario, la
      GPL è intesa a garantire la libertà di condividere e modificare il free
      software, al fine di assicurare che i programmi siano "liberi" per tutti i
      loro utenti.

                                                                            Pag.15 di 65
Gli anni Novanta: Internet, Linux e la Open Source Definition: Benché Internet
avesse visto la luce già negli anni '70 è soltanto agli inizi degli anni '90,
con la diffusione del protocollo HTTP e la nascita dei primi browser, che
Internet cominciò ad essere diffusa, prima in ambito accademico e poi in modo
sempre più capillare anche tra semplici privati.

All'inizio degli anni Novanta, il progetto GNU non aveva ancora raggiunto il suo
obiettivo principale, mancando di completare il kernel del suo sistema operativo
(HURD): vi erano tutti i programmi necessari a far funzionare “un sistema
operativo” ma non la parte più importante, ossia il kernel, il sistema operativo
vero e proprio!

Per sopperire a tale mancanza William e Lynne Jolitz riuscirono ad effettuare il
porting di UNIX BSD su piattaforma Intel 386 nel 1991. Purtoppo negli anni
successivi tale porting si trovò ad affrontare problemi di natura legale che ne
ritardarono temporaneamente lo sviluppo.

Nello stesso anno (1991), l'insoddisfazione riguardante alcuni applicativi di
Minix (sistema operativo unix-like destinato alla didattica, scritto da Andrew
Tanenbaum, professore ordinario di Sistemi di Rete all'università di Amsterdam),
il desiderio di approfondire le proprie conoscenze sul processore Intel 386 a
32bit (a quell'epoca molto economico e popolare) e l'entusiasmo per le
caratteristiche tecniche di UNIX stimolarono Linus Torvalds, studente al secondo
anno di informatica presso l'Università di Helsinki, a sviluppare un proprio
sistema operativo, imitando le funzionalità di UNIX, su un PC appunto con
processore Intel 80386. Nacque così il primo kernel linux.

                      Nella foto Linus Torvalds creatore di Linux.

                                                                      Pag.16 di 65
Torvalds distribuì il proprio lavoro tramite Internet e ricevette immediatamente
un ampio riscontro positivo da parte di altri programmatori, i quali apportarono
nuove funzionalità e contribuirono a correggere gli errori riscontrati. Nacque
così il kernel Linux, il quale fu distribuito fin da subito con la licenza GPL
creata anni prima da Stallman.
L'unione tra il kernel Linux e il software GNU sviluppato dalla FSF permise
finalmente la nascita di un sistema operativo completo ed indipendente. Per
questo motivo le persone più puntigliose amano definirlo GNU/Linux e non solo
Linux.

Linux all'inizio era un semplice emulatore di terminale scritto in C e assembly,
senza doversi appoggiare ad un sistema operativo. L'emulatore di terminale
avviava e gestiva due thread, uno per mandare segnali alla porta seriale e uno
per riceverli; quando poi Linus ebbe bisogno di leggere e scrivere file su
disco, questo emulatore fu esteso in modo che potesse gestire un filesystem.
Lentamente questo programma si trasformò in un intero kernel in grado di gestire
un sistema operativo e Linus iniziò a documentarsi sulle specifiche POSIX,
chiedendo assistenza sul newsgroup comp.os.minix. La prima versione del kernel
Linux, la 0.01, fu pubblicata su Internet il 17 Settembre 1991 e la seconda
nell'ottobre dello stesso anno.

Internet dal canto suo, rese possibile la comunicazione tra persone molto
distanti in tempi rapidi e a basso costo. Inoltre rese possibile la
distribuzione di software direttamente dalla rete, riducendo ulteriormente i
costi di duplicazione e le difficoltà a reperire il software stesso. La
diffusione dei CD-Rom come supporto privilegiato di raccolte di software, rese
possibile il fenomeno delle cosiddette distribuzioni.

Linux può essere considerato come il primo vero progetto "Open Source" che
faceva affidamento essenzialmente sulla collaborazione via internet per
progredire; fino ad allora, anche i progetti di software GNU come Emacs erano
stati sviluppati in maniera centralizzata seguendo una linea guida prestabilita
da un ristretto numero di persone, in base ai principi ”standard” di ingegneria
del software.

Agli inizi degli anni Novanta, l'idea delle licenze liberali era rappresentata
soprattutto da Richard Stallman e dala sua FSF, ovvero le licenze liberali per
eccellenza erano la GPL e la LGPL che però venivano ritenute "contagiose", in
quanto a partire da un codice licenziato con la GPL qualsiasi ulteriore modifica
doveva avere la stessa licenza. Le idee stesse di Stallman venivano viste con
sospetto dall'ambiente commerciale statunitense, il che non facilitava la
diffusione del software libero. Per favorire dunque l'idea delle licenze
liberali nel mondo degli affari, Bruce Perens, Eric S. Raymond, Ockman e altri
cominciarono nel 1997 a pensare di creare una sorta di lobby a favore di una
ridefinizione ideologica del software libero, evidenziando cioè i vantaggi
pratici per le aziende e coniarono il termine "Open Source".

Ciò anche al fine di evitare l'equivoco dovuto al doppio significato di free
nella lingua inglese, visto che spesso veniva interpretato come "gratuito"
invece che come "libero".

La scelta a favore dell'Open Source da parte di alcune importanti imprese del
settore come la Netscape, l'IBM, la Sun Microsystems, l'HP e tante altre negli
anni successivi, facilitarono inoltre l'accettazione del movimento Open Source
presso l'industria del software, facendo uscire l'idea della "condivisione del
codice" dalla cerchia ristretta nella quale era rimasta relegata fino ad allora.

Venne cioè accettata l'idea     che   l'Open   Source   fosse   una   metodologia   di
produzione software efficace.

                                                                           Pag.17 di 65
Riassumendo

Il software Open Source viene distribuito assieme al proprio codice sorgente e
chiunque desideri farlo può studiarlo, modificarlo e migliorarlo a proprio
piacimento. La licenza GPL con cui viene distribuito impone che qualunque
modifica venga apportata al codice sorgente sia resa pubblica così che tutti
possano goderne. Sebbene la maggior parte dei software Open Source oggi in
circolazioni siano gratuiti la licenza GPL non impone a nessuno di lavorare
gratis. Uno sviluppatore può chiedere un compenso per lavorare su parti di
codice Open Source, ma non può nascondere i sorgenti agli occhi di chiunque
voglia visionare/modificare il lavoro che ha svolto.

Vantaggi/svantaggi tecnici, economici e sociali del modello Open Source:

Vantaggi:
Tecnicamente parlando: Potendo attingere da un vastissimo bacino di codice
sorgente scritto da altri non c'è bisogno di reinventare 1000 volte la ruota,
quando qualcosa è già stato fatto si può riusarlo, eventualmente aggiungendo
solo le cose che mancano. In questo modo uno sviluppatore può concentrarsi sulla
pura innovazione, creando solo cose nuove.

Rendendo pubblici i sorgenti si ha la possibilità di ottenere suggerimenti,
aiuti, contributi sotto forma di codice e correzione di errori da chiunque si
interessi alla visione e all'uso di questo codice sorgente. Il mezzo utilizzato
per la comunicazione tra gli sviluppatori che si interessano ad un certo
progetto software è pubblico, quindi anche persone incapaci di programmare
possono dare un contributo utile segnalando difetti (bug), esponendo la loro
idea su come vorrebbero modificare qualcosa o richiedendo nuove funzioni,
testando un certo programma in determinate condizioni e riferendo gli esiti. Ma
anche scrivendo semplicemente traduzioni linguistiche dell'interfaccia del
programma o della sua documentazione o disegnando (se capaci) parti grafiche
come loghi, icone, etc. In questo modo si va a creare attorno a un progetto una
forza lavoro notevole o meglio, se il progetto cattura l'attenzione della
comunità si potrebbero avere decine, centinaia o migliaia di menti che scrivono
codice, effettuano test e bugfix volontariamente.

Commercialmente parlando: Partiamo dal presupposto che oggi il mercato
dell'informatica è predominato da giganti dal passato il cui potere economico è
di una vastità impressionante. Nessuna azienda o programmatore, per quanto
brillante, oggi riuscirebbe mai ad emergere o a farsi notare in un mercato del
genere dove i soliti nomi noti appaiono sui giornali e sulla TV tutti i giorni.

Se mai una piccola ditta cominciasse a produrre qualcosa di innovativo,
singolare e competitivo, immediatamente catturerebbe l'attenzione di questi
giganti, che con ogni probabilità avranno tutto l'interesse ad acquisire questa
piccola ditta per possedere la sua innovazione prima di altri. O a schiacciarla
direttamente perché scomoda. Quindi oggi è sostanzialmente impossibile riuscire
ad avviare un'attività che vive solo sugli introiti prodotti dalla vendita di
software Closed.

Considerando che tolti i giganti restano solo le formiche: Si può vivere e
guadagnare benissimo con l'Open Source, basando i propri introiti non sulla
vendita di una scatola con dentro un CD ma sul valore aggiunto del proprio
lavoro. Un'azienda che nasce e sposa l'Open Source vivrà vendendo la propria
mano d'opera e la propria esperienza e competenza nel settore informatico,
fornendo ai propri clienti soluzioni software confezionate su misura e mano
d'opera specializzata per effettuare l'installazione e l'assistenza software,
comprendendo anche eventuali personalizzazioni su programmi.

E' così che sono nate e vivono diverse aziende che producono soluzioni basate su
Linux, le così dette “distribuzioni” che non sono altro che sistemi operativi
basati su Linux (totalmente standard e compatibili con altri Linux) aggiunti di
piccole personalizzazioni grafiche, tools di amministrazione e configurazione

                                                                      Pag.18 di 65
che spesso sono unici e specifici per ogni diversa distribuzione.

Tra queste ditte ce ne sono anche di molto grandi e ricche (a dimostrazione che
l'Open Source può essere un business valido) tra cui menziono:

   ●   RedHat (produttrice di RedHat Enterprise Linux)
   ●   Novell (produttrice di openSuSE, SuSE Linux Enterprise Desktop e Server)
   ●   Mandriva (produttrice di Mandriva Linux)
   ●   Canonical (produttrice di Ubuntu Linux)
   ●   Tante altre...

Ma non solo grosse società che producono distribuzioni Linux possono vivere
bene. Anche piccole ditte, artigiani e liberi professionisti possono trarre
vantaggio da questo mondo. Tutte le distribuzioni Linux sono liberamente
scaricabili da internet, ovviamente chi le scarica gratuitamente (al contrario
di chi fa un contratto di assistenza pagando) non ottiene nessun supporto
tecnico da parte del produttore e deve quindi arrangiarsi, ma se è in grado di
arrangiarsi, viene da se che, avrà in mano uno strumento potentissimo e
soprattutto libero e gratuito.

Anche chi sviluppa software può godere della comunità che sta dietro a Linux:
immaginiamo voi abbiate una piccola ditta che sviluppa un software gestionale
Open Source, il vostro guadagno non verrà dalla vendita del software (nemmeno se
fosse closed) ma bensì dalla vendita dell'assistenza presso i vostri clienti, e
la vendita della vostra mano d'opera per modificare o adattare lo stesso
programma alle specifiche esigenze del cliente.

Non avrete nessun danno se qualcuno a 100 chilometri o dall'altra parte del
mondo ha preso il vostro programma e sta facendo con esso il vostro stesso
lavoro, tanto il vostro campo d'azione non arriva così lontano. Al contrario,
trarrete un vantaggio da ciò, perché se le altre persone che hanno adottato il
vostro software apporteranno modifiche e miglioramenti interessanti al codice
sorgente voi ne verrete in possesso gratuitamente per la natura stessa della
licenza GPL.

Ma ingrandiamo lo scenario, facciamo finta che voi siate una ditta molto più
grande, con una copertura internazionale come RedHat o Novell, in ogni modo il
fatto che i vostri “concorrenti” possano mettere mano al vostro codice sorgente
non vi disturberà in quanto prima di tutto loro vedono il vostro codice come voi
potete vedere il loro, in secondo luogo i clienti sono fidelizzati a voi, ai
vostri servizi e alla vostra capacità tecnica. Al cliente non importa niente se
il software che gli vendete è liberamente scaricabile da internet, il cliente da
solo non è in grado e non ha le risorse umane o tecniche per fare a meno di voi.
Un'industria automobilistica vuole pensare a produrre auto e non a gestire la
propria rete e i propri server, per questo assume delle aziende specializzate.
Inoltre non è nemmeno una cosa semplicissima migrare un'intera rete da una
distribuzione ad un'altra. Una ditta ha bisogno di stabilità e quando le cose
vanno è insensato e costoso cambiarle.

Socialmente parlando: Molti dei vantaggi sociali dell'Open Source li ho già
elencati come vantaggi tecnici e commerciali, si può aggiungere che l'Open
Source è una grande cosa perché è la pura condivisione del sapere. Chiunque lo
desideri può studiare ed imparare il funzionamento di qualsiasi software,
contribuendo al suo progresso.

L'Open Source è immortale: ad oggi si stima che siano oltre 30 milioni le
persone che contribuiscono alla sua crescita (nemmeno Microsoft con il suo
immenso patrimonio potrebbe mai stipendiare così tante persone), singoli
individui, piccoli gruppi e gruppi più grandi finanziati o indipendenti,
università, aziende piccole, medie e grandi, ricercatori, etc contribuiscono
ogni giorno al suo progresso. Nessuno, nemmeno Microsoft può mettere fine a
questo movimento perché è troppo grande e non è centralizzato, non c'è nessuno
da “assorbire” o fare fallire, se anche Microsoft fermasse una singola azienda o
un gruppo di sviluppatori che produce un software molto apprezzato dagli utenti

                                                                       Pag.19 di 65
(quindi scomodo), tutto il codice prodotto rimarrebbe a disposizione della
comunità e ci sarebbe subito qualcuno in un'altra parte del pianeta che ne
prenderebbe le redini proseguendo il lavoro abbandonato da altri. Inoltre sono
anni che giganti come IBM, Novell, SUN, e tanti altri, si interessano al
fenomeno, finanziando ricerca e sviluppo di altissimo livello su Linux, in
quanto è molto più conveniente che svilupparsi da soli il proprio sistema
operativo. Tenete conto che TUTTI i più grandi super-computer attualmente in
funzione usano Linux, super-computer al servizio della scienza medica, della
ricerca tecnologica, astronomica, chimica, fisica. Ma anche i super-computer
utilizzati per creare i film di animazione che vanno tanto al cinema di questi
tempi.

Campi applicativi di Linux: Aderendo perfettamente agli standard POSIX (standard
che definiscono come deve essere strutturato un sistema UNIX) ed essendo
liberamente modificabile da chiunque, il sistema Linux ha maturato una enorme
versatilità.

Praticamente può essere modificato ed adattato per funzionare su qualsiasi
dispositivo che abbia una qualsiasi specie di CPU a 32bit all'interno.

Si può trovare Linux non solo su normali PC da casa e da ufficio, ma anche su
Server, o super-computer. Su telefoni cellulari, console da gioco (GP2x,
Playstation 2 e 3), piccoli apparati di rete come router, riproduttori
multimediali da salotto, lettori DVD/Divx, decoder satellitari. E' stato usato
sullo shuttle, in satelliti artificiali per telecomunicazioni e anche in sonde
spedite   nelle  profondità   dello   spazio.   E'  stato   usato   su speciali
equipaggiamenti medici robotizzati capaci di effettuare operazioni chirurgiche
delicatissime. E' anche usato nell'automazione dell'industria pesante.

Altri sistemi Open Source: Open/Net/Free/BSD: Sono implementazioni di UNIX
esattamente come Linux, con esso condividono la quasi totalità delle librerie e
dei software GNU, ma hanno un kernel totalmente differente, BSD appunto. La
comunità che c'è dietro è molto più piccola di quella Linux in quanto la licenza
con la quale viene distribuito questo kernel è considerata da molti assurda ed
inaccettabile. La licenza si chiama come il sistema “BSD”.

La licenza BSD è troppo liberale, più liberale della GPL, consente a chiunque di
prendere il codice sorgente, modificarlo in privato, di cambiare nome al
programma e di venderlo come prodotto Closed Source, senza rendere nulla alla
comunità, senza obbligo nemmeno di riconoscere la paternità del prodotto ai veri
sviluppatori.

Cioè io potrei essere la Apple e potrei prendere BSD, farne il porting per il
mio hardware, approfittare della mano d'opera gratuita della comunità che
sviluppa e migliora il codice. Quando il grosso del lavoro è stato fatto dalla
comunità e quello che ne sta uscendo mi soddisfa potrei chiudere completamente
il codice continuando a sviluppare in privato, chiamarlo Mac OSX e venderlo come
mio nuovo rivoluzionario sistema operativo, Closed Source. Senza rendere una
sola riga di codice alla comunità e senza dire ai miei clienti che il sistema
non è frutto del mio sacco se non per la parte grafica, ma che è frutto del
lavoro di una comunità Open Source. Questo è vero, Mac OSX ha alla base BSD, ma
Apple loda se stessa per aver creato qualcosa che non è suo.

Con la licenza GPL un abuso simile non sarebbe possibile, per questo molti
sostenitori dell'Open Source non approvano la licenza BSD.

                                                                      Pag.20 di 65
Perché Linux e l'Open Source sono un pericolo per Microsoft: Microsoft ha sempre
basato il suo business sulla vendita di licenze software, facendosi pagare
profumatamente per ogni copia del suo Windows, di Office e di tutti gli altri
suoi prodotti. Non ha mai erogato servizi. Gli utenti comprano la scatola,
pagano, e si arrangiano. Chi volesse assistenza deve pagare a Microsoft
contratti aggiuntivi, inoltre l'assistenza non prevede assolutamente che qualche
particolare dei software venga modificato su specifiche necessità dell'utente.

Attorno a questo business sono nate tantissime aziende che offrono supporto su
prodotti Microsoft; immaginiamo semplicemente i tecnici che si fanno pagare per
riformattare e reinstallare il vostro PC quando Windows si riempe di virus e non
va più. Solo che questi non sono soldi che vanno a Microsoft, ma alle ditte
private che fanno assistenza.

Per Microsoft sarebbe impossibile passare al modello open. Inoltre gli è
impossibile sopprimere Linux, come si è detto in precedenza, non c'è nessuno in
particolare da far fallire, da comprare o da corrompere. L'Open Source è l'unica
cosa che riesca ad intaccare il suo monopolio.

Per queste ragioni Microsoft teme molto questo nemico impalpabile, e cerca di
attaccarlo, di minacciare i suoi utenti e la comunità ogni volta che ne ha
occasione. In passato Steve Ballmer (braccio destro di Bill Gates) arrivò a
dichiarare che Linux era un cancro che infettava qualsiasi cosa toccasse,
riferendosi alla natura della licenza GPL come “Virale”. Dicendo anche che
preferiva BSD (ovviamente perché BSD permette di copiare codice a sbaffo, per
esempio lo stack tcp/ip fino a Windows 2000 era pessimo, poi su XP venne copiato
quello di BSD con un netto miglioramento).

Il problema di questi continui attacchi verbali contro Linux è che si
ritorcevano contro Microsoft stessa, quegli utenti (grandi aziende, enti e
governi) che erano indecisi se passare a Linux o restare con Windows, di fronte
a tanta arroganza decidevano il più delle volte per Linux.

Allora Microsoft cominciò ad effettuare attacchi trasversali, senza esporsi
direttamente. Uno dei più eclatanti fu quello del caso SCO: SCO era una società
che in un passato remoto commercializzava un sistema UNIX (SCO UNIX) e da anni
distribuiva una sua distribuzione Linux (SCO openlinux). SCO un bel giorno se ne
uscì dicendo al mondo intero che gli sviluppatori Linux avevano copiato
spudoratamente buona parte del codice di SCO UNIX, codice che era di sua
proprietà e di cui deteneva il copyright. Minacciando l'intera comunità di
ritorsioni legali e avviando una causa legale contro IBM che riteneva una delle
maggiori responsabili del riversamento in Linux della sua proprietà.

Anche IBM in passato possedeva una sua versione di UNIX (AIX). Anni prima di
questa vicenda IBM aprì alla comunità Linux diverse tecnologie contenute in AIX.
Lo scopo di IBM era quello di abbandonare lo sviluppo interno di AIX per passare
a Linux, per farlo però bisognava prima che su Linux fossero presenti
determinate tecnologie necessarie per far funzionare i suoi mainframe. SCO disse
che il codice di AIX regalato alla comunità era copiato da SCO UNIX. La causa
legale durò 4 anni e portò SCO a spendere il suo intero capitale in avvocati.

Si scoprì che dietro tutto questo c'era un'anonimo finanziatore che erogava
soldi per permettere a SCO di non andare a fondo, continuando ad alzare
polveroni ovunque, minacciando chiunque, accusando Linux e la sua comunità di
cose completamente infondate. SCO poi si rifiutava continuamente di fornire
prove a sostegno delle sue accuse contribuendo a mantenere un'aria di incertezza
tra gli utenti che in una certa percentuale evitavano Linux per paura di
ritorsioni future. Si scoprì che con buona probabilità i finanziamenti
provenissero da Microsoft.

                                                                      Pag.21 di 65
Puoi anche leggere