Introduzione all'Open Source
“La Sapienza” Linux User Group
Cos'è Unix?
Unix e' un sistema operativo, creato da
.Kernighan e D. Ritchie insieme ad
altri programmatori presso i Bell Labs nel 1969.
B
Questo gruppo di programmatori iniziò costruendosi
un linguaggio di
programmazione: il C ispirato al B.
Il Kernel Unix fu scritto basandosi su quello di
Multics e Unics.
Codice disponibile
In principio (quando ancora i soli a possedere
l'hardware erano le universita' e i laboratori
privati) chiunque poteva richiedere ai Bell Labs,
ad un prezzo irrisorio, un nastro contenente il
software e i manuali cartacei relativi .
Inoltre si era completamente liberi di modificare il
codice secondo le proprie necessita'.
Fine anni '70: miglioramenti in
Unix
Verso la fine degli anni '70 l'Universita' di Berkley
comincio' ad importare migliorie al codice Unix
grazie alle loro ricerche relative soprattutto alle
reti e al protocollo TCP/IP.
BSD
(Berkley Software Distribution)
Iniziò da lì il cosidetto ramo "BSD" (Berkley
Software Distribuition).
Le varianti piu' famose di questi software sono:
freeBSD, openBSD, e netBSD.
Links (1)
http://www.bell-labs.com/history/unix/
http://internethistory.org/archives/early.history.of.unix.html
Software proprietario
Siamo agli inizi del 1980: dopo l'esponeziale
crescita della popolarita' di Unix e la sua cessione
ad AT&T, i nastri del codice sorgente divennero
un prodotto commerciale chiamato AT&T UNIX.
Da quel momento tutti gli sviluppatori iniziarono
a scrivere software proprietario di cui non era
possibile vedere ne' tantomeno modificare i
sorgenti.
Richard M. Stallman
Nel 1983, quando lavorava presso il laboratorio di
Intelligenza Artificiale al MIT di Cambridge,
Richard Stallman
noto' un' inversione di tendenza tra i suoi colleghi,
che iniziarono ad apprezzare la politica del
closed-source. Ma lui non pote' recepire ne'
tantomeno appoggiare la filosofia del software
prorpietario: non poter condividere il lavoro, ne'
modificarne uno gia' esistente.
Il progetto GNU
Per poter usare liberamente il computer serviva
quindi un sistema libero. Stallman decise così di
iniziare a scrivere un nuovo sistema operativo,
pienamente
compatibile
con
Unix,
completamente open source.
Prese così vita il progetto GNU (GNU is Not
Unix).
GPL (GNU Public License)
La licenza GPL (GNU Public License) permette di
distribuire software garantendo all'utente 4 libertà
fondamentali:
0) libertà d'uso
1) libertà di copiare il codice sorgente
2) libertà di modificare il codice sorgente
3) libertà di redistribuire copie letterali o
modificate del codice sorgente
Free as in freedom
Quando si parla di software libero si intende la
liberta' e non di prezzo. Infatti nessuno vieta, a
chiunque sviluppi software libero, di guadagnarci.
In questo modo ogni utente ha tutta la liberta' di cui
ha bisogno.
Links (2)
http://www.gnu.org/copyleft/gpl.txt
Open Source
Il concetto di software Open Source venne
introdotto nel 1998 da alcuni programmatori. Essi
temevano che il termine “free”, in Free Software,
implicasse che il software dovesse essere gratuito
e che venisse confuso con il freeware, distribuito
gratuitamente ma nella sola forma di eseguibile.
La Open Souce Initiative
La Open Source Initiative venne fondata allo scopo
di promuovere il software conforme alla
definizione di "Open Source Software" ed e'
derivata dalle Debian FreeSoftware Guidelines,
inizialmente elaborate da Bruce Perens.
Libero / proprietario
In realta' parlare di open source e' restrittivo, infatti
si potrebbe estendere il concetto, applicato ora al
software, a tutto cio' che non e' materiale, come la
musica, la libera informazione, il libero dialogo
etc...
In ogni caso ciò che differenzia il software libero
da quello proprietario risiede nelle liberta'
garantite dal primo ed esplicitamente negate dal
secondo.
Links (3)
http://www.opensource.org
http://www.gnu.org/philosophy/free-software-forfreedom.html
Linux
All'inizio degli anni '90, Linus Torvalds, un
giovane studente finlandese di
scienze
dell'informazione, comincio' ad apportare
modifiche al kernel di Minix, il sistema operativo
usato nei corsi che seguiva e decise a quel punto
di scriverne uno tutto suo.
1991: rilascio di Linux
Alla fine del '91 Torvalds pubblico', sotto licenza
GPL, il primo kernel di freaX, (gioco di parole tra
Free, libero, Freak, strano, e la X di unix). Ma
alla comunita' non piacque il nome, perche'
troppo simile alla moda freaky in voga in quegli
anni. Si decise così di intitolare il progetto a chi
lo aveva creato. Quindi freaX divenne LINUX.
Il più grande progetto
collaborativo della storia
Naturalmente Torvalds chiese supporto a tutti i
programmatori che volevano lavorare al suo
kernel. Questo aiuto non tardo' ad arrivare e
permise a Linux di diventare cio' che e' adesso: un
sistema universale che puo' essere utilizzato sia
da Desktop environment che come piattaforma di
sviluppo.
Links (4)
http://www.linux.org
http://www.ils.org
Cos'è una distribuzione?
Per realizzare un sistema operativo completo ed
usabile, singoli programmi e un kernel non
bastano: e' necessaria un'organizzazione tra gli
applicativi ed il cuore del sistema operativo,
questa organizzazione prende il nome di
distribuzione.
Molte distribuzioni,
un solo cuore
Quando si parla di sistemi GNU/Linux si intende la
suite degli applicativi GNU distribuiti insieme al
kernel Linux.
Quindi quando si sente parlare di Debian, Ubuntu,
RedHat, SuSE, in realta' si tratta
di distribuzioni che condividono tutte lo stesso
cuore: Linux.
Links (5)
http://www.debian.org
http://www.gentoo.org