possibilità
Prima di tutto, lasciatemi dichiarare che è possibile avere più di una mezza dozzina di sistemi operativi su un PC.
Non ho fatto il compito esatto che stai descrivendo. L'ho fatto vicino. (In passato, ho stipato numerosi sistemi operativi su un disco rigido.) A quel tempo, ho appreso molti dei requisiti. Quindi ho una buona idea di cosa sto parlando.
Una guida completa sarebbe troppo estesa per una singola risposta SuperUser. In questa risposta, fornisco alcuni suggerimenti. Sentiti libero di porre più domande (inclusa la creazione di nuove domande SuperUser) come utili. (Inoltre, commenta @TOOGAM per attirare la mia attenzione, se vuoi.)
Impossibilità
L'insegnante ha affermato che 1 GB su un computer sarebbe sufficiente per realizzare questo progetto.
Vedo che Windows 10 fa parte dell'elenco che hai aggiunto. I requisiti di sistema ufficiali specificano che il sistema operativo richiede 16 GB di spazio, tutto su se stesso. Quindi, non lo farai in 1 GB. My C: \ Windows è attualmente 17,3 GB (e utilizza Windows 10, versione 1607).
Naturalmente, se si rende l'hardware troppo grande / compatibile / nuovo, è possibile superare i limiti imposti da alcuni sistemi operativi meno recenti.
Requisiti della CPU
Windows Server 2012 richiede CPU a 64 bit.
Molti altri sistemi operativi supportano processori x86 (32 bit). ad esempio, hai menzionato Solaris. Forse l'ultima versione di Solaris no, ma probabilmente le versioni precedenti lo fanno. È inoltre probabile che le versioni precedenti siano più piccole (occupando meno spazio su disco) e potrebbe essere più desiderabile ottenere punti per questo particolare progetto.
Ogni sistema Win9x (Win95, 98 e ME) necessita di una CPU a 32 bit, in grado di eseguire codice a 16 bit. Come ho notato in un commento altrove in questa pagina, ciò dovrebbe essere possibile in base a ciò che ho imparato. Tuttavia, se i nuovi chip x64 hanno ottimizzato parte del supporto legacy su cui sono stato addestrato (o se mai lo faranno in futuro), questo potrebbe essere un problema.
Mac OS X una volta non era progettato per x86. Tuttavia, da allora ha ottenuto un certo supporto per l'hardware x86. Ho il sospetto subdolo che Mac OS X potrebbe avere alcuni altri requisiti che potrebbero essere un po 'insoliti, quindi guarderei da vicino quello (cioè, lo farei delle ricerche) prima di pianificare / contare su quel lavoro. Gli altri sistemi operativi probabilmente avevano tutte versioni che funzionano con x86 o x64.
Un approccio: usare le immagini del sistema operativo
Peggior scenario, questo dovrebbe essere fattibile. Anche se ciò significa:
-
Avvio diretto in un sistema operativo, configurazione personalizzata
-
Quel sistema operativo utilizza dd = per installare il sistema operativo di tua scelta, quindi modifica il record di avvio (ad esempio, l'MBR, sebbene una configurazione UEFI / GPT potrebbe essere un po 'più complicata) e si riavvia
-
Ciò avvierebbe quindi il sistema operativo desiderato; spetterebbe comunque a te che il sistema operativo modifichi il processo di avvio per tornare al tuo sistema operativo "menu". (Come ex istruttore, se avessi dato questo incarico, sarei rimasto colpito dal fatto di avere tutti i sistemi operativi su un disco e probabilmente avrei assegnato punti interi se:
-
lo studente non ha ignorato alcune delle istruzioni ... ad esempio, se ho fornito un modo più semplice di fare le cose
-
la situazione ha funzionato bene. Sarei più felice di vedere che se veniva scelto un sistema operativo diverso, veniva eseguito il backup del sistema operativo desiderato, nel caso in cui l'utente avesse apportato modifiche (o il sistema operativo avesse applicato eventuali aggiornamenti), quindi gli aggiornamenti non andavano persi.
Ora, ci possono essere modi più semplici, ma come mostra quanto sopra, in teoria, tutto dovrebbe funzionare.
Side-by-side
Se vuoi avere tutti i sistemi installati sul disco rigido in una sola volta, ciò potrebbe effettivamente essere più impegnativo (e potenzialmente impossibile per alcune delle combinazioni).
Uno dei requisiti è verificare la compatibilità hardware. Quali CPU sono supportate? Ci sono altri requisiti hardware da notare? (Trovare i requisiti minimi è in genere piuttosto semplice. Trovare i requisiti massimi, come dire che un sistema non funziona così bene con alcuni hardware più recenti, potrebbe essere un po 'più difficile da trovare.)
Un passo che vorrei assicurarmi di fare con attenzione è capire quali sono i requisiti di avvio di ogni sistema operativo. Alcuni sistemi operativi vanno bene con l'avvio da un'unità logica, altri no. Sfortunatamente, questo potrebbe non essere documentato in modo così evidente. Nel mio vecchio progetto, l'ho scoperto usando un po 'di sperimentazione. Sarebbe bello usare un'altra macchina (possibilmente macchine virtuali) per sperimentare, in modo da non distruggere i progressi sul tuo progetto principale mentre sperimenti.
Inoltre, scopri quali filesystem può utilizzare ogni sistema operativo. Ad esempio, Windows 95 è sostanzialmente limitato a FAT16 e non supporta FAT32, sebbene la seconda versione di Windows 95 (più comunemente chiamata "Windows 95 Operating System Release 2" o "Win95 OSR2", e forse anche chiamata Win95B) ha supportato FAT32. I sistemi operativi Windows più recenti vorranno supportare NTFS (e potrebbero esserci versioni diverse di NTFS). Molti altri sistemi operativi possono supportare ext2 (in particolare Linux, ma anche altre piattaforme simili a Unix), ma potrebbero preferire almeno l'avvio da un volume che utilizza il proprio filesystem nativo. Scopri cosa è possibile lì.
Tieni presente che esistono molti caricatori di avvio che possono caricare altri sistemi operativi. Ad esempio, Windows XP / Server 2003 utilizza un caricatore di avvio che può specificare un file che contiene i byte di un settore di avvio. Inoltre, è possibile fare in modo che un boot loader esegua un altro boot loader. Questo è ciò che il file di configurazione di grub intende con la parola "catena". ("caricamento a catena") Potrebbe essere necessario specificare i valori di timeout, in modo che alcuni caricatori di avvio successivi siano semplicemente invisibili (anche quando vengono utilizzati caricatori di avvio multipli).
Nascondere le partizioni
Può anche essere utile modificare il tipo di ID / valore della partizione. per esempio:
-
Capire l'attuale Tipo di partizione / valore ID di una partizione. ad esempio, FAT32 potrebbe usare 0x0B (o qualcos'altro, a seconda di cose come la dimensione del disco)
-
Registrare il vecchio valore del tipo di partizione / valore ID
-
Cambiarlo. ad es. a 0xED.
-
Questo può essere usato per nascondere efficacemente Win95 / 98, mentre si installa Win ME
-
Procedi e installa il sistema operativo desiderato (ad es. Win ME)
-
Dopo l'installazione, ripristinare il valore Tipo / ID della partizione (ad esempio, tornare da 0xED a 0x08)
-
Verifica se tutti i tuoi sistemi operativi Microsoft si avviano ancora bene. (Le lettere di unità potrebbero cambiare da questo processo. Potrebbe essere problematico.)
Suggerisco di provare:
-
Ranish Partition Manager
-
Eccellente Partition Manager per DOS
-
o XFDisk (ad esempio, probabilmente facilmente accessibile come parte di un disco di avvio di FreeDOS)
-
Altrimenti, tendo ad apprezzare il fdisk di OpenBSD, che può essere utilizzato avviando un CD di installazione di OpenBSD
I primi due di questi possono installare un caricatore di avvio, il che potrebbe essere carino, tranne per il fatto che penso che potresti desiderare un caricatore di avvio più flessibile per il tuo compito. Non li sto raccomandando ora a causa del loro caricatore di avvio, ma perché mi aspetto che supportino facilmente la modifica dell'identificatore del tipo di partizione. Inoltre, il primo (RPM) e l'ultimo (OpenBSD) mostrano i confini con grande chiarezza. Queste raccomandazioni si basano su alcune vecchie esperienze; se ci sono alcune incompatibilità con le dimensioni più grandi del disco rigido, non sono del tutto consapevole (o ricordo) di loro.
Condivisione di partizioni
Potrebbe essere possibile che alcuni sistemi operativi coesistano sulla stessa partizione. Questo può funzionare molto bene in alcuni casi, e non così bene in altri.
Ecco un esempio: Win98 funzionerà con FAT16. Così sarà Win95. (Sebbene, se si dispone di Win95 OSR2, potrei essere propenso a utilizzare solo FAT32.) Il processo di avvio di Windows 98 potrebbe caricare i file di Windows 95. (Questo potrebbe essere fatto automaticamente se si installa prima Windows 95, quindi si aggiorna a Windows 98? Anche se, forse, è necessario un disco di installazione dell'aggiornamento a Windows 98 perché ciò avvenga piuttosto automaticamente?) Fondamentalmente, potrebbe essere il seguente:
-
Installa Windows 95 su C: \ Win95
-
Crea un disco di avvio, in modo da poter apportare modifiche senza avviare il disco rigido. (ad esempio, utilizzare un "floppy disk". In alternativa, è possibile eseguire l'avvio da CD e accedere a un prompt dei comandi. Tenere premuti F8 o F5 o Ctrl o Shift e premere F8 o F5 potrebbe essere utile.)
-
Rinominare command.com in Win95Cmd.com
-
Rinomina config.sys in config.w40
-
Correre:
echo SHELL=C:\Win95\Win95Cmd.com >> C:\config.w40
-
Meglio ancora, usa un interprete della riga di comando più flessibile, come 4DOS, che funzionerà con più sistemi operativi. Quindi, se si utilizza accidentalmente CONFIG.SYS errato, il sistema verrà comunque avviato. Usa SHELL = C: \ 4DOS \ 4DOS.Com (dopo aver posizionato lì 4DOS).
-
Rinomina autoexec.bat in autoexec.w40
-
Rinomina io.sys in io.w40
-
Rinomina msdos.sys in msdos.w40
-
Evita di usare uno dei nomi di file sopra che terminano con .old (ad es. Autoexec.old)
-
Inoltre, non utilizzare il nome file C: \ winboot.ini
-
Eseguire il backup di tutti quei file. Se qualcosa viene sovrascritto, sarà molto più facile ripristinarlo se si dispone di un backup conveniente. (Basta fare una copia in C: \ SYSBACK \ copy1 \ o qualcosa del genere.)
-
Installa Windows 98 in un'altra directory (come C: \ Win98)
-
Inserisci BootMulti = 1 nella sezione [opzioni] di C: \ MSDOS.SYS di Win98 (o C: \ WinBoot.ini, se lo hai rinominato in questo)
-
Inoltre, inserisci BootMenu = 1 lì.
-
Inoltre, forse BootMenuDelay = 15
-
L'uso di BootMenu = 1 sarà effettivamente negativo per l'assegnazione, in quanto crea un menu visibile, ma sarà utile per la verifica / il test.
-
Successivamente, è possibile utilizzare BootMenuDefault = e, una volta che funziona come desiderato, riportare BootMenu su 0.
-
Eseguire nuovamente il backup di questi file (ad es. Su C: \ SYSBACK \ copy2 \ o qualcosa del genere)
WinME potrebbe non essere così carino. ( Ricerca Google: l'esecuzione automatica della GUI di Windows ME% windir% \ system32 \ vmm32.vxd 4DOS potrebbe essere utile?)
Valore educativo
In un giorno in cui esiste Windows 10, metto in dubbio il valore educativo di giocare con Windows ME. Certo, giocare con diversi sistemi operativi potrebbe essere più educativo rispetto ai videogiochi più recenti, ma perché non includere alcuni contendenti più meritevoli, come più sistemi operativi BSD, che potrebbero essere più utili mentre la tecnologia continua. La parte nostalgica di me vorrebbe trascorrere del tempo facendo questo e insegnando agli altri come farlo, perché lo troverei divertente. Tuttavia, quando penso a come questo sarebbe utile per la carriera delle persone, devo chiedermi. Come istruttore IT universitario, non sono stato in grado di fornire una buona giustificazione su come sarebbe utile per gli studenti. Anche se non vado alla Professional School of Systems Engineering in un posto che parla principalmente spagnolo, immagino che Microsoft '
Se colpisci gli ostacoli, potresti prendere in considerazione la possibilità di chiedere all'istruttore una guida o forse una trattativa. Forse l'implementazione corretta di un'altra funzione può valere alcuni punti.