Emulazione:
Index ::
PowerPC :: Intel :: Mac "classic" :: Mac su NeXT
Virtual PC: le macchine virtuali
Virtual PC per Mac (esiste anche una versione per Windows), giunto alla versione 7.02, come indica il nome è un programma che crea una "macchina virtuale" che opera come una specie di PC dentro Mac OS X, con tanto di hard disk (che in realtà è un hardfile, ovvero un file in cui viene simulato un hd), cd-rom e floppy disk virtuali e tutto ciò che concerne un personal computer reale. Lo scopo fondamentale per cui Connettix prima e Microsoft (che da quella l'ha comprato) poi l'hanno realizzato e lo mantengono è di far girare dentro Mac OS X una macchina virtuale in cui installare, far girare ed usare Windows, ma è stata prevista la possibilità di far funzionare altri sistemi operativi, come Linux e Unix (nelle diverse varietà) o DOS o altri ancora.
Bisogna precisare che di ogni sistema operativo che non sia opensource o free, bisogna possedere la licenza d'uso e i relativi dischi (cd o floppies). Virtual PC viene venduto in versione standalone, o con alcune versioni di Windows (XP Professional, 98, 2000) con relativa licenza. Per gli altri SO di cui si parla in queste pagine bisogna avere, oltre al programma registrato, anche le relative licenze.
NeXT e OpenStep
Pur avendo Apple dismesso la produzione e l'aggiornamento di NeXTStep e OpenStep, essa detiene ancora il copyright, pertanto per poter installare su un computer uno di questi sistemi operativi si deve legalmente possedere il relativo supporto (floppy o CD). Per fortuna su eBay non è difficile trovarne qualche copia in vendita. Oppure si deve possedere una macchina NeXT, anzi - come osserva Lucio - meglio anche più di una :-)
Noi abbiamo recuperato una copia dell'User CD di OpenStep 4.2 per Intel (ma il Developer CD sarebbe anche meglio), grazie al gentile dono di un amico (che preferisce rimanere anonimo), e l'abbiamo usata per le prove, seguendo gli ottimi consigli di Lucio (che ha provato per primo) e questo Tutorial.
Il CD di OpenStep è formattato in UFS, e purtroppo UFS diverso da quello supportato da Mac OS X, pertanto non viene letto da OS X, non viene montato sulla scrivania, e Utility Disk avverte se si vuole continuare (e bisogna farlo per l'installazione; per espellere il disco servirsi, alla fine, del pulsante apposito sulla tastiera). Se si vuole fare una copia di sicurezza del disco si devono usare altri sistemi, come la copia byte a byte. Maggiori info in merito al filesystem UFS si possono leggere, ad es., in un articolo di Nicola d'Agostino: HFS, UFS, SMB...
Non abbiamo provato l'installazione di NeXTStep 3.x su Virtual PC (stiamo ancora cercando il disco), ma, a quanto leggiamo in vari tutorial sul Web, questa funziona solo su VPC 5 e - pare - non su 6.1 e 7.02.
Per cominciare ci siamo procurati le immagini dei floppy di installazione e boot, liberamente prelevabili da questa pagina di Apple.
Abbiamo quindi aperto VPC e, con Virtual Disk Assistant, abbiamo creato un hardfile fisso (non è possibile usare files dinamici, come con l'installazione di Windows) e non formattato. Noi abbiamo scelto di creare un hardfile di 1 GB (il sistema vi si è poi installato lasciando ben 800 MB liberi per i programmi, per cui, volendo, si potrebbe anche provare con un hard disk virtuale di 500 MB, il minimo che VPC consente). In ogni caso non si possono superare 2 GB, la massima dimensione che OpenStep supporta.
Creato, quindi un novo documento in Virtual PC, associandolo all'hardfile in questione, che abbiamo chiamato, con molta fantasia, "NeXT". In questa fase si deve porre attenzione a non mettere come memoria virtuale del documento più di 32 MB di RAM, perchè abbiamo notato dei malfunzionamenti, se non addirittura l'impossibilità di fare il boot se la memoria virtuale è maggiore. Quali siano le reali cause non sappiamo.
Abbiamo dunque inserito il floppy (o meglio la sua immagine 4.2_Install_Disk.floppyimage), trascinando la sua icona sull'icona del floppy di VPC (si può fare anche con il menu "Unità -> Cattura Dischetto"), e in modo simile "catturato" il CD, e abbiamo riavviato il PC virtuale.
Al boot OpenStep chiede prima in che lingua proseguire l'installazione (4 per l'italiano, che fortunatamente c'è), poi chiede il disco dei drivers (4.2_Driver_Disk.floppyimage), da "catturare" come prima, e prosegue. Quando chiede il driver per SCSI, bisogna catturare il floppy 4.2_Beta_Drivers_1.floppyimage, cliccare "8" per cambiare il floppy, quindi prestare un po' di attenzione alle finestre di dialogo, appena appare l'elenco dei drivers cliccare "7" (sempre senza virgolette) per vedere gli ulteriori drivers, e infine cliccare "2" per scegliere "Primary/Secondary (Dual) EIDE/ATAPI Device Controller"; questo due volte, sia per l'HD, sia per il CD.
A questo punto OpenStep entra nella schermata "Mach Console" (bianca con barra grigia) e prosegue l'installazione. Quando appare il messaggio "completed" bisogna riavviare, perciò espellere il floppy (menu di VPC: Unità -> Espelli Disco) e riavviare. Se in questa fase l'installazione dovesse chiedere il disco del driver EIDE, reinserire il floppy 4.2_Beta_Drivers_1.floppyimage.
Viene quindi chiesto di completare l'installazione, e appare la finestra di dialogo (per ora in bianco e nero) di Congifure.app. Per quanto riguarda il display scegliere "#9 Motion 771 PCI Adapter (4 MB modes)", anche se non viene automaticamente trovata, almeno funziona. Scegliere poi una risoluzione video ragionevole, e l'unica che pare funzionare è "RGB 888/32", che manda il monitor a 1024x768 e 32 bit, niente male.
Cliccare dunque sull'icona a forma di globo per impostare la scheda di rete, e scegliere "DEC chip 21041". La scheda di rete viene vista, il ché non vuol dire che poi si possa usare, cosa assai più complicata...
A questo punto viene chiesto di installare dei pacchetti. Meglio installare soltanto il pacchetto della lingua italiana e tralasciare il resto, che - almeno nel nostro caso - ha dato dei problemi, forse perchè il masterizzore DVD DL del PowerBook G4 1.6 è troppo veloce per il sistema (e non c'è verso di "rallentarlo"), uscendo dall'installazione con messaggi tipo «Many DSP...»; i pacchetti si possono anche installare dopo. Se tutto va bene, invece, si prosegue e viene chiesto il layout della tastiera e si entra finalmente nella bella grafica di Workspace Manager. Ora bisogna notare che il tipico utente di NeXTStep / OpenStep è /me, e per poter entrare in "root" (come sarà presto necessario) bisogna assegnare una password a "me"; per farlo si clicca sull'icona del calendario (che ha una data e un'orario errati: pretende di trovarsi nel ...1997 e inoltre ha il ...Millennium bug, ma tralasciamo questo aspetto, almeno per ora); si apre il pannello di controllo, si imposta la password e a questo punto si può fare logout, cliccando sull'icona di Workspace Manager (logo NeXT) e poi sulla voce di menu "logout". Fare login ora come root (nessuna password), e in Workspace Manager navigare su /NextAdmin e far partire HostManager.app per fare i seguenti cambiamenti (che dovrebbero servire ad evitare la lunga pausa al boot alla ricerca della rete; a dire il vero spesso poi la pausa la fa lo stesso):
- Scegliere "Usa solo Dominio Locale" in Netinfo (per eliminare la pausa)
- Impostare come IP 192.168.131.66
- Impostare come Router 192.168.131.254
- Disabilitare "Tempo dalla Rete" (per i problemi Y2K di cui sopra)
Se in questa fase l'icona di Workspace Manager (quella in alto con il logo NeXT) dovesse apparire "offuscata" (vedasi figura WSM blurred), come se il programma fosse attivo, ma nessuna sua finestra appaia sul desktop (a volte lo fa, non abbiamo potuto capire perchè), cliccare sull'icona di Terminale (l'ultima nel dock di root, prima del riciclatore) e nel terminale digitare exit e rifare il login come root, poi continuare con quanto detto. Questo purtroppo può accadere anche quando si è loggati con l'utente normale (me), e allora diverrebbe persino difficile uscire dal sistema senza riavviare a forza, quindi meglio creare al più presto nel Dock di "me" l'icona del Terminale, almeno si potrà fare logout da questo (con exit) e riloggarsi, magari.
Dopo il riavvio (che, ripetiamo, potrebbe essere lento e fare pause su "Ricerca Rete" o su "Servizi di denominazione" - pessima traduzione di Named -, nonostante "l'hack" in HostManager), i tutorial consigliano di impostare anche le due righe seguenti in /etc/rc.net (con vi: "vi /etc/rc.net"; "i" per la modalità inserimento, "ESC" per la modalità comandi, ":w!" per salvare il file di sola lettura, ":q" per uscire), verso la fine, prima della riga commentata che precede la reinizializzazione di named e recita «# Finally, let nameserver know the fruits of our network configuration endeavor.»:
arp -s 192.168.131.254 00:00:0F:00:00:00
arp -s 192.168.131.252 00:00:0F:00:00:02
Noioso, ma in qualche modo utile :-)
Inoltre, meglio creare anche un file /etc/resolv.conf (sempre con vi) e scrivervi le seguenti due linee:
domain next.com
nameserver 192.168.131.252
Riavviare, e la rete dovrebbe funzionare (anche se a noi la pausa spesso la fa lo stesso e poi ...non funziona (misteri): forse bisogna anche aggiungere altro ai files di configurazione).
A questo punto caricare il CD e installare quello che serve. Ma, come si diceva, il CD potrebbe sembrare "troppo" veloce all'Installer e - purtroppo - uscirsene con un brutto messaggio tipo "Troppi DSP..." su una finestra bianca su sfondo azzurro, che costringe a riavviare (raivvio anche più lento, perchè OS4 deve controllare all'avvio il file system). Se sia colpa di Virtual PC 6.1 (o 7.02) o di OpenStep non lo sappiamo; a noi è capitato un paio di volte, ad es. cercando di installare Emacs. Se si è fortunati si possono installare alcuni pacchetti "classici" dei sistemi Unix, e se si facesse funzionare la rete a dovere, con ftp ci si potrebbe collegare a qualche pagina con ottimo software per NeXT, come questa e scaricare gli ottimi OmniWeb, OmniPDF, Launchbar ecc...
Il tutorial dai noi seguito consiglia di provare ad assegnare un IP all'interfaccia firewire, aggiungendo "ipconfig fw0 10.0.0.0" alla fine di StartService in /System/Library/Startupitems/Network/Network (che nella nostra installazione di Tiger neppure c'è), poi andare in /etc/xinetd.d e impostare disable=no per ftp e telnet (attenzione ai problemi di sicurezza); poi nella macchina virtuale con OpenStep lanciare HostManager e creare un host chiamato "god" (o come si preferisce) con IP 10.0.0.0 e fare telnet o ftp verso questo (ovvero il nostro Mac). Ma se prima non viene riconosciuta la rete tutto questo non potrà funzionare. Se dovesse funzionare si potrebbero scambiare programmi, installare pacchetti e infine avere sempre l'ora esatta su OpenStep (che va sempre un'ora avanti, altrimenti), impostando in /etc/crontab la riga
5,20,35,50 * * * * root rdate god
per far sincronizzare l'orologio con quello del Mac.
Comunque, vedere girare OpenStep è affascinante, sembra di stare davanti ad una vera macchina NeXT (o almeno la sua GUI), anche perchè Virtual PC può presentare le macchine virtuali a tutto schermo, senza dock e barra del finder.
Nell'installazione si possono leggere le tante pagine della documentazione ufficiale di OpenStep 4.2, e se la rete funzionasse come si deve, si potrebbero anche passare sul Mac, con qualcosa come:
gnutar -cvf ~/doc.tar `find . -name Documentation -print`
seguito da ftp doc.tar verso il Mac.
FreeBSD
La release 6.0 di FreeBSD si installa quasi senza difficoltà su VPC 6.1 e 7.02. Diciamo quasi perché bisogna fare i conti ad es. con lo spazio su disco necessario per una installazione completa, soprattutto se si vuole provare FreeBSD con il sistema grafico X11 (Xorg, o se si preferisce XFree86) con Gnome o KDE in bell'evidenza.
Procurarsi i due CD di FreeBSD 6.0 da uno dei mirror presenti su FreeBSD Project (meglio sarebbe avere a disposizione anche il CD "boot only" e magari le immagini dei floppies: boot, fixit, kern1, kern2; non si sa mai, possono servire, e non costa nulla averli).
Per iniziare bisogna preparare, con Virtual Disk Assistant di VPC, un hardfile che funge da "hard disk virtuale" almeno di 2 GB, meglio sarebbe di 3; FreeBSD deve "formattare" il disco e creare le slice (labels) necessarie, pertanto non è possibile usare un file dinamico (come per l'emulazione di Windows), ma serve un hardfile di dimensione fissa.
A questo punto si prepara un nuovo documento Virtual PC, scegliendo l'hardfile appena creato. Sulla versione 6.1 è consigliabile non impostare in VPC l'opzione "standard CD" (nella 7.02 manca). Si inserisce il CD 1 di FreeBSD e si riavvia la macchina virtuale, che intanto avrà già "catturato" il CD (assicurarsene nel menu Unità di VPC), e si comincia l'installazione (noi abbiamo scelto dal menu semigrafico "Installazione standard"). A questo punto FreeBSD chiede di formattare il disco (il nostro hardfile virtuale) e di creare le labels. Scegliamo di formattare l'intero disco e di passare avanti (opzioni A, Q di fdisk), per le labels (le slices, i punti di mounting) sarebbe teroricamente meglio assegnare spazi separati a root (/), var (/var), usr (/usr), tmp (/tmp) e swapfile (ad es: 200 MB per root, almeno 256 per lo swapfile, 200 MB per var, 100 per tmp e il resto per usr), ma spesso lo spazio manca, e nelle prove da noi effettuate 2 GB sono a mala pena bastati per un installazione X-user (user + X11) con Gnome o KDE, rimanendo solo 100-200 MB liberi per i programmi e i dati. Pertanto abbiamo optato (volendo fare tutto in soli 2 GB) per questa soluzione: 256 MB per swapfile (in realtà l'Handbook di FreeBSD dice che la regola sarebbe 2*RAM, ma nel nostro caso veniva 3 GB, hi) e il resto per / (root).
Proseguendo con l'installazione FreeBSD ci chiede di installare un bootmanager, ma poiché il nostro disco (virtuale) ha solo questo SO, scegliamo "bootmanager standard". Installazione scelta, quindi X-user (programmi principali e sistema X11). Si va avanti con le altre opzioni di sysinstall, che poi servirà anche per modificare alcune cose, se necessario, dopo l'installazione (/usr/bin/systinstall). Installati i pacchetti necessari e risposto alle varie domande su configurazione di rete (dovrebbe apparire come de0, immettere un ip, ad es. 10.0.1.50 se si ha Airport DHCP su 10.0.1.1, non impostare DHCP e lasciare il resto invariato...), ecc., si passa all'installazione dei pacchetti opzionali. In un caso abbiamo scelto di installare Gnome e nell'altro KDE. In entrambi i casi i 2 GB vanno stretti, lo spazio su disco (2 GB) quasi pieno, ma alla fine si parte.
La console va benissimo, ed è ovviamente velocissima e molto simile al Terminale Darwin di OS X (ci mancherebbe che non lo fosse!), qualche piccolo problema con la grafica, che si può in genere risolvere con xorgcfg (l'utility che sostituisce la "vecchia" XFree86cfg su FreeBSD 6.0). In particolare, bisogna impostare il mouse (che dovrebbe esserlo già da sysinstall, come la tastiera, italiana per noi, eventualmente: auto/PS/2), ma soprattutto scheda video (S3, Vesa funziona), risoluzione e monitor (purtroppo LCD non appare, ma "monitor che supporta 1280x..." va bene). Se la configurazione grafica di xorgcfg non va, provare "xorgcfg -textmode", in modo testo; se si entra in una finestra grafica "sgangherata" per uscire premere control-alt-backspace e tornare indietro ed impostare altri valori.
Se tutto ve bene X parte con "startx" (o "X"), ma se si vuole come Server grafico Gnome o KDE allora bisogna farlo sapere a FreeBSD scrivendolo su .xinitrc, in questo modo:
- per Gnome: echo "/usr/X11R6/bin/gnome-session" > ˜/.xinitrc
- per KDE: echo "exec startkde" > ˜/.xinitrc
Gnome non ci è parso velocissimo (neppure nel PowerBook 1.6 con 1.5 GB RAM), KDE anche un po' più lento, ma forse anche lo swapfile piccolo e lo spazio su disco esaurito danno fastidio. Entrambi, però sono usabili, tranne per l'audio, che non siamo in alcun modo riusciti a far andare (e speriamo qualcuno ci dia suggerimenti in merito: i messaggi che danno Gnome e KDE è recitano, ripettivamente: «no volume sound...» e «device /dev/dsp can't opened, no such file or directory»).
L'installazione di altri ports da CD è semplice (avendo spazio sufficiente), quella in rete dipende dal funzionamento della rete (nelle nostre prove, a dire il vero, ha funzionato solo la rete locale).
Windows XP
Windows XP Professional, da noi provato nelle versioni 5.0, 6.1 e 7.02 di Virtual PC, ovviamente gira abbastanza bene nelle versioni 6.1 e 7.02 (meno nella 5.0), nel PowerBook 1.6 GHz con 1.5 GB RAM sembra girare anche più velocemente del Pentium II emulato con 512 MB di memoria virtuale assegnata, nel PowerBook 1 GHz risente un po' del fatto che gli si può assegnare meno memoria virtuale (da 256 a 312 MB), per mantenere un giusto equilibrio tra memoria reale del sistema e memoria di Virtual PC. In questo secondo caso si è visto che Windows 98 gira un po' meglio, mentre nel caso del PB 1.6 sembra addirittura migliore Windows XP Pro, forse anche a causa del diverso processore (reale) del PB.
Spesso si presenta l'utilità di avere a disposizione programmi per Windows anche per chi usa Mac OS, ad esempio nel caso di webmasters che vogliono controllare la resa delle pagine web anche con programmi come Microsoft Internet Explorer per windows, che aderiscono molto poco (o nulla) agli standards (vedasi problemini vari con CSS e Javascript), o dei radioamatori, per cui molti programmi di gestione dei radiotrasmettitori e radioricevitori esistono solo in versione Windows (anche se molto si sta facendo anche per chi usa Mac, si veda a d esempio la sintesi di Andrea Lawendel sul blog Radiopassioni). E gli esempi non finiscono qui. E comunque, è comodo avere la propria copia (con licenza) di Windows dentro il Mac.
Nelle nostre prove è stato abbastanza agevole installare da zero Windows XP, non solo dai dischi di VPC, ma anche da un CD (originale) di Windows XP Professional, installarvi sopra il Service Pack 2 e aggiornare il sistema con Software Update.
Altri Sistemi Operativi
Gli autori di questa pagina web, non contenti di quello che siamo riusciti a fare noi, hanno provato ad installare su un PowerBook sino a 64 diversi Sistemi Operativi, dai classici ai più curiosi: tutte le versioni di Windows (da 1.01 a XP Professional) e DOS (da 1.0 a 7.1, DRDos, FreeDOS...), FreeBSD, OpenBSD, NetBSD, Solaris 9, BeOS, Linux, Minix, Rhapsody, OS/2 (2.x, Warp 3 e 4), Amoeba, Darwin/x86, Xinu, Inferno, ecc...
Sempre su Virtual PC, con vari espedienti.
Se si possiede Virtual PC e uno di questi sistemi operativi si potrà sempre provare.
Noi abbiamo anche installato Microsoft MS Dos 7.1, partendo dall'immagine dei tre floppy (boot, install1, install2) che avevamo creato tempo fa dai dischi originali. Funziona discretamente bene.
Alternative a Virtual PC
Un prodotto alternativo a Virtual PC (sempre commerciale, e sempre per Mac con processore PPC) è Guest PC, di cui di recente è stata rilasciata la versione 1.7. Al momento Guest PC viene rilasciato con una versione integrata di DOS, su cui si possono installare le versioni di Windows da 95 a XP. Il sito web parla anche di Linux, ma non di altri sistemi operativi, che non è escluso si possano installare anche su questo emulatore.
Il futuro di Virtual PC
Al termine dell'annuale Macworld Expo, a San Francisco il 10 Gennaio 2006, Roz Ho, general manager di Microsoft ha confermato che Virtual PC 7 non girerà su Rosetta e quindi non funzionerà sui Mac con processore Intel. Microsoft, dice Roz Ho, sta lavorando con Apple per una nuova applicazione che si occupi dell'emulazione di Windows su Mac OS X.
Quale sarà la sorte di Virtual PC per i processori PowerPC - che non verranno più prodotti, e quando potrebbe uscire un ipotetico Virtual PC 8.0, lo lasciamo immaginare al Lettore.