[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico] [volume] [parte]
Il software è un codice che è trattato dalle leggi sul diritto di autore, in maniera simile a quanto avviene per le opere letterarie. Tradizionalmente, il contratto che regola l'uso del software è la licenza.
Il software ha un proprietario (salvo il caso del software di dominio pubblico), che è tale in quanto «detiene i diritti di autore». Questo proprietario può essere l'autore originale, oppure un altro detentore che ne ha acquisito i diritti in base a un contratto.
L'utilizzo del software può essere concesso gratuitamente o a pagamento, per le operazioni stabilite nel contratto di licenza. Il pagamento per l'«acquisto» di software, non si riferisce all'acquisizione dei diritti di autore, ma solo delle facoltà stabilite dalla legge, ovvero da quanto indicato nella licenza.
La natura del software è tale per cui questo è composto solitamente da due parti fondamentali: il codice sorgente e il codice eseguibile. Il primo è intelligibile, il secondo è adatto all'esecuzione e non è intelligibile. Le leggi dei vari paesi che tutelano il diritto di autore per il software tendono a consentire la distribuzione del solo codice eseguibile, lasciando che chi detiene i diritti di autore possa mantenere nascosto il codice sorgente. Inoltre, le leggi di questi paesi tendono a considerare illecita la decompilazione, ovvero lo studio del codice eseguibile volto a scoprirne il funzionamento.
|
In molti paesi esiste anche la possibilità di brevettare algoritmi e altri concetti riconducibili al software. Il brevetto impedisce così l'uso dell'algoritmo o dell'idea registrata, se non dopo un'autorizzazione esplicita da parte del detentore di questo tipo di diritto.
Il software libero è software che fornisce il permesso per chiunque di utilizzarlo, copiarlo e distribuirlo, in forma originale, o anche dopo averlo modificato, sia gratuitamente che a pagamento.
Pertanto, il software libero può essere tale solo se viene messo a disposizione assieme al codice sorgente; inoltre, la «libertà» del software libero non sta nel prezzo, ma nella possibilità di usarlo senza vincoli, di copiarlo come e quanto si vuole, di poterne distribuire le copie, di poterlo modificare e di poterne distribuire anche le copie modificate.
Si distinguono quattro punti fondamentali, necessari perché il software possa essere considerato «libero»:
|
Il software che, oltre alle libertà fondamentali, concede di trarre profitto dalla ridistribuzione del software (di solito perché sono stati introdotti dei miglioramenti), è libero, mentre quello che non lo consente, è software semi-libero.
Il software che non dà le libertà fondamentali è definito come software proprietario.
Il software libero, quando impone che le sue derivazioni restino libere, è software copyleft («permesso d'autore»). Il classico esempio di licenza di questo tipo è la licenza GNU-GPL.
I primi utenti di UNIX sono state le università, a cui in particolare questo sistema operativo veniva fornito a costo contenuto, con i sorgenti, ma senza alcun tipo di supporto tecnico, né alcuna garanzia. Proprio questa assenza di sostegno da parte della casa che lo aveva prodotto, assieme alla presenza dei sorgenti, stimolava la cooperazione tra gli utenti competenti, in pratica tra le università.
Il maggior fermento intorno a UNIX si concentrò presso l'università della California a Berkeley, dove a partire dal 1978 si cominciò a distribuire una variante di questo sistema operativo: BSD (Berkeley software distribution). Per il software prodotto in questo modo, nacque una licenza d'uso che rimane il progenitore della filosofia del software libero: la licenza BSD.
Nel 1984, Richard Stallman inizia il progetto GNU (Gnu's not Unix), per la realizzazione di un sistema operativo libero; libertà intesa come la possibilità data agli utenti di distribuire e modificare il software a seconda delle proprie esigenze e di poter distribuire anche le modifiche fatte. Il progetto parte da un compilatore C.
Il progetto GNU darà vita così a una grande quantità di software utilizzabile anche sulla maggior parte delle piattaforme Unix, indirizzando implicitamente il software libero nella direzione dei sistemi di questo tipo.
Nel 1985, Richard Stallman fonda la FSF, Free software foundation, con lo scopo preciso di creare e diffondere la filosofia del «software libero», finanziando in particolare il progetto GNU.
Alla fine degli anni 1980, il professor Andrew S. Tanenbaum sviluppa Minix, un sistema operativo in stile Unix per elaboratori i86, realizzato specificamente per uso didattico. Era sufficiente acquistare il libro a cui era abbinato e si otteneva un sistema completo di sorgenti. Tuttavia, Minix poteva essere usato, distribuito e modificato, solo per fini didattici.
Nel 1990, il progetto GNU inizia lo sviluppo del kernel Hurd.
Linus Torvalds inizia lo studio delle funzionalità di multiprogrammazione dei microprocessori i386, cercando di applicare queste conoscenze alla realizzare di un sistema simile a Minix, lavorando inizialmente proprio su un sistema Minix.
Nel 1991, Linus Torvalds arriva a ottenere un sistema operativo minimo, composto da una primissima edizione del kernel Linux, autonomo da Minix, sfruttando il lavoro del progetto GNU. Da quel punto inizia il progetto di sviluppo del kernel Linux.
A partire dal 1992 appaiono le prime edizioni di un sistema BSD libero dal codice originale UNIX. I primi tentativi con 386BSD sono ostacolati da battaglie legali e da quel punto si sviluppano diverse varianti libere del sistema BSD (NetBSD, FreeBSD, OpenBSD), mentre 386BSD scompare.
Nel 1998 nasce la definizione Open Source, con l'intenzione di sostituire la definizione di «software libero»; tuttavia, Open Source e «software libero» (secondo FSF) non sono esattamente la stessa cosa.
Intorno al 2000 inizia la distribuzione del sistema GNU/Hurd (sistema GNU basato su kernel Hurd).
Nell'anno 2000, la licenza del sistema Minix viene modificata diventando molto simile alla licenza BSD.
|
Vantaggi per l'utente finale:
il software può essere studiato, consentendo la diffusione della conoscenza;
con le dovute conoscenze, il software può essere verificato, soprattutto quando si utilizza in ambiti critici dal punto di vista della sicurezza (pubblica amministrazione e difesa);
il software può essere modificato per adattarlo alle proprie esigenze;
la concorrenza mette a disposizione il software a costi inferiori;
la concorrenza consente di scegliere liberamente il fornitore;
le libertà offerte dal software libero eliminano i problemi burocratici legati all'installazione del software negli elaboratori, consentendo la copia e la ridistribuzione.
Vantaggi per chi lo produce:
la produzione di software richiede la disponibilità di altro software (per esempio i compilatori e le librerie standard); così, la produzione di software libero parte avvantaggiato dalla disponibilità del software libero già esistente, senza i costi iniziali che altrimenti dovrebbero essere sostenuti per l'acquisizione dei diritti necessari, riducendo di conseguenza i tempi per lo sviluppo;
la produzione di software libero pone l'accento sulle persone che scrivono il codice e non su un marchio particolare;
Svantaggi per l'utente finale:
il software libero richiede una maggiore consapevolezza sul piano informatico;
il software libero richiede una maggiore consapevolezza sul funzionamento del singolo prodotto software e sull'organizzazione del sistema operativo;
l'utente deve fare le proprie scelte e seguirne la strada (se non ne è in grado, deve affidarsi a personale competente di sua fiducia).
Svantaggi per chi lo produce:
il software libero non consente di mantenere una posizione privilegiata nel mercato;
i margini di reddito sono ridotti, per l'assenza delle «rendite di posizione».
Conseguenze per la società:
non è più necessario scrivere la stessa cosa due volte, se non per migliorarla;
i formati dei dati tendono a essere più compatibili, escludendo in particolare tutto ciò che è vincolato da brevetti;
la compatibilità e la standardizzazione diventano esigenze primarie di chi produce il software;
l'investimento di denaro pubblico per la produzione di software libero si traduce in un risultato che rimane a disposizione della società, sia come programma finito, sia come codice che può essere riutilizzato;
si valorizza la persona umana;
il software libero contribuisce a diffondere una cultura informatica a disposizione di tutti;
viene favorito lo sviluppo di aziende di piccole dimensioni, con competenza locale, perché il reddito prodotto con il software libero deriva principalmente dall'assistenza ai clienti.
Appunti di informatica libera 2006.07.01 --- Copyright © 2000-2006 Daniele Giacomini -- <daniele (ad) swlibero·org>
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome software_libero.htm
[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico]