Mac OS X: origini

Unix.png Nell’ultimo mese mi é capitato di sentire “Mac OS X é basato su Linux”: no, niente di più sbagliato. Mac OS X fa parte della grande famiglia dei sistemi operativi Unix, nel dettaglio del ramo che ha preso vita dallo Unix di Berkley: il BSD.

Le origini di Mac OS X risalgono a metà  degli anni 80 in quanto erede diretto di NeXT Step.

Breve parentesi storica. Nel maggio del 1985 Steve Jobs venne estromesso dalla Apple, l’anno successivo

  • acquisì la “The Graphics Group” che chiamo Pixar (da poco venduta a Walt Disney in cambio di un sostanzioso pacchetto azionario) e
  • fondò la Next Computer, nuovo tentativo di Jobs sul mercato del computing d’avanguardia.

Il progetto Next prevedeva la realizzazione di computer di fascia alta, delle workstation per intenderci. Il progetto hardware assomigliava ai Mac di quel periodo basati su processori Motorola di classe 680×0. Il sistema operativo NextStep venne realizzato a partire:

  • dal kernel Mach, microkernel sviluppato in seno alla Carnegie Mellon University;
  • dalla userland dello Unix BSD.

Su questa base vennero sviluppati i contributi orginali del gruppo di ricerca e sviluppo della Next:

  • il linguaggio di programmazione Objective-C, per un ambiente integrato ad oggetti con forti caratteristiche di modularità  e riusabilità 
  • un’interfaccia grafica basata su un motere di rendering Postscript, quindi vettoriale e indipendente da media.

Entrambe queste due caratteristiche si ritrovano in Mac OS X: Objective-C é tuttora il linguaggio preferenziale per lo sviluppo, l’interfaccia Postscript si é evoluta in Aqua in PDF (variante del PostScript).

Anche le linee guida di licensing erano già  definite sul finire degli anni ottanta: la base del sistema operativo (kernel e userland) sono sempre state open source, l’interfaccia grafica proprietaria della Next. Attualmente il progetto Darwin é il rilascio open della base di Mac OS X, da cui sono nati diversi progetti completamente open source come GNU Darwin.

NextStep vide la luce nel 1988 e girava specificatamente su hardware Next. Nel 1993 erano pronti i porting per le versioni PowerPC e Intel: questo spiega i tempi di migrazioni quasi istantanei dell’ultima evoluzione in Apple (il porting per Intel era sostanzialmente già  pronto da anni).

First_Web_Server.jpgUna curiosità  per gli amanti del web. Quando nel 1991 Tim Berners-Lee, ricercatore del CERN, inventò HTML e sviluppo il primo browser lo fece su una workstation NextCube con sistema operativo NextStep.

A causa di un grosso calo di vendite e di prodotti sbagliati, nel 1996 Steve Jobs venne richiamato in Apple, che acquisì la Next per 402 milioni di dollari: staff e know-how vennerò integrati e si posero le basi per il futuro sistema operativo della mela che venne rilasciato nel 1999 in versione server, nel 2001 la prima é più conosciuta versione desktop (Mac OS X 10.0 Cheetah).

I tentativi precendenti al ritorno di Jobs nel rinnovare il sistema operativo furono fallimentari e abbandonati: Taligent e Copland. Jobs impose l’uso di NextStep come fondazione del nuovo sistema operativo (nome in codice del progetto Rhapsody).

L’evoluzione da NextStep a Mac OS X fu sostanziosa:

  • il nuovo kernel XNU, basato sull’originale Mach, venne integrato di alcune funzionalità  monolitiche dall’ambiente BSD per ridurre i tempi di latenza classici dei micro-kernel;
  • l’interfaccia raffinata dal punto di vista grafico per il palato degli utenti Apple e portata da PostScript a PDF.

Ma la fondazione del sistema operativo resta ancora oggi di chiara derivazione NextStep: la maggior parte delle classi e delle interfacce portano un prefisso NS_ che ne indica chiaramente l’origine.

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.