1.2.1.8 Virtual Machines Flashcards
1
Q
What is a Virtual Machine?
A
- Any instance where software is used to take on the function of a machine, including intermediate code or running an operating system within another.
- A Virtual Machine is a theoretical computer in that it is a software implementation of a computer system. It provides an environment with a translator for intermediate code to run.
2
Q
What is Intermediate Code?
A
- Code partly translated between high-level and machine language produced by a compiler.
- Code that is halfway between machine code and object code is called intermediate code.
- This is independent of the processor architecture so can be used across different
machines and operating systems.
3
Q
What are Virtual Machines used for?
A
- Virtual machines are commonly used to create a development environment for
programmers to test programs on different operating systems.
-The advantage of this is that it saves both the time and money of having to purchase multiple devices solely for testing.
- However, running intermediate code in a virtual machine can also be considerably
slower compared to running low-level code on the device it was designed for.
4
Q
Advantages of Virtual Machines?
A
- Protection from malware:
Malware will affect the virtual machine rather than the device being used.
- Running incompatible software:
Programs specific to different operating systems or different versions of an
operating system can be run within a VM, saving time and money required
to purchase the hardware.
A common example is of games consoles being implemented on PCs via a
virtual machine.