Emulazione:
Index ::
PowerPC :: Intel :: Mac "classic" :: Mac su NeXT
Introduzione
Su it.comp.macintosh con alcuni amici (Luciano Dadda, Nicola d'Agostino, Biggo e altri), qualche tempo fa, ci eravamo chiesti a che punto stia l'emulazione di altri sistemi operativi su Mac OS X. Si parla, ovviamente, di emulazione legale, di sistemi operativi di cui si possiede la licenza o di hardware che si possiede (nel caso servano le roms), non di emulazioni illegali (e volendo anche poco utili e intelligenti), come la prova della versione beta (riservata ai programmatori) di Mac OS X per Intel su PC, giustamente impedita da Apple; operazioni che sconsigliamo vivamente, per una lunga serie di ragioni, non solo legali.
Qui si parla, invece, di emulare (o virtualizzare) da una parte i Mac "classici", per le ragioni che vedremo, e dall'altra Windows e alcuni sistemi UNIX, come NeXTStep, OpenStep, FreeBSD o Linux, per utilità o anche con intenti didattici o dimostrativi. Mai per scopi di lucro o in qualche modo illegali.
Ora la discussione si è allargata anche alla virtualizzazione (Mac con processore Intel), molto in voga con l'avvento delle nuove macchine Apple.
Abbiamo condotto dei test sia per quanto riguarda l'emulazione su Mac con processore PPC, sia per quanto riguarda la virtualizzazione su Mac con processore Intel. Nel tempo abbiamo aggiornato queste pagine, e speriamo di poterlo fare ancora.
Le prove per l'emulazione su PowerPC sono state effettuate su due PowerBook Pro Apple G4, 12" da 1 GHz con 768 MB di RAM e 15" da 1.6 GHz con 1.5 GB di RAM.
Le prove per la virtualizzazione su Mac con processore Intel sono state effettuate su un MacBook Pro Intel Core 2 Duo, 2.33 MHz con 2 GB di RAM (di recente portato a 3 GB).
La RAM è fondamentale per ottenere ottimi risultati con Virtual PC, mentre occorre in misura minore per emulatori come mini vMac e Basilisk II. Altrettanto importante per ottenere buone prestazioni con Parallels o BootCamp.
Mac OS X e la sua lunga storia
Mac OS X è sicuramente uno dei sistemi operativi più completi, ma anche più utili ed eleganti oggi esistenti. La sua lunga storia comincia tanti anni fa, tra il 1975 e il 1977, a Cupertino (Silicon Valley, California) dall'incontro di due menti come quelle di Steve Wozniak e Steve Jobs, che costruirono una macchina intorno al processore 6800 e la chiamarono Apple I, cui seguirono presto Apple II, Apple III, e, negli anni 80, Lisa e Macintosh (1984, anno orwelliano: «On January 24, Apple Computer will introduce Macintosh. And you'll see why 1984 won't be like "1984"», diceva la pubblicità di allora). Nel 1985 viene presentato dalla Microsoft Windows (allora minimamente paragonabile alla graziosa GUI del Macintosh) e Steve Jobs lascia Apple per fondare la NeXT. Jobs torna in Apple nel 1996 e fa acquisire alla società la NeXT, segnando così il destino di Mac OS.
Infatti, dall'incontro tra la tradizione del System di Macintosh, l'implementazione Unix del NeXT, Mach e BSD nascono prima Rhapsody e poi, nel 2001, l'attuale Mac OS X, un sistema operativo che rappresenta l'evoluzione di una storia ultra trentennale di sistemi operativi e metafore vincenti, in tema di GUI ed interfacce grafiche, come la Scrivania (Desktop), le icone, il cestino, il Finder, gli alias, ecc. Al tempo in cui scriviamo si sono viste le versioni denominate: Cheeta, Puma, Jaguar, Panther, Tiger, e Leopard.
Emulazione su Mac con processore PowerPC
Abbiamo riassunto in questa pagina i risultati ottenuti con Virtual PC su Mac con processore PowerPC.
I sistemi operativi provati: Windows XP, FreeBSD 6.0, OpenStep 4.2 (NeXT), MS Dos 7.1.
Virtualizzazione su Mac con processore Intel
Le osservazioni e i risultati sulla virtualizzazione di sistemi operativi su Mac con processore Intel li abbiamo riportati su questa pagina.
I sistemi operativi testati: Linux Debian 4.0, FreeBSD 6.2 e 7.0, Solaris 10, OpenStep 4.2 (NeXT), Windows XP, Windows Vista, Haiku (versione free di BeOS).
Emulazione dei Macintosh "classici"
Alcuni test su emulatori di Mac "classici" su Mac con processore PPC e Intel li abbiamo riassunti in questa pagina.
Emulatori provati: Basilisk, miniVMac, SheepShaver.
Emulazione di Mac OS su NeXT
E se volessimo emulare un Mac su una macchina NeXT?
In questa pagina Luciano Dadda spiega come fare ad installare un'emulazione Mac con System 7 su NeXT Cube Turbo con NeXTstep 3.3, SoftPC e Daydream 1.46
Mac OS X e Unix
Una parte della storia di Mac OS X comincia prima che Apple nascesse, nei primi Anni '70, all'Università della California di Berkeley, dove venne rilasciata una versione di Unix denominata Berkeley Software Distribution (BSD), una distribuzione basata su BSD 4.4 Lite. In Mac OS X si trovano anche spunti e idee tratti da altre derivazioni da BSD: FreeBSD, NetBSD ed OpenBSD. Il codice di base di Mac OS X venne in gran parte modellato su FreeBSD (e NeXTStep).
Per un diagramma della storia di Unix in tutte le sue implementazioni (Aix, A/UX, HP-UX, *BSD, Solaris, System V, Xenix, QNX, Minix, Linux, e per quanto ci riguarda da vicino NeXT, Rhapsody e Mac OS X) si veda l'ottima pagina di Éric Lévénez.
Oltre a BSD, Mac OS X deve anche un notevole tributo a Mach, infatti il kernel - XNU - è fortemente influenzato dalla filosofia del progetto del microkernel Mach di Carnegie Mellon. In Mac OS X, comunque, il kernel (XNU) è una sintesi tra microkernel Mach e kernel e spazio di indirizzi di BSD.
Una notevole influenza su Mac OS X fu esercitata soprattutto da NeXTStep e dalla sua evoluzione, OpenStep, i sistemi operativi delle macchine NeXT, prodotte dall'azienda fondata da Steve Jobs quando era, per un certo periodo, fuoriuscito da Apple. Nel 1997 Apple ha rilevato la NeXT e Steve Jobs è tornato in Apple portando con se anche NeXTStep e tutta l'esperienza della NeXT. Molte parti di OS X sono sviluppi e aggiunte le cui idee fondamentali risiedono nella tecnologia di quel sistema operativo, già proiettato nel futuro una decina d'anni fa. Come sottolinea la sessa Apple in un documento di Developer Connection: «From the file system layer to the executable format and from the high-level Cocoa API to the kernel itself, the lineage of Mac OS X as a descendant of NeXTStep is evident».
Detto questo, è anche vero che nelle ultime versioni di Mac OS X, soprattutto in Tiger e Leopard, Apple sta rivedendo e aggiornando alcune cose che erano fondamentali in NeXTStep, ad es. Netinfo. Questo si inquadra nell'ottica di una maggiore fusione con i principi tratti da BSD e di una maggiore efficienza del sistema. Ma non è questa la sede per sviluppare l'argomento.
Fink e Darwin Ports
Mac OS X ospita già al suo interno un Terminale, basato su Darwin (con parti di BSD e NeXTStep), e il sottosistema grafico X11 (X Window) con un buon numero di programmi open source, sia a linea di comando, sia grafici (X11 e XFree86). Si va da perl, python, ruby on rails e php, ai tipici strumenti della GUI "X" tipica di Unix. Altri programmi, come lynx, wget, pine, figlet, OpenOffice, ecc. sono liberamente scaricabili, anche dal sito di Apple.
Grazie a questi solidi toolkit, sono stati sviluppati per Darwin migliaia di ports di programmi e strumenti già disponibili in Linux e nelle varie implementazioni di Unix, soprattutto i vari *BSD. Sono stati quindi sviluppati due importanti progetti: Fink e Darwin Ports, che forniscono sistemi per installare ed usare in Mac OS X, tramite Darwin, X11 e il server grafico Quartz, questi programmi. Persino interi ambienti desktop e GUI, come Gnome e KDE sono disponibili anche come ports in Fink e Darwin Ports. Come GUI, quindi, al posto di X11, viene usato Quartz e Aqua, cosicché i programmi girano direttamente integrati nella scrivania del Mac, sia pure tramite la mediazione di X11.
I ports di Fink, e anche quelli di Darwin Ports, sono migliaia (da lynx a LaTeX, a XEmacs e Vim, a XEphem, ad Abiword,...), e consentono in genere di avere tutta la potenza dei tools Unix senza installare emulatori o altri programmi. Se questo non bastasse, o se non ci sono ancora ports adatti, allora installare tramite Virtual PC, BootCamp, Parallels, sistemi operativi come FreeBSD, Linux o Solaris 10 potrebbe essere la soluzione.
Conclusioni
Emulare per il piacere di emulare lascia il tempo che trova (è un gioco), e riempire l'hard disk tanto per farlo non ha molto senso (lo spazio non basta mai), ma se si ha la necessità di occupare qualche gigabyte di disco per emulare (o virtualizzare) altri sistemi operativi ed altre GUI su Mac OS X per lavoro, didattica o altri utili scopi, noi abbiamo cercato di dare, per quanto possibile, utili indicazioni, tips e consigli, sperando di essere stati d'aiuto o almeno di aver suscitato la curiosità del Lettore. Al contempo invitiamo a scriverci per indicarci altri spunti, soluzioni, suggerimenti (o riprovazioni), novità, integrazioni..., per migliorare queste pagine e condividere esperienze in materia.