MultiBoot

Meerdere besturingssystemen op 1 harde schijf


Een PC wordt meestal geleverd meteen kant-en klaar besturingssysteem : je zet de computer aan, je wacht een tijdje, en ondertussen wordt Microsoft Windows gestart. Er bestaan echter nog andere besturingssystemen die op een PC gebruikt kunnen worden, en het is mogelijk op 1 PC meer dan 1 besturingssysteem te installeren. In dat geval zou je de PC aanzetten, kiezen wel besturingssysteem je gaat gebruiken (selecteren uit een menu of door een opdracht te typen), waarna het gekozen besturingssysteem gestart wordt.

bootmenu(10024 bytes)
VCOM System Commander : Boot menu.

OVERZICHT

  1. Rol van het Operating System
  2. Verschillende Operating Sustems
  3. Waarom verschillende Operating Systems installeren ?
  4. DAS BOOT
  5. Partities : Verdeel en Heers
  6. Verschillende OS op 1 HD
  7. Bijlagen
  8. LINKS

1. Rol van het besturingssysteem

Zonder Operating System biedt de computer enkel elementaire invoer, verwerking en uitvoer.Vb. bij het opstarten worden toetsenbord, monitor, enz. herkend, en deze zijn bruikbaar; zelfs als er nog geen OS geladen is.

Het besturingssysteem zorgt dus ook voor communicatie tussen de hardware en de gebruiker, en voor communicatie tussen de toepassingsprogrammas en de hardware. Bijgevolg moet het besturingssysteem afgestemd zijn op de hardware, en meer bepaald de processor., omdat de processor uiteindelijk instructies moet krijgen die hij kan uitvoeren.

besturingssysteem : een doorgeefluik
Besturingssysteem als doorgeefluik (interface) tussen hardware en gebruikers/programma's

2. Verschillende Besturingssystemen

Wie tegenwoordig een PC koopt krijgt daar MS Windows kant en klaar geÔnstalleerd bij. Maar MS Windows is niet het enige besturingssysteem dat op een PC kan draaien. Toch kan niet om het even welk O.S. op een PC geÔnstalleerd worden. Dit hangt af van het soort processor(s) dat gebruikt wordt : processor en besturingssysteem moeten samenwerken; een besturingssysteem wordt ontwikkeld voor een bepaald soort processor.

Zie ook : http://directory.google.com/Top/Computers/Software/Operating_Systems/

3. Waarom verschillende besturingssystemen installeren ?

Er bestaan dus verschillende besturingssystemen, die elk op hun eigen manier hun taken proberen, vervullen. Elk OS heeft zo zijn eigenschappen, sterke en zwakke punten.

Voordelen van meerdere OS op 1 PC :

4. DAS BOOT

Wat gebeurt er als de computer opstart ? Hoe wordt het besturingssysteem geladen

4.1. Met 1 besturingssysteem op 1 harde schijf

Bij het starten van een computer test de computer zichzelf (POST : Power-On Self Test). Vervolgens worden de instructies van het BIOS uitgevoerd. Het BIOS (Basic Input/Output System) is software (gewoonlijk opgeslagen in een chip op het moederbord) die bepaald wat de computer kan doen zonder gebruik te maken van een besturingssysteem of programma's. Het BIOS zorgt ervoor dat monitor, toetsenbord, seriŽle poorten, schijfstations, ... beschikbaar zijn. (Meestal is het BIOS toegankelijk door tijdens het opstarten een bepaalde toets of toetsencombinatie in te drukken, vb "Press Del to enter setup"). Het BIOS bevat o.a. de instructie die aangeeft vanaf welk schijfstation geboot moet worden.
Vb.
Boot Sequence : A, C
Boot Sequence : CDROM, C, A

Vervolgens wordt de 1ste sector van de (1ste) harde schijf (C) benaderd. Deze sector bevat het Master Boot Record (MBR) + (een gedeelte van) de Partition Table. boot sequence 1

De instructies die in het MBR staan worden uitgevoerd : ga naar de actieve primaire partitie (zoals aangegeven in de Partition Table) en lees daar de 1ste sector (de Boot Sector). In de Boot sector zijn - tijdens de installatie van het besturingssysteem - , de nodige instructies geplaatst om het besturingssysteem op te starten. Deze instructies worden nu uitgevoerd : het besturingssysteem wordt geladen.

