Virtual Machine Conclusion
The primary objective of the Virtual Machine project has been to provide an interested reader with an introduction to the advantages and uses of Virtual Machines. The initial focus was to define the four major conceptual models of Virtual Machines used today, The IBM Model as demonstrated in the IBM S/390, the Java Virtual Machine Model evident with multi platform Internet applications and the Extended Machine Model utilized in modern operating systems. Followed by the Unix Virtual Machine model represented by the Unix user shell. The basis for all four Virtual Machine models is the combining of instruction sets to simulate devices or machines. The prime characteristics from each type of Virtual Machine solved a distinctly different problem that confronted computer and software engineers.
| The basis for all three Virtual Machine models is combining instruction sets to simulate devices or machines. |
The IBM model solved the need for a single computer system that could simulate multiple computers with different operating systems. This enabled users to create and manage multiple copies of different Virtual Machines on a single computer. A significant feature in the IBM model was that it enabled programs to share the same hardware by partitioning the computer resources and completely isolating the programs.
The Java Virtual Machine addresses the need for an application that will run on multiple operating systems. The multi-platform portability provided by the Java Virtual Machine solved the need to rewrite programs in order to move them to a different operating system. The most significant feature of the Java Virtual Machine the ability write a program once and execute it with Java Virtual Machines on multiple platforms.
The OSI Virtual Machine model solved the problem of providing services and functions at the operating system level that did not exist in the system hardware. The Extended Machine model uses combinations of instructions to build more complex instruction sets to provide the user level with the Virtual device or service. The primary advantage of the Extended Machine is the ability to create Virtual devices and extend the features of computer systems using software. The element of commonality that connects all three Virtual Machine concepts is the mapping of instructions from the user level to lower level instruction sets and back up to the user level. This action tales place transparently to the user's view of the computer's actions. The term "transparent", however, should not be confused with the term "virtual". A transparent object actually exists but is not visible to the user. In contrast, a virtual object is visible to the user, but does not actually exist.
The Unix Virtual Machine model solved series of computer engineering problems by addressing the need for a modular approach to managing the launching and control of Unix processes. The success of the Unix operating systems is to a largely to the versatility and scalability of the Unix process.
The power and success of the Virtual Machine concept comes from the ability of users to access and utilize functions and devices that are simply combinations of instruction sets. The ability to provide a virtual solution to the real limitations of modern computer systems is a very powerful tool that is continuing to extend the abilities of modern computer systems.