Il ritorno di Steve Jobs alla Apple nel 1996 ha rappresentato la rinascita dell’azienda con le conseguenze generali che conosciamo tutti. Un po’ meno noto è lo sviluppo di OS X, che nasce, in pratica, fin dai tempi della fondazione di NeXT nel 1985. Tutte le scelte che porteranno allo sviluppo del sistema operativo di NeXT, basato sul kernel open source, verranno poi trasferite e adottate da Apple con l’acquisizione stessa di NeXT.
In questo articolo vi avevamo parlato della attenta analisi di VisionMobile sul mondo dell’open source, scoprendo con grande stupore quanto Android sia il software più chiuso di tutti i sistemi open source.
Se Android può definirsi quindi open source per l’adozione del kernel linux, la domanda e il dubbio nascono spontanei: per le stesse ragioni si potrebbe sostenere che OS X sia open source al pari degli altri ?
Visto che ormai la definizione di open source si è allargata facilmente ben oltre i suoi confini e gli stessi esperti ritengono superficialmente qualsiasi cosa “open” solo perché possa avere in dotazione un cuore di derivazione kernel open, le similitudini con Android paiono davvero molte, a tal punto che anche Linus Torvalds ha recentemente dichiarato che Android potrebbe mettersi sulla strada giusta per diventare Open Source ! E se lo dice lui…
Sul sito ufficiale di Apple i riferimenti e gli sviluppi intorno al mondo open source made by Cupertino sono visionabili su questo sito web.
Non è un caso se un componente fondamentale del software di Cupertino, Bonjour, sia a tutti gli effetti un sistema basato sullo sviluppo del software libero, con licenza Apache 2.0 . IL codice sorgente è disponibile qui, se qualcuno ha voglia di divertirsi…
Lo stesso software Java è già integrato in OS X e nel suo browser predefinito, mentre WebKit è il cuore aperto di Safari.
Il sito dedicato da Apple all’open source è http://opensource.apple.com/
La NeXT Computer fu fondata nel 1985, dopo il fulmineo licenziamento coatto di Steve Jobs dalla Apple. Jobs non si arrese e cercò subito quello che la tecnologia informatica di allora offriva meglio: la scelta cadde sui software sviluppati dalle Università. L’obiettivo era sempre lo stesso, ovvero quello di creare il migliore dei computer possibili.
I progetti migliori scelti da Steve Jobs erano il BSD (Berkeley Software Distribution), una variante originaria di Unix sviluppata all’Università di Berkeley in California, e il kernel Mach della Carnegie Mellon University.
Partendo da questi due software si è sviluppato il sistema NeXTSTEP, evoluto poi in OpenSTEP, per essere inglobato quindi nel 1996 da Apple con l’acquisizione della NeXT. Le fondamenta del nuovo sistema operativo di Apple, volute da Jobs anni prima, erano state finalmente create.
L’adozione di BSD ha portato numerosi vantaggi: ha permesso il multitasking e ha reso semplice il porting di una vasta gamma di applicazioni basate su Unix.
Darwin è un sistema operativo sviluppato da Apple, il cui nome prende spunto dalla “evoluzione” di BSD/Unix. Darwin è un software “open” che utilizza il kernel XNU, e insieme all’interfaccia grafica Aqua forma in pratica il sistema OS X. Darwin è di fatto il cuore pulsante del sistema operativo di Apple.
Darwin è un sistema operativo libero, distribuito attraverso la Apple Public Source License. Il software è tuttora sviluppato da Apple. La stessa FSF riconosce i meriti del progetto, ma mantiene ancora un paio di punti dubbiosi per considerare Darwin open source al 100%. In particolare i punti che la FSF contesta sono:
1) i collegamenti con file proprietari
2) l’incompatibilità GPL
ma a Cupertino si sta lavorando anche su questi due punti.
Per Apple è stato molto importante il progetto Samba sviluppato per Linux. Samba è un software che permette ai computer di interagire con i computer e i server Microsoft. Apple, come prima la NeXT, ha usato il compilatore GCC sviluppato dal re-filosofo dell’open source, Richard Stallman, e ha adottato anche il motore KDE del browser Webkit per Safari.
Apple ha preso, in pratica, il meglio di quanto era disponibile sul mercato, e ha deciso di usare il kernel basato su BSD anche per i prodotti mobili. La presenza di librerie BSD e di strumenti vari, permettono ai sostenitori del software libero di decodificare le API dell’iPhone, costruendo così una biblioteca pubblica in grado di creare applicazioni al di fuori della sfera diretta di Apple. Anche questo contribuisce al fiorente mercato delle applicazioni, vendute poi sull’App Store.
Da tutto questo lungo processo di sviluppo non è esclusa nemmeno la Microsoft. Il computer sviluppato da NeXT era basato sul kernel open source Mach 3, progettato da Richard Rashid presso la Carnegie Mellon University. Alcuni degli elementi Mach 3 sono stati poi incorporati in Darwin, e sono stati anche la base di ispirazione del microkernel NT di Microsoft. Rashid ha quindi spinto lo sviluppo moderno dei sistemi di Redmond, e non è un caso se ha ricoperto la carica fino poco tempo fa di Vice Presidente Senior per la Ricerca in Microsoft.
Anche se l’open source è l’antitesi di come viene gestito il business e lo sviluppo di aziende come Microsoft, Apple e Google, ha in realtà contribuito in modo fondamentale al successo dei loro stessi prodotti.
Senza l’open source la storia informatica sarebbe ben diversa e molto meno sviluppata di quanto in realtà è avvenuto in questi ultimi 30 anni.
Fonte: Wikipedia, Oram, gnu, Apple, VisionMobile