1 / 18

Virtual Machine Systems

Virtual Machine Systems. CS-502 Operating Systems Slides excerpted from Silbershatz, Ch. 2. Question. Can a “small” operating system simulate the hardware of some machine so that Another operating system can run in that simulated hardware?

makelina
Download Presentation

Virtual Machine Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Virtual Machine Systems CS-502 Operating Systems Slides excerpted from Silbershatz, Ch. 2 Virtual Machine Systems

  2. Question • Can a “small” operating system simulate the hardware of some machine so that • Another operating system can run in that simulated hardware? • More than one instance of that operating system run on the same hardware at the same time? • More than one different operating system can share the same hardware at the same time? • Answer: Yes Virtual Machine Systems

  3. Solution – Virtual Machine • A virtual machine provides interface identical to underlying bare hardware • I.e., all devices, interrupts, memory, page tables, etc. • Virtual Machine Operating System creates illusion of multiple processors & memories • Each capable of executing independently • No sharing, except via network protocols Virtual Machine Systems

  4. History – CP67 / CMS • IBM Cambridge Scientific Center • Ran on IBM 360/67 • Alternative to TSS/360, which was never very popular • Replicated hardware in each “process” • Virtual 360/67 processor and memory • Virtual disk(s), virtual console, printer, card reader, etc. • CMS: Cambridge Monitor System • A single user, interactive operating system • Commercialized as VM370 in mid-1970s Virtual Machine Systems

  5. History (continued) • Various other attempts with other machines • VMware • Workstation • Servers (for IT centers) Virtual Machine Systems

  6. Virtual Machines (continued) • The resources of the physical computer are shared to create the virtual machines • CPU scheduling can create the appearance that each user has own processor • Spooling and a file system provide • virtual card readers, virtual line printers • Disk partitioned to provide virtual disks • A normal user time-sharing terminal serves as the virtual machine operator’s console Virtual Machine Systems

  7. Virtual Machines (continued) (a) Nonvirtual machine (b) virtual machine Non-virtual Machine Virtual Machine Virtual Machine Systems

  8. Definitions • Host Operating System: • The operating system actually running on the hardware • Together with virtualization layer, it simulates environment for … • Guest Operating System: • The operating system running in the simulated environment • E.g., the one we are trying to debug Virtual Machine Systems

  9. Virtual Machines (continued) • Virtual-machine concept provides complete protection of system resources • Each virtual machine is isolated from all other virtual machines. • However, no direct sharing of resources • Virtual-machine system is a good vehicle for operating-systems research and development. • System development is done on the virtual machine does not disrupt normal operation • Multiple concurrent developers can work at same time • The virtual machine concept is difficult to implement due to the effort required to simulate an exact duplicate of the underlying hardware Virtual Machine Systems

  10. Example – Page tables • Suppose guest OS has its own page tables Then virtualization layer must • Transcribe those tables to host page tables • Trap all references & updates to guest page tables and simulate them in host tables • During page fault • Virtualization layer must decide whether fault belongs to guest OS or self • If guest OS, must simulate a page fault • Likewise, virtualization layer must trap and simulate every privileged instruction in machine! Virtual Machine Systems

  11. Virtual Machines (continued) • Some hardware architectures or features are impossible to virtualize • Certain registers or state not exposed • Unusual devices and device control • Clocks, time, and real-time behavior Virtual Machine Systems

  12. VMware – Modern Virtual Machine System • Founded 1998, Mendel Rosenblum et al. • Research at Stanford University • VMware Workstation • Separates Host OS from virtualization layer • Host OS may be Windows, Linux, etc. • Wide variety of Guest operating systems • < $200 Virtual Machine Systems

  13. VMware Architecture Virtual Machine Systems

  14. VMware Server • Free version released in 2006 • http://www.vmware.com/products/server/ • Runs on any x86 server hardware and OS • Windows Server and Linux Host OS’s • Partition a physical server into multiple virtual server machines • Target market – IT centers providing multiple services • Allows separate virtual servers to be separately configured for separate IT applications • Provisioning • Portability, replication, etc. Virtual Machine Systems

  15. VMware Server ESX • Total decoupling between hardware and applications • High-end, high-performance IT centers with multiple applications • Oracle, SQL Server, Microsoft Exchange server, SAP, Siebel, Lotus Notes, BEA WebLogic, Apache • Dynamically move running application to different hardware • Maintenance, hardware replacement • Provisioning new versions, etc. Virtual Machine Systems

  16. Must virtual machine be replica ofhost machine? • No, virtualization layer can simulate any architecture • Typically used for debugging specialized systems • Real-time systems, niche products, etc. • Guest architecture does not even have to be real hardware! Virtual Machine Systems

  17. The Java Virtual Machine • Own idealized architecture • Stylized machine language • Byte codes • Readily available interpreter Virtual Machine Systems

  18. Questions? Virtual Machine Systems

More Related