Virtual Machine Seminar

Embed Size (px)

Citation preview

  • 8/10/2019 Virtual Machine Seminar

    1/37

    A

    SEMINAR REPORT

    ON

    VIRTUAL MACHINE AND ITS TOOLS

    In partial fulfillment of

    B.E IV yr (Computer Science En!!."

    #or$ C%rrie& Out At

    'IET 'o&)pur

    Submitted To: Submitted by:

    Nidhi Purohit Savan Kumar Vaishnav

    CSE, VI Year

  • 8/10/2019 Virtual Machine Seminar

    2/37

    Ac$no*+e&!ement

    I am indebted to all my elders, leturers and friends for inspirin! me to !ive

    a seminar "ith immense dediation# $ith !reat pleasure and !ratefulness, Ie%tend my deep sense of !ratitude to M,. Ni&)i Puro)it for !ivin! me an

    opportunity to aomplish my seminar under her !uidane and to inrease

    my &no"led!e#

    I "ould also li&e to than& Mr,. Su!%n&)% '()*, Computer Siene +

    En!ineerin!, odhpur Institute of En!ineerin! + Tehnolo!y- for !ivin! her

    preious time + !uidane for the suessful ompletion of the seminar#

    .astly I "ish to than& eah and every person involved in ma&in! my

    seminar suessful#

    Than&in! You#

    S%-%n . V%i,)n%-

    /B.E. (IV 0e%r"

    Computer Science En!ineerin!1

  • 8/10/2019 Virtual Machine Seminar

    3/37

    Pre2%ce

    This seminar is on topi /Virtual mahine and its tools0# In this seminar "e "ill deal "ith

    virtual mahines, "hih is basially soft"are reali1ation of omputer hard"are# 2s no" days

    virtual mahines are beomin! inreasin!ly popular for usin! multiple !uest operatin!

    systems amounted on host operatin!# So in this seminar "e "ill disuss many of the points

    on virtual mahine as "hat are V3, "hat4s their usa!e, ho" they "or& et#

    $e "ill also disuss on tools used for virtual mahines, ho" to use them, "hat

    are their benefits, business perspetives about them et#

  • 8/10/2019 Virtual Machine Seminar

    4/37

    In&e3

    5# Intro&uction 4

    6# Hi,tory5#)y VM6 7

    7# Hyper-i,or 8

    8# C%te!orie, 9

    9# Tec)ni:ue, ;sH they "ere hard to pro!ram and did not support e%istin!

    operatin! systems#

    esearhers at Stanford used virtuali1ation to ma&e 3PPs loo&

    more li&e traditional mahines#

    esult: V3"are In# supplier of V33s for ommodity

    hard"are#

    R%tion%+e 2or VMM, To&%y

    Today, seurity and enapsulation are the most important

    reasons for usin! V33s#

    /GV33s !ive operatin! systems developers another

    opportunity to develop funtionality no lon!er pratial intoday4s omple% and ossified operatin! systems, "here

    innovation moves at a !eolo!i pae#0

  • 8/10/2019 Virtual Machine Seminar

    8/37

    Hyper-i,or

    In omputin!, a hypervisor, also alled virtual mahine monitor 'V33-, allo"s

    multiple operatin! systemsto run onurrently on a host omputerJ a feature

    alled hard"are virtuali1ation#The hypervisor presents the !uest operatin! systems "ith

    avirtual platformand monitors the e%eution of the !uest operatin! systems# In that "ay,

    multiple operatin! systems, inludin! multiple instanes of the same operatin! system,

    an share hard"are resoures# nli&e multitas&in!,"hih also allo"s appliations to

    share hard"are resoures, the virtual mahine approah usin! a hypervisor isolates

    failures in one operatin! system from other operatin! systems sharin! the hard"are#

    2n e%ample of a (ypervisor isPS3'Proessor esoureSystem 3ana!er-, "hih is a

    typeA5 (ypervisor that allo"s multiple lo!ial partitions to share physial resoures suh

    as CPs, diret aess stora!e devie '*2S*-, and memory# PS3 "as introdued by

    ID3 in the early 5=;>Ls "ith theID3 System 7;>proessors# These onepts have

    beome an important part of the term &no"n as virtuali1ation#

    The onept of Virtuali1ation"ith PS3, multiple .P2s and type 5 (ypervisor "as

    first introdued by ID3 in 5=;6 "ith the introdution of the lar!e main ID3 System 7;>

    omputers 'suh as the ID3 75< Central Proessin! nit-# PS3 is a typeA5

    (ypervisor that runs diretly on the mahine level and alloates system resoures aross

    .P2s to share physial resoures#

    ?oldber! lassifies t"o types of hypervisor:

    Type 5 'or native, bareAmetal- hypervisors run diretly on the hostLs hard"are to

    ontrol the hard"are and to monitor !uest operatin!Asystems# 2 !uest operatin!

    system thus runs on another level above the hypervisor#

    This model represents the lassi implementation of virtual mahine arhiteturesH

    the ori!inal hypervisor "as CPC3S, developed at ID3in the 5=>s, anestor of

    ID3Ls1V3#

    http://en.wikipedia.org/wiki/Computinghttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Hardware_virtualizationhttp://en.wikipedia.org/wiki/Platform_virtualizationhttp://en.wikipedia.org/wiki/Computer_multitaskinghttp://en.wikipedia.org/wiki/PR/SMhttp://en.wikipedia.org/wiki/IBM_System_370http://en.wikipedia.org/wiki/Virtualizationhttp://en.wikipedia.org/wiki/Virtualizationhttp://en.wikipedia.org/wiki/CP/CMShttp://en.wikipedia.org/wiki/IBMhttp://en.wikipedia.org/wiki/Z/VMhttp://en.wikipedia.org/wiki/Computinghttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Hardware_virtualizationhttp://en.wikipedia.org/wiki/Platform_virtualizationhttp://en.wikipedia.org/wiki/Computer_multitaskinghttp://en.wikipedia.org/wiki/PR/SMhttp://en.wikipedia.org/wiki/IBM_System_370http://en.wikipedia.org/wiki/Virtualizationhttp://en.wikipedia.org/wiki/Virtualizationhttp://en.wikipedia.org/wiki/CP/CMShttp://en.wikipedia.org/wiki/IBMhttp://en.wikipedia.org/wiki/Z/VM
  • 8/10/2019 Virtual Machine Seminar

    9/37

    Type 6 'or hosted- hypervisors run "ithin a onventional operatin!A

    systemenvironment# $ith the hypervisor layer as a distint seond soft"are

    level, !uest operatin! systems run at the third level above the hard"are#

    Note: 3irosoft (yperAV'released in une 6>>>< parent partition to mana!e the Type 5 (yperAV hypervisor# In both

    ases the (yperAV hypervisor loads prior to the mana!ement operatin! system, and

    any virtual environments reated run diretly on the hypervisor, not via the

    mana!ement operatin! system#

    The term hypervisor apparently ori!inated in ID3Ls CPA7;> reimplementation

    of CPA;for theSystem7;>, released in 5=;6 as V37;># The term hypervisor all,or hyperall, referred to theparavirtuali1ationinterfae, by "hih a !uest operatin!

    system ould aess servies diretly from the 'hi!herAlevel- ontrol pro!ram

    analo!ous to ma&in! a supervisor all to the 'sameAlevel- operatin! system# The

    term supervisorrefers to the operatin! system &ernel, "hih runs in supervisor

    state on ID3 mainframes#

    http://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Hyper-Vhttp://en.wikipedia.org/wiki/Windows_Server_2008http://en.wikipedia.org/wiki/IBMhttp://en.wikipedia.org/wiki/CP-67http://en.wikipedia.org/wiki/System/370http://en.wikipedia.org/wiki/VM/370http://en.wikipedia.org/wiki/Paravirtualizationhttp://en.wikipedia.org/wiki/Supervisory_programhttp://en.wikipedia.org/wiki/Kernel_(computer_science)http://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Hyper-Vhttp://en.wikipedia.org/wiki/Windows_Server_2008http://en.wikipedia.org/wiki/IBMhttp://en.wikipedia.org/wiki/CP-67http://en.wikipedia.org/wiki/System/370http://en.wikipedia.org/wiki/VM/370http://en.wikipedia.org/wiki/Paravirtualizationhttp://en.wikipedia.org/wiki/Supervisory_programhttp://en.wikipedia.org/wiki/Kernel_(computer_science)
  • 8/10/2019 Virtual Machine Seminar

    10/37

    C%te!orie,

    Sy,tem -irtu%+ m%c)ine,?5

    System virtual mahines 'sometimes alled hard"are virtual mahines- allo" the sharin!of the underlyin! physial mahine resoures bet"een different virtual mahines, eah

    runnin! its o"n operatin! system# The soft"are layer providin! the virtuali1ation is

    alled a virtual mahine monitor or hypervisor# 2 hypervisor an run on bare hard"are'Type 5 or native V3- or on top of an operatin! system 'Type 6 or hosted V3-#

    The main advanta!es of system V3s are:

    multiple )S environments an oAe%ist on the same omputer, in stron!

    isolation from eah other

    the virtual mahine an provide an instrution setarhiteture 'IS2- that is

    some"hat different from that of the real mahine

    2ppliation provisionin!, maintenane, hi!h availability and disaster

    reovery#

    The main disadvanta!e of system V3s is:

    a virtual mahine is less effiient than a real mahine "hen it aesses the

    hard"are indiretly

    3ultiple V3s eah runnin! their o"n operatin! system 'alled !uest operatin! system-are freFuently used in server onsolidation, "here different servies that used to run on

    individual mahines in order to avoid interferene are instead run in separate V3s on thesame physial mahine# This use is freFuently alled FualityAofAservie isolation 'MoS

    isolation-#

    The desire to run multiple operatin! systems "as the ori!inal motivation for virtual

    mahines, as it allo"ed timeAsharin! a sin!le omputer bet"een several sin!leAtas&in!)Ses# In some respets, a system virtual mahine an be onsidered a !enerali1ation of

    the onept of virtual memorythat historially preeded it# ID3LsCPC3S, the first

    systems to allo"full virtuali1ation, implemented time sharin!by providin! eah user

    "ith a sin!leAuser operatin! system, the C3S#nli&e virtual memory, a system virtual

    mahine allo"ed the user to use privile!ed instrutions in their ode# This approah hadertain advanta!es, for instane it allo"ed users to add inputoutput devies not allo"ed

    by the standard system#

    The !uest )Ses do not have to be all the same, ma&in! it possible to run different )Seson the same omputer 'e#!#, 3irosoft $indo"sand.inu%,or older versions of an )S in

    order to support soft"are that has not yet been ported to the latest version-# The use of

    virtual mahines to support different !uest )Ses is beomin! popular in embedded

    http://en.wikipedia.org/wiki/Instruction_sethttp://en.wikipedia.org/wiki/Virtual_memoryhttp://en.wikipedia.org/wiki/CP/CMShttp://en.wikipedia.org/wiki/CP/CMShttp://en.wikipedia.org/wiki/Full_virtualizationhttp://en.wikipedia.org/wiki/Full_virtualizationhttp://en.wikipedia.org/wiki/Time_sharinghttp://en.wikipedia.org/wiki/Time_sharinghttp://en.wikipedia.org/wiki/Conversational_Monitor_Systemhttp://en.wikipedia.org/wiki/Conversational_Monitor_Systemhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Linuxhttp://en.wikipedia.org/wiki/Linuxhttp://en.wikipedia.org/wiki/Linuxhttp://en.wikipedia.org/wiki/Embedded_systemshttp://en.wikipedia.org/wiki/Instruction_sethttp://en.wikipedia.org/wiki/Virtual_memoryhttp://en.wikipedia.org/wiki/CP/CMShttp://en.wikipedia.org/wiki/Full_virtualizationhttp://en.wikipedia.org/wiki/Time_sharinghttp://en.wikipedia.org/wiki/Conversational_Monitor_Systemhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Linuxhttp://en.wikipedia.org/wiki/Embedded_systems
  • 8/10/2019 Virtual Machine Seminar

    11/37

    systemsH a typial use is to support a realAtime operatin! systemat the same time as a

    hi!hAlevel )S suh as .inu% or $indo"s#

    2nother use is to sandbo%an )S that is not trusted, possibly beause it is a system underdevelopment# Virtual mahines have other advanta!es for )S development, inludin!

    better debu!!in! aess and faster reboots#

    .i!hter "ei!htoperatin! systemAlevel virtuali1ationtehniFues, suh as Solaris ones,

    provide a level of isolation "ithin a sin!le operatin! system# They do not have isolationas omplete as a virtual mahine#

    http://en.wikipedia.org/wiki/Embedded_systemshttp://en.wikipedia.org/wiki/Real-time_operating_systemhttp://en.wikipedia.org/wiki/Sandbox_(software_development)http://en.wikipedia.org/wiki/Operating_system-level_virtualizationhttp://en.wikipedia.org/wiki/Operating_system-level_virtualizationhttp://en.wikipedia.org/wiki/Solaris_Zoneshttp://en.wikipedia.org/wiki/Embedded_systemshttp://en.wikipedia.org/wiki/Real-time_operating_systemhttp://en.wikipedia.org/wiki/Sandbox_(software_development)http://en.wikipedia.org/wiki/Operating_system-level_virtualizationhttp://en.wikipedia.org/wiki/Solaris_Zones
  • 8/10/2019 Virtual Machine Seminar

    12/37

    Proce,, -irtu%+ m%c)ine,?5

    2 proess V3, sometimes alled an appliation virtual mahine, runs as a normalappliation inside an )S and supports a sin!le proess# It is reated "hen that proess is

    started and destroyed "hen it e%its# Its purpose is to provide aplatformAindependent

    http://en.wikipedia.org/wiki/System_platformhttp://en.wikipedia.org/wiki/System_platform
  • 8/10/2019 Virtual Machine Seminar

    13/37

    pro!rammin! environment that abstrats a"ay details of the underlyin! hard"are or

    operatin! system, and allo"s a pro!ram to e%eute in the same "ay on any platform#

    2 proess V3 provides a hi!hAlevel abstration J that of a hi!hAlevel pro!rammin!lan!ua!e'ompared to the lo"Alevel IS2 abstration of the system V3-# Proess V3s

    are implemented usin! an interpreterH performane omparable to ompiled pro!rammin!

    lan!ua!es is ahieved by the use ofBustAinAtime ompilation#

    This type of V3 has beome popular "ith the ava pro!rammin! lan!ua!e, "hih isimplemented usin! the ava virtual mahine# )ther e%amples inlude theParrot virtual

    mahine, "hih serves as anabstration layerfor several interpreted lan!ua!es, and

    the #NET Orame"or&, "hih runs on a V3 alled the Common .an!ua!e untime#

    2 speial ase of proess V3s are systems that abstrat over the ommuniationmehanisms of a 'potentially hetero!eneous- omputer luster# Suh a V3 does not

    onsist of a sin!le proess, but one proess per physial mahine in the luster# They are

    desi!ned to ease the tas& of pro!rammin! parallel appliations by lettin! the pro!rammer

    fous on al!orithms rather than the ommuniation mehanisms provided by the

    interonnet and the )S# They do not hide the fat that ommuniation ta&es plae, andas suh do not attempt to present the luster as a sin!le parallel mahine#

    nli&e other proess V3s, these systems do not provide a speifi pro!rammin!

    lan!ua!e, but are embedded in an e%istin! lan!ua!eH typially suh a system providesbindin!s for several lan!ua!es 'e#!#, CandO)T2N-# E%amples are PV3 'Parallel

    Virtual 3ahine- and 3PI '3essa!e Passin! Interfae-# They are not stritly virtual

    mahines, as the appliations runnin! on top still have aess to all )S servies, and aretherefore not onfined to the system model provided by the @V3@#

    Tec)ni:ue,

    http://en.wikipedia.org/wiki/High-level_programming_languagehttp://en.wikipedia.org/wiki/High-level_programming_languagehttp://en.wikipedia.org/wiki/High-level_programming_languagehttp://en.wikipedia.org/wiki/Interpreter_(computing)http://en.wikipedia.org/wiki/Just-in-time_compilationhttp://en.wikipedia.org/wiki/Java_(programming_language)http://en.wikipedia.org/wiki/Java_virtual_machinehttp://en.wikipedia.org/wiki/Parrot_virtual_machinehttp://en.wikipedia.org/wiki/Parrot_virtual_machinehttp://en.wikipedia.org/wiki/Parrot_virtual_machinehttp://en.wikipedia.org/wiki/Abstraction_layerhttp://en.wikipedia.org/wiki/Abstraction_layerhttp://en.wikipedia.org/wiki/.NET_Frameworkhttp://en.wikipedia.org/wiki/Common_Language_Runtimehttp://en.wikipedia.org/wiki/Common_Language_Runtimehttp://en.wikipedia.org/wiki/Computer_clusterhttp://en.wikipedia.org/wiki/C_(programming_language)http://en.wikipedia.org/wiki/C_(programming_language)http://en.wikipedia.org/wiki/FORTRANhttp://en.wikipedia.org/wiki/FORTRANhttp://en.wikipedia.org/wiki/Parallel_Virtual_Machinehttp://en.wikipedia.org/wiki/Parallel_Virtual_Machinehttp://en.wikipedia.org/wiki/Message_Passing_Interfacehttp://en.wikipedia.org/wiki/High-level_programming_languagehttp://en.wikipedia.org/wiki/High-level_programming_languagehttp://en.wikipedia.org/wiki/Interpreter_(computing)http://en.wikipedia.org/wiki/Just-in-time_compilationhttp://en.wikipedia.org/wiki/Java_(programming_language)http://en.wikipedia.org/wiki/Java_virtual_machinehttp://en.wikipedia.org/wiki/Parrot_virtual_machinehttp://en.wikipedia.org/wiki/Parrot_virtual_machinehttp://en.wikipedia.org/wiki/Abstraction_layerhttp://en.wikipedia.org/wiki/.NET_Frameworkhttp://en.wikipedia.org/wiki/Common_Language_Runtimehttp://en.wikipedia.org/wiki/Computer_clusterhttp://en.wikipedia.org/wiki/C_(programming_language)http://en.wikipedia.org/wiki/FORTRANhttp://en.wikipedia.org/wiki/Parallel_Virtual_Machinehttp://en.wikipedia.org/wiki/Parallel_Virtual_Machinehttp://en.wikipedia.org/wiki/Message_Passing_Interface
  • 8/10/2019 Virtual Machine Seminar

    14/37

    Emu+%tion o2 t)e un&er+yin! r%* )%r&*%re (n%ti-e e3ecution"?5

    This approah is desribed as full virtuali1ation of the hard"are, and an be implemented

    usin! a Type 5 or Type 6 hypervisor# '2 Type 5 hypervisor runs diretly on the hard"areH

    a Type 6 hypervisor runs on another operatin! system, suh as .inu%-# Eah virtualmahine an run any operatin! system supported by the underlyin! hard"are# sers an

    thus run t"o or more different @!uest@ operatin! systems simultaneously, in separate

    @private@ virtual omputers#

    The pioneer system usin! this onept "as ID3Ls CPA8>, the first '5=;- version ofID3LsCPC3S'5=;A5=;6- and the preursor to ID3Ls V3 family'5=;6Apresent-# $ith

    the V3 arhiteture, most users run a relatively simple interative omputin!sin!leAuser

    operatin! system, C3S, as a @!uest@ on top of the V3 ontrol pro!ram 'V3ACP-# Thisapproah &ept the C3S desi!n simple, as if it "ere runnin! aloneH the ontrol pro!ram

    Fuietly provides multitas&in! and resoure mana!ement servies @behind the senes@# In

    addition to C3S, V3 users an run any of the other ID3 operatin! systems, suh

    as 3VSor 1)S# V3is the urrent version of V3, and is used to support hundreds orthousands of virtual mahines on a !iven mainframe# Some installations use .inu% for

    1Seriesto run $eb servers, "here .inu%runs as the operatin! system "ithin many virtualmahines#

    Oull virtuali1ation is partiularly helpful in operatin! system development, "hen

    e%perimental ne" ode an be run at the same time as older, more stable, versions, eah

    in a separate virtual mahine# The proess an even be reursive:ID3debu!!ed ne"versions of its virtual mahine operatin! system, V3, in a virtual mahine runnin! under

    an older version of V3, and even used this tehniFue to simulate ne" hard"are#

    The standard %

  • 8/10/2019 Virtual Machine Seminar

    15/37

    Some virtual mahines emulate hard"are that only e%ists as a detailed speifiation# Oor

    e%ample:

    )ne of the first "as thepAode mahinespeifiation, "hih allo"ed

    pro!rammers to "rite Pasalpro!ramsthat "ould run on any omputer runnin!

    virtual mahine soft"are that orretly implemented the speifiation# The speifiation of theava virtual mahine#

    The Common .an!ua!e Infrastruture virtual mahine at the heart of

    the 3irosoft #NET initiative#

    )pen Oirm"areallo"s plu!Ain hard"are to inlude bootAtime dia!nostis,

    onfi!uration ode, and devie drivers that "ill run on any &ind of CP#

    This tehniFue allo"s diverse omputers to run any soft"are "ritten to that speifiationH

    only the virtual mahine soft"are itself must be "ritten separately for eah type ofomputer on "hih it runs#

    Oper%tin! ,y,tem5+e-e+ -irtu%+i%tion?5

    )peratin! SystemAlevel Virtuali1ation is a server virtuali1ationtehnolo!y "hih

    virtuali1es serverson an operatin! system '&ernel- layer# It an be thou!ht of as

    partitionin!: a sin!le physial server is slied into multiple small partitions 'other"isealled virtual environments 'VE-, virtual private servers'VPS-, !uests, 1ones, et#-H eah

    suh partition loo&s and feels li&e a real server, from the point of vie" of its users#

    Oor e%ample, Solaris ones supports multiple !uest )Ses runnin! under the same )S

    'suh as Solaris 5>-# 2ll !uest )Ses have to use the same &ernel level and annot run as

    different )S versions# Solaris native ones also reFuires that the host )S be a version ofSolarisH other )Ses from other manufaturers are not supportedH ho"ever you need to use

    Solaris Dranded 1ones to use another )Ses as 1ones#

    2nother e%ample is System $or&load Partitions'$P2s-, introdued in the ID3 2I#5 operatin! system# System $P2s are soft"are partitions runnin! under one instane

    of the !lobal 2I )S environment#

    The operatin! system level arhiteture has lo" overhead that helps to ma%imi1e effiient

    use of server resoures# The virtuali1ation introdues only a ne!li!ible overhead andallo"s runnin! hundreds ofvirtual private serverson a sin!le physial server# In ontrast,

    approahes suh as full virtuali1ationandparavirtuali1ation'li&eenor3.- annot

    ahieve suh level of density, due to overhead of runnin! multiple &ernels# Orom the otherside, operatin! systemAlevel virtuali1ation does not allo" runnin! different operatin!systems 'i#e# different &ernels-, althou!h different libraries, distributions et# are possible#

    Too+,

    VM*%re

    http://en.wikipedia.org/wiki/P-code_machinehttp://en.wikipedia.org/wiki/Pascal_programming_languagehttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Java_virtual_machinehttp://en.wikipedia.org/wiki/Common_Language_Infrastructurehttp://en.wikipedia.org/wiki/.NET_Frameworkhttp://en.wikipedia.org/wiki/Open_Firmwarehttp://en.wikipedia.org/wiki/Operating_System-level_Virtualizationhttp://en.wikipedia.org/wiki/Platform_virtualizationhttp://en.wikipedia.org/wiki/Server_(computing)http://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Virtual_private_serverhttp://en.wikipedia.org/wiki/Workload_partitions#System_WPARhttp://en.wikipedia.org/wiki/Virtual_private_serverhttp://en.wikipedia.org/wiki/Full_virtualizationhttp://en.wikipedia.org/wiki/Paravirtualizationhttp://en.wikipedia.org/wiki/Xenhttp://en.wikipedia.org/wiki/User-mode_Linuxhttp://en.wikipedia.org/wiki/P-code_machinehttp://en.wikipedia.org/wiki/Pascal_programming_languagehttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Java_virtual_machinehttp://en.wikipedia.org/wiki/Common_Language_Infrastructurehttp://en.wikipedia.org/wiki/.NET_Frameworkhttp://en.wikipedia.org/wiki/Open_Firmwarehttp://en.wikipedia.org/wiki/Operating_System-level_Virtualizationhttp://en.wikipedia.org/wiki/Platform_virtualizationhttp://en.wikipedia.org/wiki/Server_(computing)http://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Virtual_private_serverhttp://en.wikipedia.org/wiki/Workload_partitions#System_WPARhttp://en.wikipedia.org/wiki/Virtual_private_serverhttp://en.wikipedia.org/wiki/Full_virtualizationhttp://en.wikipedia.org/wiki/Paravirtualizationhttp://en.wikipedia.org/wiki/Xenhttp://en.wikipedia.org/wiki/User-mode_Linux
  • 8/10/2019 Virtual Machine Seminar

    16/37

    V3"are soft"are provides a ompletely virtuali1edset of hard"are to the !uest operatin!

    system# V3"are soft"are virtuali1es the hard"are for a video adapter, a net"or& adapter, and

    hard dis& adapters# The host provides passAthrou!h drivers for !uest SD, serial, and parallel

    devies# In this "ay, V3"are virtual mahines beome hi!hly portable bet"een omputers,

    beause every host loo&s nearly idential to the !uest# In pratie, a system administrator an

    pause operations on a virtual mahine !uest, move or opy that !uest to another physial

    omputer, and there resume e%eution e%atly at the point of suspension# 2lternately, for

    enterprise servers, a feature alled V3otion allo"s the mi!ration of operational !uest virtual

    mahines bet"een similar but separate hard"are hosts sharin! the same stora!e# Eah of these

    transitions is ompletely transparent to any users on the virtual mahine at the time it is bein!

    mi!rated#

    V3"are $or&station, Server, and ES ta&e a more optimi1ed path to runnin! tar!et operatin!

    systems on the host thanemulators'suh asDohs- "hih simulate the funtion of eah CP

    instrution on the tar!et mahine oneAbyAone, or dynami reompilation"hih ompiles blo&s

    of mahineAinstrutions the first time they e%eute, and then uses the translated ode diretly

    "hen the ode runs subseFuently# '3irosoft Virtual PC for 3a )S ta&es this approah#-

    V3"are soft"are does not emulate an instrution set for different hard"are not physially

    present# This si!nifiantly boosts performane, but an ause problems "hen movin! virtual

    mahine !uests bet"een hard"are hosts usin! different instrutionAsets 'suh as found in 8A

    bitIntel and 23*CPs-, or bet"een hard"are hosts "ith a differin! number of CPs# Stoppin!

    the virtualAmahine !uest before movin! it to a different CP type !enerally auses no issues#

    V3"areLs produts use the CP to run ode diretly "henever possible 'as, for e%ample, "hen

    runnin! userAmode andvirtual

  • 8/10/2019 Virtual Machine Seminar

    17/37

    ompliated# unnin! the ode unmodified in userAmode "ill also fail, as most

    instrutions "hih Bust read the mahineAstate do not ause an e%eption and "ill betray

    the real state of the pro!ram, and ertain instrutions silently han!e behavior in userA

    mode# )ne must al"ays re"riteH performin! a simulation of the urrentpro!ram

    ounterin the ori!inal loation "hen neessary and 'notably- remappin! hard"are

    odebrea&points#

    2lthou!h V3"are virtual mahines run in userAmode, V3"are $or&station itself

    reFuires the installation of various drivers in the host operatin!Asystem, notably to

    dynamially s"ith the ?*Tand the I*Ttables#

    The V3"are produt line an also run different operatin! systems on a dualAboot system

    simultaneously by bootin! one partition natively "hile usin! the other as a !uest "ithin

    V3"are $or&station#

    VM*%re

    http://en.wikipedia.org/wiki/Program_counterhttp://en.wikipedia.org/wiki/Program_counterhttp://en.wikipedia.org/wiki/Breakpointhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Global_Descriptor_Tablehttp://en.wikipedia.org/wiki/Interrupt_Descriptor_Tablehttp://en.wikipedia.org/wiki/Program_counterhttp://en.wikipedia.org/wiki/Program_counterhttp://en.wikipedia.org/wiki/Breakpointhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Global_Descriptor_Tablehttp://en.wikipedia.org/wiki/Interrupt_Descriptor_Table
  • 8/10/2019 Virtual Machine Seminar

    18/37

    Con2i!urin! VM

  • 8/10/2019 Virtual Machine Seminar

    19/37

    (ere as you an see any property of V3 an be set li&e hard dis& apaity,net"or&

    adapter, SD drive et#

  • 8/10/2019 Virtual Machine Seminar

    20/37

    Runnin! OpenSu,e +inu3 VM in #in&o*, P

    2fter onfi!urin! V3 you Bust need to li& on /start this virtual mahine0 to start it#

    Virtu%+Bo3

  • 8/10/2019 Virtual Machine Seminar

    21/37

    )rale V3 VirtualDo% is an %

  • 8/10/2019 Virtual Machine Seminar

    22/37

    S3Psupport 'up to 76 virtual CPs-, sine version 7#>

    Teleportation 'a&a.ive 3i!ration-, sine version 7#5

    6* video aeleration, sine version 7#5

    )nly available in the full 'losed soure- version:

    emote *es&top Protool'*P- ontrol of V3 'thou!h the ?P. version an be

    run from distane usin! for e%ampleNo3ahine-

    SDsupport, "ith remote devies over *P

    Virtu%+Bo3

    http://en.wikipedia.org/wiki/Symmetric_multiprocessinghttp://en.wikipedia.org/wiki/Live_Migrationhttp://en.wikipedia.org/wiki/Remote_Desktop_Protocolhttp://en.wikipedia.org/wiki/NoMachinehttp://en.wikipedia.org/wiki/Universal_Serial_Bushttp://en.wikipedia.org/wiki/Symmetric_multiprocessinghttp://en.wikipedia.org/wiki/Live_Migrationhttp://en.wikipedia.org/wiki/Remote_Desktop_Protocolhttp://en.wikipedia.org/wiki/NoMachinehttp://en.wikipedia.org/wiki/Universal_Serial_Bus
  • 8/10/2019 Virtual Machine Seminar

    23/37

    Con2i!urin! VM

  • 8/10/2019 Virtual Machine Seminar

    24/37

    In,t%+++%tion o2 #in&o*, Vi,t% in Virtu%+Bo3

    Micro,o2t Virtu%+ PC

  • 8/10/2019 Virtual Machine Seminar

    25/37

    $indo"s Virtual PC 'formerly 3irosoft Virtual PC and Conneti% Virtual PC- is a

    virtuali1ationpro!ram for 3irosoft $indo"s operatin! systems# In uly 6>> 3irosoft

    released the $indo"sAhosted version as a free produt# In 2u!ust 6>> 3irosoft

    announed the 3aintoshAhosted version "ould not be ported to IntelAbased 3aintosh

    omputers, effetively disontinuin! the produt as Po"erPCAbased 3aintosh omputers

    are no lon!er manufatured# The ne"est release, $indo"s Virtual PC, is available only

    for $indo"s ;hosts#

    Virtual PC virtuali1es a standard PCand its assoiated hard"are# Supported $indo"s

    operatin! systems an run inside Virtual PC# )ther operatin! systems li&e .inu% may run,

    but are not offiially supported#The suessor to Virtual PC 6>>;, $indo"s Virtual PC,entered publi beta testin! on 2pril 7>, 6>>=, and "as released alon!side $indo"s

    ;# nli&e its predeessors, this version supports only $indo"s ; host operatin! systems#

    It ori!inally reFuired hard"are virtuali1ation supportbut on 3arh 5=th 6>5> 3irosoftreleased an update to 3irosoft Virtual PC "hih allo"s it to run on PCs "ithout

    (ard"are Virtualisation Tehnolo!y 'VT-#

    $indo"s Virtual PC inludes the follo"in! ne" features:

    SD support and rediretion onnet peripherals suh as flash drives and di!ital

    ameras, and print from the !uest to host )Sprinters'SD flash drives that are

    already onneted to the host an ho"ever be emulated as a net"or& drive on older

    version of the pro!ram-

    Seamless appliation publishin! and launhin! run $indo"s P

    3odeappliations diretly from the $indo"s ; des&top

    Support for multithreadin! run multiple virtual mahines onurrently, eah in

    its o"n thread for improved stability and performane

    Smart ard rediretion use smart ards onneted to the host

    Inte!ration "ith $indo"s E%plorer mana!e all V3s from a sin!le E%plorer

    folder 'QSEQRVirtual 3ahines-

    It removes the follo"in! features:

    )ffiial !uest support for le!ay operatin! systems earlier than $indo"s P

    Professional

    *ra! and drop file sharin! bet"een the !uest and the host

    http://en.wikipedia.org/wiki/Platform_virtualizationhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Windows_7http://en.wikipedia.org/wiki/IBM_PC_compatiblehttp://en.wikipedia.org/wiki/X86_virtualization#Hardware_supporthttp://en.wikipedia.org/wiki/Printer_(computing)http://en.wikipedia.org/wiki/Windows_Virtual_PC#Windows_XP_Modehttp://en.wikipedia.org/wiki/Windows_Virtual_PC#Windows_XP_Modehttp://en.wikipedia.org/wiki/Multithreading_(computer_hardware)http://en.wikipedia.org/wiki/Smart_cardhttp://en.wikipedia.org/wiki/Windows_Explorerhttp://en.wikipedia.org/wiki/Platform_virtualizationhttp://en.wikipedia.org/wiki/Microsoft_Windowshttp://en.wikipedia.org/wiki/Windows_7http://en.wikipedia.org/wiki/IBM_PC_compatiblehttp://en.wikipedia.org/wiki/X86_virtualization#Hardware_supporthttp://en.wikipedia.org/wiki/Printer_(computing)http://en.wikipedia.org/wiki/Windows_Virtual_PC#Windows_XP_Modehttp://en.wikipedia.org/wiki/Windows_Virtual_PC#Windows_XP_Modehttp://en.wikipedia.org/wiki/Multithreading_(computer_hardware)http://en.wikipedia.org/wiki/Smart_cardhttp://en.wikipedia.org/wiki/Windows_Explorer
  • 8/10/2019 Virtual Machine Seminar

    26/37

    2bility to ommit han!es automatially to the V(* "hen savin! or disardin!

    han!es Chan!es must be ommmited to the V(* manually from the settin!s dialo!# Parallel ports are no lon!er supported#

    Oloppy dis&s are not supported from the user interfae but are supported usin!

    sripts Shared folders in *)S virtual mahines no lon!er "or Support for this "as

    removed in 3irosoft Virtual PC 6>>; but "ould still "or& if you installed the VPC

    6>>8 V3 2dditions for *)S#

    Micro,o2t Virtu%+ PC

  • 8/10/2019 Virtual Machine Seminar

    27/37

    Con2i!urin! VM

  • 8/10/2019 Virtual Machine Seminar

    28/37

    Runnin! VM

  • 8/10/2019 Virtual Machine Seminar

    29/37

    Conc+u,ion

    Virtual mahines are Bust a soft"are implementation of physial omputer#

    They are no" used for :A

    A Seurity and isolation#

    A 2bility to support several operatin! systems at the same time #

    A 2bility to e%periment "ith ne" operatin! systems, or modifiations of

    e%istin! systems, "hile maintainin! ba&"ard ompatibility "ith

    e%istin! operatin! systems#

    ?enerally system V3 are used for servers and proess V3 for multiple )S support#

    Oull virtuali1ation "as used before but no"adays non native tehniFue is bein! used#

    V3"are is best amon! all soft"are available today for V3 'in onte%t for )S

    support-#

  • 8/10/2019 Virtual Machine Seminar

    30/37

    A&-%nt%!e,

    In !ener%+ c%,e?5

    Security?5

    2ppliations runnin! on a virtual mahine are more seure than those runnin!diretly on hard"are mahines#V33 ontrols ho" !uest operatin! systems use

    hard"are resouresH "hat happens in one V3 doesn4t affet any other V3: /Gby

    virtuali1in! all hard"are resoures, a V33 an prevent one V3 from evennamin! the resoures of another V3, let alone modifyin! them#0

    I,o+%tion?5

    The soft"are state of a virtual mahine isn4t dependent on the underlyin!

    hard"are# osenblum and ?arfin&el point out that this ma&es it possible to suspend and

    resume entire virtual mahines and even move them to other platforms

    Oor load balanin!

    Oor system maintenane Et#

    Ser-er,?5

    Conventionally, servers run on dediated mahines#

    Protets a!ainst another serverappliation rashin! the )S Dut G "asteful of hard"are resoures

    V33 tehnolo!y ma&es it possible to support multiple servers, eah runnin! on

    its o"n V3, on a sin!le hard"are platform#

    In c%,e o2 u,er,?5

    un multiple operatin! systems on a sin!le omputer inludin! $indo"s, .inu%

    and more#

    .et your 3a run $indo"s reatin! a virtual PCenvironment for all your

    $indo"s appliations#

    ?et enhaned support of soft"are#

    Test differentAdifferent )S "ithout any han!es to host system that is han!es are

    pretty easy to !et them reversed#

    http://www.vmware.com/products/workstation/http://www.vmware.com/products/fusion/http://www.vmware.com/products/workstation/http://www.vmware.com/products/fusion/
  • 8/10/2019 Virtual Machine Seminar

    31/37

    In c%,e o2 %n or!%ni%tion?5

    et more out o2 your e3i,tin! re,ource,: Pool ommon infrastruture resouresand brea& the le!ay /one appliation to one server0 model "ithserver

    onsolidation#

    Re&uce &%t%center co,t, y re&ucin! your p)y,ic%+ in2r%,tructure %n&

    impro-in! your ,er-er to %&min r%tio: Oe"er servers and related IT hard"are

    means redued real estate and redued po"er and oolin! reFuirements#Dettermana!ement tools let you improve your server to admin ratio so personnel

    reFuirements are redued as "ell#

    Incre%,e %-%i+%i+ity o2 )%r&*%re %n&appliationsfor improvedbusiness

    ontinuity: Seurely ba&up and mi!rate entire virtual environments "ith nointerruption in servie# Eliminate planned do"ntime and reover immediately

    from unplanned issues#

    %in oper%tion%+ 2+e3ii+ity: espond to mar&et han!es "ith dynami resoure

    mana!ement, faster server provisionin! and improved des&top and appliationdeployment#

    Impro-e &e,$top m%n%!e%i+ity %n& ,ecurity: *eploy, mana!e and

    monitor seure des&top environments that users an aess loally or remotely,

    "ith or "ithout a net"or& onnetion, on almost any standard des&top, laptop ortablet PC#

    http://www.vmware.com/solutions/consolidation/http://www.vmware.com/solutions/consolidation/http://www.vmware.com/virtualization/green-it/http://www.vmware.com/solutions/business-critical-apps/http://www.vmware.com/solutions/business-continuity/http://www.vmware.com/solutions/business-continuity/http://www.vmware.com/solutions/desktop/http://www.vmware.com/solutions/consolidation/http://www.vmware.com/solutions/consolidation/http://www.vmware.com/virtualization/green-it/http://www.vmware.com/solutions/business-critical-apps/http://www.vmware.com/solutions/business-continuity/http://www.vmware.com/solutions/business-continuity/http://www.vmware.com/solutions/desktop/
  • 8/10/2019 Virtual Machine Seminar

    32/37

    Di,%&-%nt%!e,

    In !ener%+ c%,e?5

    Virtual mahines have only one disadvanta!e that they are not fast as realhard"are#

    In c%,e o2 u,er, 2%cin!?5A Slim to no 3d support.A Setting up networking can sometimes be a pain (but is solvable).A Sound support sometimes is a problem.

    In c%,e o2 ,er-er -irtu%+i%tion or 2or %n or!%ni%tion?5

    M%!ni2ie& p)y,ic%+ 2%i+ure,

    Ima!ine you have ten important servers runnin! on one physial host and its 2I*

    ontroller runs amo&, "ipin! out all of your hard dis&s# *on4t say that this is not very

    li&ely, as "e have already had t"o or three inidents from malfuntionin! 2I*

    ontrollers from "ellA&no"n brands#

    There are several "ays to ompensate for this do"nside# )ne is lusterin!, "hih

    ertainly entails e%tra efforts# 2nother ans"er is to ba&up the virtual mahines "ith aC*P 'Continuous *ata Protetion- solution# If your physial server !oes do"n, it is

    possible to restore all V3s Fui&ly to another host# This solution implies that you have

    enou!h apaity left on another host# Thus, if your virtual infrastruture is "ell planned,

    physial failures may be less problemati# (o"ever, this means that you have to invest in

    redundant hard"are, "hih more or less eliminates one of the alle!ed advanta!es of

    server virtuali1ation#

    De!r%&e& per2orm%nce

    There is no doubt that virtuali1ation reFuires e%tra hard"are resoures# The problem isthat it is almost impossible to estimate in advane ho" many e%tra resoures "ill be

    needed# I &no" that there are apaity plannin! !uides and tools but from my e%periene

    every piee of soft"are behaves differently in a virtuali1ed environment# $e have

    appliations that are Fuite modest as lon! as they run on a physial server, but "hen they

    "ere virtuali1ed their resoure reFuirement multiplied#

    http://4sysops.com/archives/introduction-to-continuous-data-protection/http://4sysops.com/archives/introduction-to-continuous-data-protection/
  • 8/10/2019 Virtual Machine Seminar

    33/37

    You an4t do muh if you have suh appliations# In our ase, "e had no hoie but leave

    them on physial servers# (ene, the only solution to this problem is to thorou!hly test

    eah appliation "ith the virtuali1ation solution of your hoie#

    Ne* ,$i++,

    It sounds so easy install a virtuali1ation solution and then Bust deploy your servers as

    you are used to# Not really 3any thin!s are different in a virtual environment# I "ill !ive

    you Bust one e%ample# $hen "e installed our first server virtuali1ation solution, I

    instruted our administrators to test some of their servers in the virtual environment# 2fter

    a "ee& or so, an administrator told me that he ould not test his server beause there "as

    no more 23 available on the host# I "as Fuite surprised, as this server has enou!h

    apaity for 5> V3s#

    $hen I lo!!ed on, only 7 V3s "ere atually runnin!# $hat happenedU Some of his

    fello" administrators had assi!ned the same amount of 23 to the virtual servers as

    their physial servers had reFuired# It too& me Fuite some time to onvine them to

    han!e their "or&in! habits# $hen you buy a ne" physial server, it is ommon pratie

    to eFuip this server "ith as muh memory as your bud!et allo"s# This ma&es sense, as it

    ta&es time to order ne" memory modules and add them to the server# Even if you do not

    reFuire it no", you "ill most li&ely reFuire more 23 very soon#

    )f ourse, this situation is different in a virtual environment# I assi!n blame to myself, as

    "e should have disussed thin!s in advane# I should have told the administrators that

    they first need to fi!ure out ho" muh 23 their servers really need usin! a

    performane monitorin! tool# If their server reFuires more 23 later, it is not a bi! deal

    to assi!n more# I hose this simple e%ample beause it demonstrates that you have to do

    some rethin&in! "hen you "or& in a virtual environment# The fat that several

    administrators share one physial server auses problems that didn4t previously e%ist# )f

    ourse, it is also neessary to aFuire many ne" tehnial s&ills#

    Comp+e3 root c%u,e %n%+y,i,

    Virtuali1in! a server ertainly implies bi! han!es to the "hole system# 2 ne" layer of

    omple%ity is added and an ause ne" problems# (o"ever, the main diffiulty is that if

    somethin! doesn4t "or& as it is supposed to, it an reFuire onsiderable e%tra efforts to

    find the ause of the problem# I have another e%ample for this do"nside of server

    virtuali1ation#

  • 8/10/2019 Virtual Machine Seminar

    34/37

    Ne* m%n%!ement too+,

    Virtuali1ation also has advanta!es, suh as easier mi!ration, lonin! or snapshots#

    (o"ever, you an only ta&e advanta!e of these ne" apabilities if you have the proper

    tools# )ften, the tools that ome "ith a virtuali1ation solution are not enou!h, only

    supportin! basi mana!ement tas&s# This means that you need additional utilities, "hih

    ost both money and time# I am not only tal&in! about suh tools as V3"are Virtual

    Center or 3irosoft Virtual 3ahine 3ana!er 'V33-#

    2nother important field is ba&up, or more preisely, disaster reovery# )f ourse, you

    an use your urrent ba&up soft"are to seure your virtuali1ed servers# (o"ever, one of

    the advanta!es of server virtuali1ation is that disaster reovery beomes muh easier and

    faster provided you have a ba&up solution that is able to perform live ba&ups of the

    virtual mahines and not Bust of the virtuali1ed servers runnin! in these V3s#

    The problem lies in that there are no real standards "hen it omes to virtual server

    mana!ement# Dut, there are standards for server mana!ement in !eneral# Oor e%ample,

    there are many ba&up tools that allo" you to seure your $indo"s, NI and 3a

    mahines, but it is diffiult to find a disaster reovery solution that supports all the

    various virtuali1ation solutions out there# 2ll in all, this means that your 1oo of

    mana!ement tools "ill !ro", meanin! more "or& for you#

    Virtu%+ m%c)ine ,pr%*+

    Even thou!h virtual server mana!ement an !et Fuite omple%, installin! a ne" virtual

    mahine is a piee of a&e# You need a ne" serverU ust lone your master ima!e to a

    ne" V3 and you are done "ithin a fe" seonds# The problem is that the number of

    servers mi!ht !ro" faster than the number of admins "ho are supposed to mana!e them#

    It is !ood that even virtual servers have physial limits# 2s soon as you reah the limit of

    your virtual apaity, the virtual mahine spra"l "ill naturally stop#

    The number of servers in my department has !ro"n si!nifiantly sine "e started

    "or&in! "ith server virtuali1ation# 2s a matter of fat, Fuite a fe" of them e%ist only

    beause it is so easy to reate them in a virtual environment# Thus, you have to be very

    areful that you don4t "aste the resoures of virtual server hosts "ith unneeded virtual

    mahines#

  • 8/10/2019 Virtual Machine Seminar

    35/37

    App+ic%tion,

    P+%t2orm in&epen&ence?5 Virtual mahines are used for platform independene in

    many of the pro!rammin! lan!ua!es li&e ava, #NET et# Virtual mahine is dependenton mahine a byte ode is independent of mahine so ode is ompiled to byte ode and

    then that byte ode is interpreted at mahine on "hih ode has to be e%euted#

  • 8/10/2019 Virtual Machine Seminar

    36/37

    Ser-er Con,o+i&%tion?5 Virtual mahines are used for server onsolidation in "hihon a sin!le physial server many of the virtual servers are mounted usin! virtual mahinefor seurity and isolation:A

    Oper%tin! ,y,tem &eu!!in!?5 Virtual mahine are heavily used in operatin!

    system debu!!in! as "e an &eep opy of stable version runnin! and simultaneouslydebu! ne"er version#

    Streamin! 3edia Server

    VoieAoverAIP Server

    2ppliation Server

    $eb Server

    *atabase Server

    # # #

    Virtuali1ed (ost

    ?uest *omain

    5?uest *omain

    6?uest *omain

    7

    ?uest *omain8

    # # #

    onsolidation

    Host OS

    VMM

    Guest 1 Guest 2

    Hardware

  • 8/10/2019 Virtual Machine Seminar

    37/37

    Appen&i3

    )S : )peratin! system

    V3 : Virtual mahine

    MoS : Muality of servies

    V33 : Virtual mahine monitor

    IP : Internet protool

    VPS : Virtual private servers

    $P2 : $or&load partitions

    2I* : edundant array of independent dis&s

    Re2erence,

    """#"i&ipedia#or!

    vm"are#om

    www.microsoft.com/windows/ virtual-pc/

    www.virtualbox.org

    www.wisegeek.com/what-is-a- virtual- machine .htm

    www.diit.unict.it

    www.slideshare.net

    http://en.wikipedia.org/wiki/Virtual_private_serverhttp://www.wikipedia.org/http://vmware.com/http://www.microsoft.com/windows/virtual-pc/http://www.microsoft.com/windows/virtual-pc/http://www.virtualbox.org/http://www.virtualbox.org/http://www.virtualbox.org/http://www.wisegeek.com/what-is-a-virtual-machine.htmhttp://www.wisegeek.com/what-is-a-virtual-machine.htmhttp://www.diit.unict.it/http://www.slideshare.net/http://en.wikipedia.org/wiki/Virtual_private_serverhttp://www.wikipedia.org/http://vmware.com/http://www.microsoft.com/windows/virtual-pc/http://www.virtualbox.org/http://www.wisegeek.com/what-is-a-virtual-machine.htmhttp://www.diit.unict.it/http://www.slideshare.net/