Virtuele machine: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
ButkoBot (overleg | bijdragen)
Pompidombot (overleg | bijdragen)
Regel 7:
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 [[processorProcessor (ICT)|microprocessor]]) waarop het uiteindelijke programma wordt uitgevoerd, eventueel via een ander besturingssysteem. De op een virtuele machine uitgevoerde code spreekt niet direct de 'echte' hardware aan, maar gebruikt alleen de functies die worden aangeboden door de virtuele machine.
 
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 16:
 
== 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 (dwz. de [[Processor (ICT)|processor]] en andere hardware), zodanig dat een bestaand [[besturingssysteem]] op deze emulatie kan draaien, alsof het een fysieke computer betreft. Met een dergelijke virtuele machine is het dus bijvoorbeeld mogelijk om [[Microsoft Windows|Windows]] te emuleren in een [[GNU/Linux]]-omgeving, of omgekeerd.
 
Het gebruik van dergelijke virtuele machines wordt [[virtualisatie]] genoemd.
Regel 24:
<!-- dat kunnen we hier wel verder gaan uitleggen, maar het heeft zijn eigen pagina -->
 
[[categorieCategorie:Java (programmeertaal)]]
[[Categorie:Emulatiesoftware]]