Het is mogelijk het MBR en de boot sector te copieren naar een bestand, die je kan bijhouden als backup of gebruiken om andere media (diskettes, USB sticks, CD's, CD iso images, ...) bootable te maken : zie bootable media howto.

4.2. Methoden om boot proces te wijzigen

Uit het voorgaande blijk dat het boot proces in onderscheiden stappen verloopt. Door in te grijpen in die stappen is het mogelijk het booten te manipuleren. Dit maakt het mogelijk om, als er verschillende besturingssystemen geÔnstalleerd zijn, te kiezen wel operating system er gestart wordt.

Mogelijkheden:

  1. Master Boot Record wijzigen zodat niet automatisch ťťn bepaald OS opgestart wordt, maar een keuze gegeven wordt.
  2. een Boot Sector wijzigen zodat niet automatisch 1 bepaald OS opgestart wordt, maar een keuze gegeven wordt.

Het wijzigen van MBR of boot sector kan bijvoorbeeld zijn : er een " Boot Loader " of " Boot Manager " plaatsen.
Voorbeelden :

Bootmanagers kunnen in het MBR staan, of in een boot sector, of in een aparte partitie. (hangt af van het ontwerp)

Alternatieven :

  1. De Partition Table wijzigen : de Partition table geeft aan welke partitie "Active" of "Startable" is. Het BIOS zal de boot sector van de actieve partitie zoeken zodat vandaar geboot wordt. Door een andere partitie "active" te maken (vb met FDISK) zal het operating system op die partitie gestart worden. Dit kan altijd als "noodoplossing" gebruikt worden.
  2. Booten van floppy disks : Het BIOS gaat naar de floppy drive en voert de instructies uit van de boot sector op de floppy uit. Met bootable floppies van verschillende besturingssystemen kan dus telkens een ander besturingssysteem gestart worden.
  3. 2x booten : ("Dual Boot") Bijv: Computer start, Windows word automatisch gestart. Vervolgens wordt een programma gestart dat de computer in een ander besturingssysteem boot
    bijv. DOS/Windows => loadlin.exe => Linux

Op deze alternatieven wordt verder niet ingegaan.

5. Partities:Verdeel en Heers

Een harde schijf kan ingedeeld worden in "stukken", die zich dan elk als een "aparte" harde schijf laten behandelen. Deze stukken worden partities genoemd.

Er zijn verschillende soorten partities : 1 harde schijf kan ingedeeld worden in

  1. 1, 2, 3 of 4 primaire partities
  2. 1, 2 of 3 primaire partities + 1 extended partition, die kan ingedeeld worden in meerdere logical volumes

Primaire partitie : partitie die "bootable" gemaakt kan worden. Een Primaire partitie kan niet verder ingedeeld worden.
Extended Partitie : is eigenlijk uitgevonden om de beperking van maximum 4 partities te omzeilen. De Extended Partition kan verder ingedeeld worden in "Logical Volumes" die elk als een harde schijf te benaderen zijn. Het BIOS kan deze echter niet zien, zodat er in principe niet van een Extended Partitie / Logical Volume geboot kan worden.

Het is strikt genomen niet nodig de harde schijf te partitioneren om verschillende Operating Systems te kunnen gebruiken. Zie een mogelijke oplossing in Bijlagen : Meerdere besturingssystemen op 1 partitie
Nadelen :

Om dit te vermijden is het gebruikelijk om, bij multi-boot systemen, de harde schijf te partitioneren. Bovendien is het zelfs als je maar 1 besturingssysteem installeert, zinvol om de harde schijf te partitioneren: FAT gaat namelijk niet efficiŽnt om met schijfruimte van grote partities.

5.1. Partitioneren

Een lege harde schijf kan gepartinioneerd worden met FDISK (DOS, Win9x), fdisk (Linux), enz. Eventueel booten van een floppy waarop deze programma’s aanwezig zijn. Bij een reeds gebruikte harde schijf zullen alle data verloren gaan. FDISK e.d. kunnen ook gebruikt worden om een partitie te verwijderen of te wijzigen, maar ook dan zullen alle data van die partitie verloren gaan.

FDISK kan gebruikt worden om DOS partities (dwz : partities met FAT file system) creŽren, actief te maken, of deleten.

screenshot fdisk (13648 bytes)

Primaire en extended partities.
De primaire partitie is ‘actief’ en heeft dus drive letter C : gekregen. Een Extended partitie krijgt zelf geen drive letter.

fdisk2..jpg (18805 bytes)

De ‘Logical Volumes’ in de extended partitie krijgen wel een drive letter.

fdisk3.jpg (11809 bytes)

FDISK laat standaard alleen DOS-partities zien. Het commando FDISK /STATUS laat de volledige indeling van de harde schijf zien.

5.2.Welke partities ?

Dit hangt af van

A- Het Bios

Zolang er geen OS geladen is, wordt de adressering van de harde schijf (noodzakelijk voor het terugvinden van MBR en boot sectoren), gedaan door het BIOS. Aangezien de PC historisch gegroeid is, spelen een aantal beperkingen van de oorspronkelijke PC architectuur nu nog een rol.
Een Boot Manager kan eventueel de beperkingen van het BIOS omzeilen. (hangt af van product tot product).

B- De besturingssystemen die je wil installeren

Niet ieder besturingssysteem kan op om het even welke partitie geÔnstalleerd worden .
Naarmate de OS meer of minder compatible zijn, kunnen ze data en software delen en is het dus mogelijk daar een partitie voor te voorzien zodat beide besturingssystemen ze kunnen zien

5.3. Beperkingen tgv het BIOS

  1. Maximum 4 primaire partities of 3 primaire en 1 extended. Het is dus aangewezen 3 primaire partities + 1 extended partitie te maken, omdat die extended partitie dan verder ingedeeld kan worden .
  2. Er kan ter zelfder tijd maar 1 van de primaire partities ‘actief’’ zijn. Dat is de partitie van waar geboot zal worden.
  3. Naargelang de ouderdom van het BIOS en de methodes die toegepast worden om harde schijven te naderen, kan de maximale grootte van de harde schijf die door het BIOS gezien kunnen worden beperkt zijn. Dit is een gevolg van het BIOS ontwerp, met name het aantal bytes dat voorzien is om HD-informatie op te slaan, en van het hard disk ontwerp (IDE / ATA).

zie http://www.win.tue.nl/~aeb/partitions/ voor een beschrijving van historische beperkingen (BIOS en IDE standaard) m.b.t. het adresseren van harde schijven

Beperkingen van BIOS kunnen omzeild worden door OS, maar dan moet je wel eerst het OS kunnen opstarten. Dat betekent dat de boot sectoren / boot partities binnen deze grenzen moeten vallen. ‘welke : hangt af van je BIOS).

