An Introduction to Virtualization. Amit Singh. All Rights Reserved. Written in January 2. 1. 3 Differences from previous versions. GRUB 2 is a rewrite of GRUB see History, although it shares many characteristics with the previous version, now known as. The question is not about the maximum heap size on a 32bit OS, given that 32bit OSes have a maximum addressable memory size of 4GB, and that the JVMs max heap size. Its hot. Yet again. Microsoft acquired Connectix Corporation, a provider of virtualization software for Windows and Macintosh based computing, in early 2. In late 2. 00. 3, EMC announced its plans to acquire VMware for 6. Shortly afterwards, VERITAS announced that it was acquiring an application virtualization company called Ejascent for 5. Sun and Hewlett Packard have been working hard in recent times to improve their virtualization technologies. IBM has long been a pioneer in the area of virtual machines, and virtualization is an important part of IBMs many offerings. VMware Workstation is a hosted hypervisor that runs on x64 versions of Windows and Linux operating systems an x86 version of earlier releases was available it. Broadcom Limited is a diversified global semiconductor leader built on 50 years of innovation, collaboration and engineering excellence. Opensource TCPHTTP loadbalancing proxy server supporting native SSL, keepalive, compression, CLI sticktables, custom log formats, header rewriting, redirects. There has been a surge in academic research in this area lately. This umbrella of technologies, in its various connotations and offshoots, is hot, yet again. The purpose of this document can be informally stated as follows if you were to use virtualization in a an endeavor research or otherwise, here are some things to look at. Christopher Strachey published a paper titled Time Sharing in Large Fast Computers in the International Conference on Information Processing at UNESCO, New York, in June, 1. Later on, in 1. 97. Donald Knuth that. I did not envisage the sort of console system which is now so confusingly called time sharing. Strachey admits, however, that time sharing as a phrase was very much in the air in the year 1. The use of multi programming for spooling can be ascribed to the Atlas computer in the early 1. The Atlas project was a joint effort between Manchester University and Ferranti Ltd. In addition to spooling, Atlas also pioneered demand paging and supervisor calls that were referred to as extracodes. According to the designers 1. Supervisor extracode routines S. E. R. s formed the principal branches of the supervisor program. They are activated either by interrupt routines or by extracode instructions occurring in an object program. A virtual machine was used by the Atlas supervisor, and another was used to run user programs. In the mid 1. 96. IBM Watson Research Center was home to the M4. X Project, the goal being to evaluate the then emerging time sharing system concepts. The architecture was based on virtual machines the main machine was an IBM 7. M4. 4 and each virtual machine was an experimental image of the main machine 4. X. The address space of a 4. X was resident in the M4. IBM had provided an IBM 7. MIT in the 1. 95. It was on IBM machines that the Compatible Time Sharing System CTSS was developed at MIT. The supervisor program of CTSS handled console IO, scheduling of foreground and background offline initiated jobs, temporary storage and recovery of programs during scheduled swapping, monitor of disk IO, etc. The supervisor had direct control of all trap interrupts. Around the same time, IBM was building the 3. MITs Project MAC, founded in the fall of 1. MIT Laboratory for Computer Science. Project MACs goals included the design and implementation of a better time sharing system based on ideas from CTSS. This research would lead to Multics, although IBM would lose the bid and General Electrics GE 6. Regardless of this loss, IBM has been perhaps the most important force in this area. A number of IBM based virtual machine systems were developed the CP 4. IBM 3. 604. 0, the CP 6. IBM 3. 606. 7, the famous VM3. Typically, IBMs virtual machines were identical copies of the underlying hardware. A component called the virtual machine monitor VMM ran directly on real hardware. Multiple virtual machines could then be created via the VMM, and each instance could run its own operating system. IBMs VM offerings of today are very respected and robust computing platforms. Robert P. Goldberg describes the then state of things in his 1. Survey of Virtual Machines Research. He says Virtual machine systems were originally developed to correct some of the shortcomings of the typical third generation architectures and multi programming operating systems e. OS3. 60. As he points out, such systems had a dual state hardware organization a privileged and a non privileged mode, something thats prevalent today as well. In privileged mode all instructions are available to software, whereas in non privileged mode they are not. The OS provides a small resident program called the privileged software nucleus analogous to the kernel. User programs could execute the non privileged hardware instructions or make supervisory calls e. SVCs analogous to system calls to the privileged software nucleus in order to have privileged functions e. IO performed on their behalf. While this works fine for many purposes, there are fundamental shortcomings with the approach. Consider a few. Only one bare machine interface is exposed. Therefore, only one kernel can be run. Anything, whether it be another kernel belonging to the same or a different operating system, or an arbitrary program that requires to talk to the bare machine such as a low level testing, debugging, or diagnostic program, cannot be run alongside the booted kernel. One cannot perform any activity that would disrupt the running system for example, upgrade, migration, system debugging, etc. One also cannot run untrusted applications in a secure manner. One cannot easily provide the illusion of a hardware configuration that one does not have multiple processors, arbitrary memory and storage configurations, etc. to some software. We shall shortly enumerate several more reasons for needing virtualization, before which let us clarify what we mean by the term. A Loose Definition. Let us define virtualization in as all encompassing a manner as possible for the purpose of this discussion virtualization is a framework or methodology of dividing the resources of a computer into multiple execution environments, by applying one or more concepts or technologies such as hardware and software partitioning, time sharing, partial or complete machine simulation, emulation, quality of service, and many others. Note that this definition is rather loose, and includes concepts such as quality of service, which, even though being a separate field of study, is often used alongside virtualization. Often, such technologies come together in intricate ways to form interesting systems, one of whose properties is virtualization. In other words, the concept of virtualization is related to, or more appropriately synergistic with various paradigms. Consider the multi programming paradigm applications on nix systems actually almost all modern systems run within a virtual machine model of some kind. Since this document is an informal, non pedantic overview of virtualization and how it is used, it is more appropriate not to strictly categorize the systems that we discuss. Even though we defined it as such, the term virtualization is not always used to imply partitioning breaking something down into multiple entities. Here is an example of its different intuitively opposite connotation you can take N disks, and make them appear as one logical disk through a virtualization layer. Grid computing enables the virtualization ad hoc provisioning, on demand deployment, decentralized, etc. of distributed computing IT resources such as storage, bandwidth, CPU cycles,. Hyper V Wikipedia. This article needs to be updated. Please update this article to reflect recent events or newly available information. October 2. Microsoft. Hyper V, codenamed Viridian1 and formerly known as Windows Server Virtualization, is a native hypervisor it can create virtual machines on x. Windows. 2 Starting with Windows 8, Hyper V superseded Windows Virtual PC as the hardware virtualization component of the client editions of Windows NT. A server computer running Hyper V can be configured to expose individual virtual machines to one or more networks. Hyper V was first released alongside Windows Server 2. Windows Server and some client operating systems since. HistoryeditA beta version of Hyper V was shipped with certain x. Windows Server 2. The finalized version was released on June 2. Windows Update. 3 Hyper V has since been released with every version of Windows Server. 456Microsoft provides Hyper V through two channels Part of Windows Hyper V is an optional component of Windows Server 2. It is also available in x. SKUs of Pro and Enterprise editions of Windows 8, Windows 8. Windows 1. 0. Hyper V Server It is a freeware edition of Windows Server with limited functionality and Hyper V component. 7Hyper V ServereditHyper V Server 2. October 1, 2. 00. It consists of Windows Server 2. Server Core and Hyper V role other Windows Server 2. Windows services. 8 Hyper V Server 2. OS, physical hardware, and software. A menu driven CLI interface and some freely downloadable script files simplify configuration. In addition, Hyper V Server supports remote access via Remote Desktop Connection. However, administration and configuration of the host OS and the guest virtual machines is generally done over the network, using either Microsoft Management Consoles on another Windows computer or System Center Virtual Machine Manager. This allows much easier point and click configuration, and monitoring of the Hyper V Server. Hyper V Server 2. R2 an edition of Windows Server 2. R2 was made available in September 2. Windows Power. Shell v. CLI control. Remote access to Hyper V Server requires CLI configuration of network interfaces and Windows Firewall. Also using a Windows Vista PC to administer Hyper V Server 2. R2 is not fully supported. ArchitectureeditHyper V implements isolation of virtual machines in terms of a partition. A partition is a logical unit of isolation, supported by the hypervisor, in which each guest operating system executes. A hypervisor instance has to have at least one parent partition, running a supported version of Windows Server 2. The virtualization stack runs in the parent partition and has direct access to the hardware devices. The parent partition then creates the child partitions which host the guest OSs. A parent partition creates child partitions using the hypercall API, which is the application programming interface exposed by Hyper V. 9A child partition does not have access to the physical processor, nor does it handle its real interrupts. Instead, it has a virtual view of the processor and runs in Guest Virtual Address, which, depending on the configuration of the hypervisor, might not necessarily be the entire virtual address space. Depending on VM configuration, Hyper V may expose only a subset of the processors to each partition. The hypervisor handles the interrupts to the processor, and redirects them to the respective partition using a logical Synthetic Interrupt Controller Syn. IC. Hyper V can hardware accelerate the address translation of Guest Virtual Address spaces by using second level address translation provided by the CPU, referred to as EPT on Intel and RVI formerly NPT on AMD. Child partitions do not have direct access to hardware resources, but instead have a virtual view of the resources, in terms of virtual devices. Any request to the virtual devices is redirected via the VMBus to the devices in the parent partition, which will manage the requests. The VMBus is a logical channel which enables inter partition communication. The response is also redirected via the VMBus. If the devices in the parent partition are also virtual devices, it will be redirected further until it reaches the parent partition, where it will gain access to the physical devices. Parent partitions run a Virtualization Service Provider VSP, which connects to the VMBus and handles device access requests from child partitions. Child partition virtual devices internally run a Virtualization Service Client VSC, which redirect the request to VSPs in the parent partition via the VMBus. This entire process is transparent to the guest OS. Virtual devices can also take advantage of a Windows Server Virtualization feature, named Enlightened IO, for storage, networking and graphics subsystems, among others. Enlightened IO is a specialized virtualization aware implementation of high level communication protocols, like SCSI, that allows bypassing any device emulation layer and takes advantage of VMBus directly. This makes the communication more efficient, but requires the guest OS to support Enlightened IO. Currently only the following operating systems support Enlightened IO, allowing them therefore to run faster as guest operating systems under Hyper V than other operating systems that need to use slower emulated hardware System requirementseditHost operating system. An x. 86 6. 4 processor. Hardware assisted virtualization support This is available in processors that include a virtualization option specifically, Intel VT or AMD Virtualization AMD V, formerly code named Pacifica. An NX bit compatible CPU must be available and Hardware Data Execution Prevention DEP must be enabled. Although this is not an official requirement, Windows Server 2. R2 and a CPU with second level address translation support are recommended for workstations. 1. Second level address translation is a mandatory requirement for Hyper V in Windows 8. 1. Memory. Minimum 2 GB. Each virtual machine requires its own memory, and so realistically much more. Minimum 4 GB if run on Windows 8. Windows Server 2. Standard x. 64 Hyper V full GUI or Core supports up to 3. GB of memory for running VMs, plus 1 GB for the Hyper V parent OS. 1. Maximum total memory per system for Windows Server 2. R2 hosts 3. 2 GB Standard or 2 TB Enterprise, Datacenter. 1. Maximum total memory per system for Windows Server 2. TB. Guest operating systems. Hyper V in Windows Server 2. R2 supports virtual machines with up to 4 processors each 1, 2, or 4 processors depending on guest OS see belowHyper V in Windows Server 2. Hyper V in Windows Server 2. R2 supports up to 3. VMs per system1. Hyper V in Windows Server 2. Hyper V in Windows Server 2. Hyper V supports both 3. VMs. Microsoft Hyper V ServereditStand alone Hyper V Server variant does not require an existing of Windows Server 2. Windows Server 2. R2. The standalone installation is called Microsoft Hyper V Server for the non R2 version and Microsoft Hyper V Server 2. R2. Microsoft Hyper V Server is built with components of Windows and has a Windows Server Core user experience. None of the other roles of Windows Server are available in Microsoft Hyper V Server. This version supports up to 6. VMs per system. 1. System requirements of Microsoft Hyper V Server are the same for supported guest operating systems and processor, but differ in the following 1. RAM Minimum 1 GB RAM Recommended 2 GB RAM or greater Maximum 1 TB.