- A virtual machine takes the layered approach to its logical conclusion. It treats hardware and the operating system kernel as though they were all hardware.
- A virtual machine provides an interface identical to the underlying bare hardware.
- The operating system creates the illusion of multiple processes, each executing on its own processor with its own (virtual) memory.
- The resources of the physical computer are shared to create the virtual machines.
-CPU scheduling can create the appearance that users have their own processor.
-Spooling and a file system can provide virtual card readers and virtual line printers.
-A normal user time-sharing terminal serves as the virtual machine operator’s console.
- Implemetation
-Traditionally written in assembly language, operating systems can now be written in higher-level languages.
-Code written in a high-level language:
-can be written faster.
-is more compact.
-is easier to understand and debug.
-An operating system is far easier to port (move to some other hardware) if it is written in a high-level language.
- Benefits
A virtual machine, simply put, is a virtual computer running on a physical computer. The virtual machine emulates a physical machine in software. This includes not only the processor but the instruction set, the memory bus, any BIOS commands and critical machine hardware such as the system clock and and DMA hardware. Depending upon the machine peripheral devices are generally virtualized including storage devices like floppy drives, hard drives and CD drives. Video, keyboard and mouse support are also common. A virtual machine must look and act just like the real thing so standard software, like operating systems and applications, can run without modification
- Examples
1. Java Virtual Machine
- Compiled Java programs are platform-neutral bytecodes executed by a Java Virtual Machine (JVM).
- JVM consists of
- class loader
- class verifier
- runtime interpreter - Just-In-Time (JIT) compilers increase performance
0 comments:
Post a Comment