Beperkingen van het BIOS kunnen ook enigszins gecorrigeerd worden door de installatie van ‘disk manager’ software (Ontrack, EZ Drive). Als deze disk manager gebruikt maakt van het MBR kan dat de mogelijkheden voor multi-booten enigszins beperken. Bijv. LILO en disk manager kunnen niet samen in het MBR geÔnstalleerd worden. Met Bootmagic lukt het nog wel.

5.4. Beperkingen t.g.v. eigenschappen van OS

Voorbeelden:

1- DOS, Windows 9x ed. moeten booten van de (active) primaire partitie. Windows 9x schijnt bovendien niet te willen installeren als er twee of meer primaire partities zijn. Het is wel mogelijk primaire partities te verbergen, zodat Windows 9x ze niet ziet.. Dit kan o.a. door het File System te wijzigen – formatteren : zie verder – of met behulp van een boot manager, die de Partition table zo aanpast dat de gewenste partities zichtbaar worden, en de andere niet.

2- Windows NT kan in een logische drive geÔnstalleerd worden, maar alleen als NT zijn bootbestanden in een primaire (FAT16) partitie (C:) kwijt kan. Voor Windows 2000 (met FAT32 ondersteuning) kan dat ook een Windows FAT32 partitie zijn.

3- Linux negeert aanduidingen zoals ‘Active’, en kan dus meer dan 1 primaire partitie tegelijk zien.

