Virtuele machine: verschil tussen versies
Verwijderde inhoud Toegevoegde inhoud
k Cat(s) |
Geen bewerkingssamenvatting |
||
Regel 9:
Een virtuele machine voor een programmeertaal biedt een ''abstractielaag'' voor de werkelijke computer: een verzameling basisfuncties waar programma's in de programmeertaal gebruik van moeten maken om de functies van de computer aan te spreken. Dit is precies wat een [[besturingssysteem]] doet, en een dergelijke machine fungeert dus als besturingssysteem voor in die taal geschreven programma's; de reden dat van een virtuele machine wordt gesproken is dat de virtuele machine zelf vaak een programma is dat wordt uitgevoerd op een bestaand besturingssysteem.
De virtuele machine is de verbindende laag tussen de uitgevoerde code en de computerhardware (zoals de [[Processor (
Wanneer voor een bepaald platform ([[hardware]] en eventueel [[besturingssysteem]]) een virtuele machine gemaakt is, kan elk programma dat voor deze virtuele machine geschreven is, worden uitgevoerd. De implementatie van een virtuele machine kan in elke andere programmeertaal gebeuren. Op deze manier wordt platform-onafhankelijkheid bereikt: programma's kunnen worden uitgevoerd op elk systeem waarvoor de virtuele machine is geïmplementeerd. Overdraagbaarheid wordt een kwestie van het implementeren van een virtuele machine, in plaats van een probleem dat voor elk programma afzonderlijk moet worden opgelost.
Regel 18:
== Emulatie ==
Een ''virtuele machine'' die de hardware van de computer [[emulator|emuleert]], is niet gericht op een programmeertaal (zoals Java of Pascal), maar emuleert een fysieke computer (dat wil zeggen de [[Processor (
{{Zie hoofdartikel|virtualisatie}}
|