4- Bij DOS/Windows krijgen primaire partities op de eerste harde schijf krijgen de drive letter C:. Slechts ťťn hiervan kan als C: schijf op een gegeven moment zichtbaar zijn (de actieve partitie).
Onder besturingssystemen die niet aan met drive letters werken (zoals Linux en UNIX) kan je deze verborgen partities wel zichtbaar maken (mounten).

5- Het toevoegen, verwijderen of wijzigen van partities op een harde schijf waarop reeds een besturingssysteem zoals Windows aanwezig is, zal gevolgen hebben voor de drive letters die door dat systeem toegekend worden. Dit kan een configuratie behoorlijk in de war schoppen (bestandslocaties in Windows Registry, .ini files enz kloppen dan niet meer).

5.5.Formatteren ?

Partitioneren = het indelen van de harde schijf in kleinere stukken.

Om er data op te kunnen opslaan moeten die partities voorzien zijn van een File System (bestandssysteem) dat door het besturingssysteem gebruikt kan worden voor lezen en schrijven, (bestanden en directories creŽren, …) .
Ieder O.S heeft zo zijn eigen (‘native’) file system(s). Sommige besturingssystemen kunnen ook bestandssystemen van andere besturingssystemen lezen en/of beschrijven, al dan niet met behulp van een driver. De kenmerken van een file stystem komen tot uiting in dingen als :

Een bestandssysteem aanbrengen op een partitie = formatteren.  Formatteren verwijdert alle data van de partitie !

6. Verschillende besturingssystemen op 1 harde schijf

6.1. Voorbereiding
  1. Back-up maken : partities veranderen kan dataverlies tot gevolg hebben
  2. ‘emergency tools’ voor ieder besturingssysteem : Opstartdiskettes voor ieder besturingssysteem,format, CD-rom drivers, …
  3. Planning : partities, partitieafmetingen; rekening houden met BIOS beperkingen, benodigde schijfruimte voor een installatie (+ 200 MB temporary files), file system
  4. Planning : file system : welk besturingssysteem moet welke partities kunnen lezen/schrijven ? Rekening houden met ‘verschuivende drive letters’ als je partities tussenvoegt, of als partities verborgen worden.
6.2. Windows 9x Engels en Windows 9x Nederlands.

Windows 9x moet booten van een primaire partitie. Bovendien schijnt Windows niet installeerbaar te zijn als er meer dan 1 primaire partitie aanwezig is. Je hebt dus een product nodig dat partities kan verbergen (Partition Magic / Boot magic of zo).

Stel :

Slechts 1 van de primaire partities kan active zijn. De active partitie krijgt van Windows driveletter C: (De 2e primaire partitie wordt ‘verborgen’ door de boot manager).
De logical volumes krijgen door Windows drive letter D, E:, F:, G; toegekend

Probleem : Om te kunnen kiezen welk OS geboot wordt, moet gekozen worden welke partitie ‘active’ wordt. Dat kan manueel, met FDISK, of automatisch, met een boot manager, bijv. Boot Magic. Boot Magic installeert zich in het MBR. Er worden ook enkele programmabestanden geÔnstalleerd in een FAT partitie (bijv. een Windows 9x partitie)

Het booten verloopt dan als volgt :

  1. De Boot Magic code in het MBR wordt geladen
  2. De Boot Magic Code laadt de Boot Magic programmabestanden in het geheugen (gebruikersinterface, boot menu, …). Deze staan op een FAT (Dos/Windows) partitie.
  3. De gebruiker kiest besturingssysteem
  4. Boot Magic verbergt de partities die kunnen interfereren met het gekozen besturingssysteem
  5. Boot Magic maakt de partitie van het gekozen besturingssysteem actief (indien nodig)
  6. Boot Magic laadt de boot sector van de partitie van het gekozen besturingssysteem
  7. Het besturingssysteem start op

boot sequence diagram (20136 bytes)

Installatie how to :

6.3 Windows 9x + Windows NT

mboot2.jpg (16235 bytes)

Installatievoorbeeld :

Door software in een aparte partitie te installeren kan die zowel onder win nt als onder win9x gebruikt worden terwijl er toch maar 1 kopie geÔnstalleerd is. De installatie moet wel 2x uitgevoerd worden (Registry van beide OS moet aangepast worden, beide OS moeten de nodige bestanden in \system krijgen, …)

De software en data partities moeten wel voor beide OS bruikbaar zijn : FAT file system gebruiken, geen NTFS.

De partitie waarop de NT bestanden terechtkomen kan eventueel wel NTFS zijn, maar in dat geval zal ze onder Windows 9x niet zichtbaar zijn, zodat alle volgende partities 1 drive letter naar voor opschuiven …

Opletten : Als je Win9x als 2de systeem installeert, overschrijft het de boot sectoren zodat de bootbestanden/eventuele bootmanagers overschreven worden.
Herstellen door te booten van diskettes (of CD rom) en bootsector herstellen

Vb Windows NT : reparatie : boot sector inspecteren

6.4. Windows 9x + Windows NT + Linux

Methode 1 : Lilo in Logical Volume

Dit is eigenlijk een uitbereiding van vorige setup.

mboot3.jpg (18627 bytes)

Installatievoorbeeld

Op een bestaand Windows 9x / Windows NT systeem:

Bovenstaande figuur gaat uit van de veronderstelling dat NT Loader gebruikt kan worden om Linux te booten. Sommigen zeggen dat dit niet mogelijk is, anderen zeggen van wel. Zie verder.

Methode 2 : Lilo als Boot Manager

LILO kan ieder OS booten …
En kan in MBR geplaatst worden.

mboot4.jpg (19355 bytes)

Analoog aan voorgaande installatie, maar met LILO in MBR, zodat het gebruikt kan worden als boot manager voor alle aanwezige OS.

7.11. nog meer OS op 1 HD

6.4.(2de methode) kan naar believen uitgebreid worden met meerdere OS, en is dus te gebruiken als prototype voor elk multi-boot systeem. De besturingssystemen die moeten booten van de primaire partitie zullen dan allemaal hun boot-bestanden op de primaire partitie plaatsen, terwijl de rest van het systeem op de gekozen partitie terecht komt. Eventueel kan je meerdere primaire partities gebruiken om te voorkomen dat boot bestanden van het ene systeem overschreven worden door boot bestanden van het andere.
Dit veronderstelt wel dat je bootmanager 1 of meer primaire partities kan verbergen, en/of telkens de juiste primaire partitie actief kan maken. Deze benadering voorkomt eveneens dat – als de bootpartities klein genoeg gehouden worden- dat door teveel (grote) partities na elkaar te plaatsen, de grenzen van het BIOS overschreden worden.

mboot5.jpg (16616 bytes)

Bijv:

Eventueel kan Linux van een logical partitie booten, bijv. met Bootmagic als bootmanager. LILO (linux loader) moet dan wel in de Linux root partitie geplaatst worden (wordt gevraagd tijdens installatie).

partition example  (13061 bytes) partition example : legend (10477 bytes)

Er zijn ook Bootmanagers die in een eigen primaire partitie geÔnstalleerd worden, zodat er nog 2 primaire + een aantal logische partities overblijven voor operating systems

Scenario’s voor / Help bij multiboot installaties : Partition Magic : http://www.powerquest.com/support/primus/id313.html

Bijlagen

Meerdere OS op 1 partitie

Emulaties : Een andere manier om verschillende besturingssysteme, beschikbaar te maken op ťťn PC is dmv. "emulatie". Dat wil zeggen dat de omgeving, het gedrag, het uitzicht van een besturingssysteem geÔmiteerd wordt door een programma dat draait op een PC (waarop uiteraard al een besturingssysteem draait). De voordelen zijn vergelijkbaar met meerdere echte O.S. op 1 PC : andere OS leren kennen, enz.

emul.gif (82817 bytes)

screenshot : (emulatie van) Mac OS 8 op een Windows NT machine
http://www.emulators.com/

8. LINKS

This information is in the public domain. Permission to use, copy, modify, and distribute this information for any purpose and without fee is hereby granted, without any conditions or restrictions.
This information is provided without any express or implied warranty.
Koen Noens
24 mei 2002