51
Find out how virtualization can benefit your organization Get more from your IT investments! Virtualization Clark Scheffy A Reference for the Rest of Us! ® FREE eTips at dummies.com ® Compliments of AMD Special Edition

Virtualization

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Virtualization

Virtualization is designed to enable a generation of more energy-efficient computing. Processor, memory, and storage resources that traditionally needed to be delivered in fixed amounts determined by real hardware system configurations can now be delivered with finer granularity via virtual machines.

At its simplest level, virtualization allows you, virtually and cost-effectively, to have two or more computers, running two or more completely different environments, on one piece of hardware. For example, with virtualization, you can have both a Linux machine and a Windows machine on one system. Alternatively, you could host a Windows® 95 desktop and a Windows® XP desktop on one workstation. AMD is proud to play a pivotal role in this process.

ISBN: 978-0-470-13156-5Part Number: 42139-A

Not resaleable

Understand how virtualization works and

whether it's right for you

Find out how virtualization can

benefit your organization

Get more from your IT investments!

@� Find listings of all our books

� Choose from many different subject categories

� Sign up for eTips at etips.dummies.com

Virtualization

Clark Scheffy

A Reference for the Rest of Us!®

FREE eTips at dummies.com®

Explanations in plain English

“Get in, get out” information

Icons and other navigational aids

Top ten lists

A dash of humor and fun

Compliments of Harness ever-increasing

levels of computer performance!

Create a dynamic data center

Improve security

Allocate memory where it's needed

Improve scalability

Save energy, time, and money

AMD Special Edition

Page 2: Virtualization

01_131565 ffirs.qxp 12/29/06 9:38 PM Page iv

Page 3: Virtualization

by Clark Scheffy

VirtualizationFOR

DUMmIES‰

AMD SPECIAL EDITION

01_131565 ffirs.qxp 12/29/06 9:38 PM Page i

Page 4: Virtualization

Virtualization For Dummies,® AMD Special EditionPublished byWiley Publishing, Inc.111 River StreetHoboken, NJ 07030-5774

www.wiley.com

Copyright © 2007 by Wiley Publishing, Inc., Indianapolis, Indiana

Published by Wiley Publishing, Inc., Indianapolis, Indiana

No part of this publication may be reproduced, stored in a retrieval system or transmitted in any formor by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except aspermitted under Sections 107 or 108 of the 1976 United States Copyright Act, without the prior writtenpermission of the Publisher. Requests to the Publisher for permission should be addressed to theLegal Department, Wiley Publishing, Inc., 10475 Crosspoint Blvd., Indianapolis, IN 46256, (317)572-3447, fax (317) 572-4355, or online at http://www.wiley.com/go/permissions.

Trademarks: Wiley, the Wiley Publishing logo, For Dummies, the Dummies Man logo, A Reference forthe Rest of Us!, The Dummies Way, Dummies Daily, The Fun and Easy Way, Dummies.com, and relatedtrade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates inthe United States and other countries, and may not be used without written permission. AMD, theAMD logo, AMD Virtualization,™ AMD-V,™ AMD Athlon,™ AMD Opteron,™ and AMD Turion,™ are trademarksor registered trademarks of AMD. All other trademarks are the property of their respective owners.Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book.

LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKENO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COMPLETE-NESS OF THE CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WARRANTIES,INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE.NO WARRANTY MAY BE CREATED OR EXTENDED BY SALES OR PROMOTIONAL MATERIALS.THE ADVICE AND STRATEGIES CONTAINED HEREIN MAY NOT BE SUITABLE FOR EVERY SITU-ATION. THIS WORK IS SOLD WITH THE UNDERSTANDING THAT THE PUBLISHER IS NOTENGAGED IN RENDERING LEGAL, ACCOUNTING, OR OTHER PROFESSIONAL SERVICES. IF PRO-FESSIONAL ASSISTANCE IS REQUIRED, THE SERVICES OF A COMPETENT PROFESSIONALPERSON SHOULD BE SOUGHT. NEITHER THE PUBLISHER NOR THE AUTHOR SHALL BE LIABLEFOR DAMAGES ARISING HEREFROM. THE FACT THAT AN ORGANIZATION OR WEBSITE ISREFERRED TO IN THIS WORK AS A CITATION AND/OR A POTENTIAL SOURCE OF FURTHERINFORMATION DOES NOT MEAN THAT THE AUTHOR OR THE PUBLISHER ENDORSES THEINFORMATION THE ORGANIZATION OR WEBSITE MAY PROVIDE OR RECOMMENDATIONS ITMAY MAKE. FURTHER, READERS SHOULD BE AWARE THAT INTERNET WEBSITES LISTED INTHIS WORK MAY HAVE CHANGED OR DISAPPEARED BETWEEN WHEN THIS WORK WAS WRIT-TEN AND WHEN IT IS READ.

For general information on our other products and services, please contact our Customer CareDepartment within the U.S. at 800-762-2974, outside the U.S. at 317-572-3993, or fax 317-572-4002.

For technical support, please visit www.wiley.com/techsupport.

Wiley also publishes its books in a variety of electronic formats. Some content that appears in printmay not be available in electronic books.

ISBN: 978-0-470-13156-5

Manufactured in the United States of America

10 9 8 7 6 5 4

01_131565 ffirs_4.qxp 8/13/07 11:07 AM Page ii

Page 5: Virtualization

Publisher’s AcknowledgmentsWe’re proud of this book; please send us your comments through our online registrationform located at www.dummies.com/register/. For information about a custom ForDummies book for your business or organization, contact BrandedRights&[email protected].

Some of the people who helped bring this book to market include the following:

Acquisitions, Editorial, andMedia Development

Project Editor: Jennifer Bingham

Business Development Representative:Karen Hattan

Editorial Manager: Rev Mengle

Media Development Manager:Laura VanWinkle

Composition Services

Project Coordinator: Kristie Rees

Layout and Graphics: Brooke Graczyk,Denny Hager, Stephanie D. Jumper,Erin Zeltner

Proofreaders: Susan Moritz, Dwight Ramsey

Wiley Bicentennial Logo:Richard J. Pacifico

AMD Liaison: Adam Black

Publishing and Editorial for Technology Dummies

Richard Swadley, Vice President and Executive Group Publisher

Andy Cummings, Vice President and Publisher

Mary Bednarek, Executive Acquisitions Director

Mary C. Corder, Editorial Director

Publishing for Consumer Dummies

Diane Graves Steele, Vice President and Publisher

Joyce Pepple, Acquisitions Director

Composition Services

Gerry Fahey, Vice President of Production Services

Debbie Stailey, Director of Composition Services

01_131565 ffirs.qxp 12/29/06 9:38 PM Page iii

Page 6: Virtualization

01_131565 ffirs.qxp 12/29/06 9:38 PM Page iv

Page 7: Virtualization

Table of ContentsIntroduction .......................................................1

About This Book .........................................................................2About AMD...................................................................................2Foolish Assumptions ..................................................................3How This Book Is Organized......................................................3

Chapter 1: The Roots of Virtualization ..........................4Chapter 2: Making Better Use of Your Systems

with Virtualization ........................................................4Chapter 3: Understanding Three Approaches

to Virtualization ............................................................4Chapter 4: Living in the Virtualization Ecosystem .......4Chapter 5: Ten Great Reasons to Invest in

Virtualization Hardware...............................................5Icons Used in This Book.............................................................5

Chapter 1: The Roots of Virtualization. . . . . . . . . . . . . . . . 7Coming Up with the Concept ....................................................8Virtualizing Memory...................................................................9

Allocating memory the old way....................................10A better way of allocating memory .............................10Completing the solution ...............................................12

Chapter 2: Making Better Use of Your Systems with Virtualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

What Does Virtualization Deliver?..........................................13Who Needs Virtualization Technology? .................................14

Addressing low utilization ............................................14Enabling the dynamic data center................................15Working to avoid risk .....................................................16Other cool benefits.........................................................17

Streamlining Application Development .................................18Migrating More Effectively.......................................................18Creating Virtual Desktop Environments ................................19Providing Better Security.........................................................19

On the client side............................................................19On the server side ..........................................................20

02_131565 ftoc_4.qxp 8/13/07 2:08 PM Page v

Page 8: Virtualization

Chapter 3: Understanding Three Approaches to Virtualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

What the Approaches Share....................................................22Approach 1: Full Virtualization ...............................................22

The good news................................................................22The bad news ..................................................................23

Approach 2: Paravirtualization ..............................................23The good news................................................................24The bad news ..................................................................24

Approach 3: Hardware-Assisted Virtualization.....................25The good news................................................................26The bad news ..................................................................27

Chapter 4: Living in the Virtualization Ecosystem . . . . 29Benefiting from a Functioning Ecosystem .............................29Where Things Are Going ..........................................................30AMD’s Real Roadmap for Virtual Technology .......................31

AMD: Enhancing software-based virtualization..........32Getting outstanding performance with hardware

virtualization ...............................................................32Going further with I/O virtualization technology ......33Not stopping yet .............................................................34

The Future Virtually at Your Fingers ......................................35

Chapter 5: Ten Great Reasons to Invest in Virtualization Hardware . . . . . . . . . . . . . . . . . . . . . . 37

Create a Dynamic Data Center ................................................37Help Ease Power Consumption and Stay Cool ......................38Provide Better Security ............................................................39Run Legacy Software on Non-Legacy Hardware....................40Develop and Test New Stuff Easily..........................................40Run Multiple Operating Systems on the Same Hardware....41Improve Scalability ...................................................................41Enhance Your Hardware Utilization........................................41Create a Manageable Upgrade Path........................................42Manage Outages (Expected and Unexpected)

Dynamically ...........................................................................42

Virtualization For Dummies, AMD Special Edition vi

02_131565 ftoc_4.qxp 8/13/07 2:08 PM Page vi

Page 9: Virtualization

Introduction

Virtualization is a technical innovation designed toincrease the level of system abstraction and enable

IT users to harness ever-increasing levels of computer performance.

At its simplest level, virtualization allows you, virtually andcost-effectively, to have two or more virtual computing environ-ments, running different operating systems and applications on one piece of hardware. For example, with virtualization, you can have both a Linux virtual machine and a MicrosoftWindows virtual machine on one system. Alternatively, youcould host a Microsoft Windows 95 desktop and a MicrosoftWindows XP desktop on one workstation.

In slightly more technical terms, virtualization essentiallydecouples users, operating systems, and applications from thespecific hardware characteristics of the systems they use toperform computational tasks. This technology promises tousher in an entirely new wave of hardware and software innova-tion. For example, and among other benefits, virtualization isdesigned to simplify system upgrades (and in some cases mayeliminate the need for such upgrades), by allowing users tocapture the state of a virtual machine (VM) and then transportthat state in its entirety from an old to a new host system.

Virtualization is also designed to enable a generation of moreenergy-efficient computing. Processor, memory, and storageresources that today must be delivered in fixed amountsdetermined by real hardware system configurations will bedelivered with finer granularity via dynamically tuned VMs.

Already, the combination of software-based virtualizationand AMD’s hardware-based virtualization technology, AMD Virtualization™ (AMD-V™), allows users to deploy com-puting resources in agile, efficient, and cost-effective ways.AMD is proud to play a pivotal role in this process andthereby help its customers extract ever-increasing valuefrom their IT investments.

03_131565 intro.qxp 12/29/06 9:38 PM Page 1

Page 10: Virtualization

Virtualization For Dummies, AMD Special Edition 2

About This BookVirtualization For Dummies, AMD Special Edition explains howvirtualization works, how it can benefit your organization, andhow the latest instruction set of the x86 architecture is engi-neered to better integrate computing hardware with virtual-ization software and therefore make virtualization faster andmore reliable.

The book covers the kinds of issues virtualization can addressand how it addresses them. In particular, I cover the featuresAMD added starting with DDR2-based AMD Opteron™ proces-sors, AMD Athlon™ 64 processors, and AMD Turion™ 64 X2 dual-core mobile technology to make AMD Virtualization an industryleader. I also look at how AMD’s ecosystem partners are adapt-ing their software to take advantage of these new virtualizationextensions. Finally, I delve into the future of virtualization tech-nology and assess the impact it’s likely to have on the industryin years to come.

The contents of this custom book were provided by and pub-lished specifically for AMD.

About AMDAdvanced Micro Devices (NYSE: AMD) is a leading globalprovider of innovative processing solutions in the computing,graphics, and consumer electronics markets. AMD is dedi-cated to driving open innovation, choice, and industry growthby delivering superior customer-centric solutions thatempower consumers and businesses worldwide.

Introduced in 2007, the Quad-Core AMD Opteron processorrepresents the world’s first “native” quad-core CPU, featuringfour processing cores on a single die. This advancementallows Quad-Core AMD Opteron processors to operate at theexact same thermal and electrical limits as Second-GenerationAMD Opteron processors, so they fit seamlessly into existingsystems and customer IT environments.

The first-generation AMD Opteron processor made history asthe industry’s first x86-based processor to deliver both 32- and64-bit computing and was the first x86 processor to demon-strate and launch native multi-core solutions for the server and

03_131565 intro_4.qxp 8/14/07 3:04 PM Page 2

Page 11: Virtualization

workstation markets. AMD Opteron processors deliver excep-tional performance and performance-per-watt because they’rebuilt on AMD64 technology with Direct Connect Architecture.AMD’s latest CPU, the Quad-Core AMD Opteron processor, isdesigned to work with existing systems and includes RapidVirtualization Indexing technology to enable customers to extract even more performance and value from their ITinvestments.

The AMD64 platform is the gold standard for 64-bit comput-ing. AMD64’s Direct Connect Architecture evolves industrystandards to deliver breakthrough performance on single-and multi-core processors, reducing bottlenecks inherent intraditional front-side bus architectures.

Since introducing the AMD64 instruction set and architecturein 2003, AMD has worked continuously with partners anddevelopers to ensure the 64-bit platforms harness the powerof AMD64 technology. A broad range of software vendors,including IBM, Microsoft, Novell, Oracle, Red Hat, SAP, Sun,and VMware offer software optimized for AMD64 technologythat is designed to enhance performance and efficiency.

Foolish AssumptionsAll authors make assumptions as they write their books. AsI wrote this, a few things I assumed about you included thefollowing:

� You’re an IT decision maker

� You may be the executive officer of a company

� You’re already familiar with computer “lingo”

How This Book Is OrganizedLike all books in the For Dummies series, this one is arrangedfor your comfort and convenience.

This book is here to guide you through the basics of virtual-ization. I’ve divided the info up into different chapters.

Introduction 3

03_131565 intro_4.qxp 8/14/07 3:04 PM Page 3

Page 12: Virtualization

Chapter 1: The Roots of VirtualizationThis chapter shows the impulses from which virtualizationfirst arose and takes you on a trip down (the virtual) memorylane.

Chapter 2: Making Better Use ofYour Systems with VirtualizationThis chapter introduces you to the basics of virtualizationand shows you how we got where we are today. It goes oversome of the main benefits of virtualization, including the abil-ity to streamline operations by using fewer machines. It alsoshows how the risks once associated with virtualization arebeing eliminated by hardware designed to support virtualiza-tion software.

Chapter 3: Understanding ThreeApproaches to Virtualization In this chapter I go over the three different ways you can usevirtualization technology in your organization:

� Software, or full, virtualization

� Para-virtualization

� Hardware-assisted virtualization

Chapter 4: Living in theVirtualization EcosystemThis chapter introduces you to possibilities and shows youhow AMD is helping make them real. However, as with anyhardware, without software to run on it, it’s not much use —that’s where the ecosystem comes in. In addition to showingyou where AMD is going, I show you how the ecosystem ofpartners is driving virtualization forward.

Virtualization For Dummies, AMD Special Edition 4

03_131565 intro_4.qxp 8/13/07 11:23 AM Page 4

Page 13: Virtualization

Chapter 5: Ten Great Reasons toInvest in Virtualization HardwareThere are so many things to do with virtualization, but I lim-ited myself to only the top ten.

Icons Used in This BookIn the margins of this book, you find several helpful little iconsthat can make your journey a little easier:

This icon flags information that you should pay attention to.

This icon lets you know that the accompanying text explainssome technical information in detail. You don’t need to knowthis stuff to get what you need from the book, but it may beinteresting.

A Tip icon lets you know some practical information that canreally help you out is on the way. These tips can help save youtime, effort, or money.

Introduction 5

03_131565 intro_4.qxp 8/13/07 11:24 AM Page 5

Page 14: Virtualization

Virtualization For Dummies, AMD Special Edition 6

03_131565 intro.qxp 12/29/06 9:38 PM Page 6

Page 15: Virtualization

Chapter 1

The Roots of VirtualizationIn This Chapter� Exploring virtualization

� Solving the memory virtualization challenge

Technological evolution both drives, and is driven by, ever-increasing levels of abstraction in hardware and software

architectures. High-level programming languages like Fortran,COBOL, BASIC, C, and Java have allowed programmers toimplement software without having to pay too much attentionto the operating systems on which it will run. One job of oper-ating systems is to provide the abstractions that free pro-grams from the complex and varied details needed to managememory and input/output (I/O) devices.

Contemporary application software, swaddled within layers ofmiddleware and dynamic linked libraries (DLLs), must workovertime to determine the physical characteristics of thehardware on which it runs.

Although application packages and middleware have becomeblissfully unaware of the details and configuration of specifichardware implementations, the operating systems that pro-vide this isolation must be totally cognizant of the hardwareon which they reside. Details like MAC and IP addresses, SANLUN assignments, physical memory configurations, processorcounts, and system serial numbers become enmeshed withinthe OS state at the time of system installation.

04_131565 ch01.qxp 12/29/06 9:39 PM Page 7

Page 16: Virtualization

Virtualization For Dummies, AMD Special Edition 8This stateful information locks the OS to the specific hardwareon which it was installed and complicates hardware fault recov-ery, system upgrades, and application consolidation. Of course,the hardware and software architects who created the abstractenvironments in which today’s software and middleware pack-ages reside were not about to let a few annoying details likestateful information stand in their way.

Coming Up with the ConceptHardware and software architects realized that if they couldabstract the hardware as seen by the operating system, thenthey could finesse the software’s view of the physical configu-ration on which it was installed. This approach is kind of likethe “black box” model — the software doesn’t really need toknow what’s going on inside the black box as long as computa-tions sent into the box come back out with the correct results.The architects called their approach virtualization, and it turnsout to be more convoluted than you might imagine.

Complexity arises because an operating system likes to thinkit owns the hardware on which it runs. More than that, anoperating system doesn’t like to be fooled. This challenge ismade more difficult still, given that the x86 architecture(which does not lend itself readily to the creation of virtual-ized environments) came into existence before notions of vir-tualization became common currency in mainstreamcomputing.

However, like many technology hurdles of the past, the ENIACamong them (see sidebar “The ENIAC”), virtualization is nowcommonplace and, thanks to the latest processors from AMD,better supported by hardware than ever before. Virtualizationoffers real benefits in the flexibility, power management, andscalability of your IT environment. In the rest of this book, Isurvey the kinds of problems virtualization can address andhow it addresses them.

04_131565 ch01.qxp 12/29/06 9:39 PM Page 8

Page 17: Virtualization

Virtualizing MemoryLong before computer scientists came up with the notion ofvirtualizing an entire system, architects had already inventedtechniques to virtualize memory management. The Atlas com-puter at the University of Manchester was the first systemto incorporate virtual memory technology. Virtual memorytechnology lets a system with a limited amount of physicalmemory look much larger to application software. To createthis illusion, the OS stores the full memory image of the appli-cation and its data on the system’s hard drive, and transfersrequired pieces of this image into the system’s DRAM memoryas the program executes.

To translate the virtual addresses seen by each applicationinto physical DRAM memory addresses, the system relies ona map (known as a page table) that contains references linkingchunks of virtual memory to real memory. Contemporary x86processors include hardware features known as translationlook-aside buffers (TLBs) that cache the translation referencesfor recently accessed chunks of memory, thus speeding up the

Chapter 1: The Roots of Virtualization 9

The ENIACJust 60 years ago, scientists poweredup the ENIAC (Electronic NumericalIntegrator and Computer), generallyregarded as the first electronic com-puter. Prior to that, the term “com-puter” often referred to someonewho computed — that is, someonewho crunched numbers all day. TheENIAC was the first effort to performthose tasks electronically.

The ENIAC’s clock ran at 5 kilohertz,and the system’s 17,468 vacuum tubesconsumed over 150 kilowatts of power.The ENIAC’s software environmentwas primitive by today’s standards.Programs consisted of sequences ofregister settings, entered via dials on

control panels and small modificationsto the internal circuits, implementedlike the connections in operator-assisted telephone switchboards.

The information technology industryhas come a long way in the 60 yearssince the ENIAC’s vacuum tubes firstglowed to life. First, the transistor andlater, the integrated circuit enabled thecreation of inexpensive microproces-sors containing hundreds of millions oftransistors, running at multigigahertzfrequencies, and consuming less than100 watts. Virtualization of hardwareand advances in software technologyhave enabled the productive deploy-ment of these powerful systems.

04_131565 ch01_4.qxp 8/13/07 11:41 AM Page 9

Page 18: Virtualization

process. TLBs play a role in almost all memory references, sothe manner in which they perform their translations can play asignificant role in determining overall system performance.

Architects soon learned that TLB design can seriously impactmultitasking systems operations. Most tasks in such systemshave unique page tables. This forces the operating system toreset (or, more colorfully, “flush”) the TLB each time it switchesfrom one task to another. Then, as the new task executes, itspage table entries fill up the TLB, at least until the next taskswitch. This constant flushing and reloading can really eat intoperformance, especially if each task runs for only a few millisec-onds before the next switch.

To mitigate the impact of task switching, architects added atask ID field to each TLB entry. This allows the system toretain the mapping information of multiple tasks in the TLBwhile switching between tasks, because it only uses theentries for the task actually executing at any point. This inturn eliminates the need for performance-inhibiting TLBflushes. At least until virtualization entered the scene.

Allocating memory the old wayBecause the guest OS running on a virtual machine (VM) isunaware of other guests, it can only assign unique task IDswithin its own environment. Thus, multiple VMs can have taskswith the same ID, confusing the TLB and making a real mess.There’s a simple solution to this problem — the hypervisormerely flushes the TLB every time it switches from one VM toanother. This forces the tasks executing in the next VM toreload the TLB with their own page table entries. Unfortunately,this approach seriously impacts virtual system performance,giving architects everywhere déjà vu.

A better way of allocatingmemory AMD’s architects had a better idea. They merely added a new,VM-specific tag called an address space identifier (ASID) to theTLBs in their AMD Virtualization™ equipped processors. Thisconcept is known as a tagged translation look-aside buffer, ortagged TLB.

Virtualization For Dummies, AMD Special Edition 10

04_131565 ch01_4.qxp 8/14/07 3:19 PM Page 10

Page 19: Virtualization

Each VM has a unique ASID value, known only to the hypervi-sor and the TLB hardware. The ASID is invisible to the guestOS, thus eliminating the need to modify the guest, preservingthe virtual illusion and avoiding any performance degrada-tion. Figure 1-1 illustrates the tagged TLB concept. Figure 1-2shows how competing processors handle memory in a virtual-ized environment.

Figure 1-1: Tagged translation look-aside buffer.

Figure 1-2: The non-AMD-based virtual machine’s memory (shown on theright side of Figure 1-1) must be flushed every switch, whichcan slow performance.

Solving one problem . . . creatinganotherAlthough tagging the TLB allows a system to support multipleVMs without the need to flush the TLB when switchingbetween tasks, it doesn’t solve one sticky problem with man-aging virtualized memory. Remember, we’re trying to fool theOS into thinking that it’s in control of a real system, when inactuality all we’ve done is provide it access to a virtualizedsystem with virtualized physical memory (also known as

VM 4

Fill Flush

VM 6 VM 4

Fill Flush Fill Flush

VM 1 runs on the CPU andloads additional data frommemory

As VM 3 takes control andloads its data, other TLBdata remains

So when VM 1 takes controlback the data it needs isthere … resulting in better performance

VM 1 VM 2

AMD Non-AMD

VM 3

VM 1

VM 3

VM 1

VM 4 VM 5 VM 6

Hypervisor (VMM)Hypervisor (VMM)

HT 3

HT 1

HT 2

AMD Opteron™Tagged TLBCache lines

Mem

oryController

Legacy x86ArchitectureUn-Tagged TLB

Cache linesFront-side Bus

Chapter 1: The Roots of Virtualization 11

04_131565 ch01_4.qxp 8/14/07 3:19 PM Page 11

Page 20: Virtualization

Guest physical memory). We still need to map from that Guestphysical memory to the actual physical memory plugged intothe system (also called Host physical memory). The way wedo this in many cases is with a technique called Shadow PageTables.

Without going into too many techie details, Shadow PageTables are what connect Virtual Machines (VMs) to the actualhardware from a memory standpoint. The TLB translates vir-tual memory to Guest physical memory (which is still virtual),Shadow Page Tables translate Guest physical memory to Hostphysical memory. Although this process may sound fairlystraightforward, there’s a whole bunch of complex softwarerequired to manage all of this — and that extra managementcan have the negative side effect of slowing down virtualizedapplications. So what do smart CPU engineers do when theycome across a complex software problem? They try to solvethat problem quicker and more efficiently in hardware.

Completing the solutionIf you recall back from earlier in the chapter, CPU architectscreated a TLB to store page tables, which are maps that trans-late from virtual to physical memory. Modern CPU architects,being the smart people they are, have developed somethingcalled Virtualized Page Tables that translates all the way fromvirtual memory to Guest physical memory to Host physicalmemory. But unlike Shadow Page Tables, which perform thesame function in software, Virtualized Page Tables are builtdirectly into the CPU. Not stopping there, modern CPU archi-tects also created a guest TLB, which is where theseVirtualized Page Table translations are stored.

The best part of all of this memory-management hocus pocusis that virtualized applications can now run with about thesame performance and responsiveness as non-virtualizedapplications. And because of that enhancement, businesseswill be able to virtualize more of their IT infrastructure andenjoy all the benefits that entails (see Chapter 5 for a benefitssummary).

Virtualization For Dummies, AMD Special Edition 12

04_131565 ch01_4.qxp 8/15/07 8:55 AM Page 12

Page 21: Virtualization

Chapter 2

Making Better Use of YourSystems with VirtualizationIn This Chapter� Determining if virtualization fits in your IT infrastructure

� Understanding the benefits

� Improving security

� Looking at where we are now

� Allocating memory where it’s needed

Simply conceived, virtualization is a way to run multipleoperating systems on a single machine — whether the

virtual machines (VMs) are different operating systems alto-gether, versions of the same operating system to be tested, orwhatever other configurations you care to imagine.

Think of the VM as the basic unit of a new way to manageyour IT environment.

What Does VirtualizationDeliver?

Among other things, virtualization allows you to:

� Consolidate workloads to reduce hardware, power, andspace requirements.

� Run multiple operating systems simultaneously — as anenterprise upgrade path, or to leverage the advantages of

05_131565 ch02.qxp 1/2/07 5:59 PM Page 13

Page 22: Virtualization

Virtualization For Dummies, AMD Special Edition 14specific operating systems, or for whatever reason youcan imagine.

� Run legacy software on newer, more reliable, and morepower-efficient hardware.

� Dynamically migrate workloads to provide fault tolerance.

� Provide redundancy to support disaster recovery.

In the rest of this chapter, I help you understand these andother benefits of creating and employing virtualized environ-ments, as well as how the risks that used to be associatedwith virtualization are being eliminated by hardware thatbetter supports virtualization software.

Who Needs VirtualizationTechnology?

If you use, support, or make decisions about computer sys-tems, you stand to benefit from the emergence of advancedvirtualization technology. Virtualization technology enhancesthe agility and efficiency of server and client systems alike.

Addressing low utilization The x86-based server market grew exponentially over the pastdecade, driven largely by a philosophy of “one application,one server.” This approach filled data centers with rack afterrack of underutilized systems, many operating at less than 15percent of capacity, but consuming power and generating heaton a 24/7 basis.

Even with low utilization rates, IT managers often need to ded-icate three separate systems to each application:

� One to run the application

� One to back up the first system in the event of a hard-ware failure

� One to serve as a development platform for ongoingdevelopment and problem analysis

05_131565 ch02_4.qxp 8/14/07 3:48 PM Page 14

Page 23: Virtualization

These systems typically operate under a variety of currentand legacy OS environments, including Microsoft WindowsVista, Microsoft Windows NT, Microsoft Windows Server 2000,Microsoft Windows Server 2003, Solaris, UNIX, and Linux.

Most IT managers would love to consolidate disparate work-loads onto a smaller number of hardware systems, but areunderstandably wary of the software problems that can arisewhen they make several independent applications share asingle instance of an operating system.

Virtualization provides a mechanism to consolidate applica-tions, along with existing OS, middleware, and communica-tions environments, on a single shared system.

Enabling the dynamic data centerVirtualization takes the physical boundaries of your serversand makes them logical boundaries, based on resourcesneeded. Sure, you can still have special function servers, butyou can make them the size they need to be and allocate theresources they don’t need to meet other demands in yourdata center.

When you virtualize your servers, you can move VMs amongphysical machines and dynamically reconfigure your datacenter as your needs change. In a virtualized environment,your resources are allocated based on workload or mainte-nance schedules, not on the room or rack in which they’reinstalled. Figure 2-1 illustrates this concept.

When running a VM, each workload continues to see a com-puting environment that corresponds exactly to the physicalenvironment of its earlier dedicated system, eliminating theneed to change the OS or communications parameters. As faras the OS is concerned, it just sees hardware that it knowshow to work with — computations go in and expected resultscome back out.

The savings in your hardware, power, and cooling investmentcome from the fact that these VMs stand ready to respond toexternal requests, but consume almost no extra machineresources or power in the absence of such requests — a far

Chapter 2: Making Better Use of Your Systems with Virtualization 15

05_131565 ch02_4.qxp 8/15/07 9:57 AM Page 15

Page 24: Virtualization

cry from the resources consumed in “real,” or nonvirtual,deployments.

Figure 2-1: Enabling the dynamic data center.

Working to avoid riskUntil 2006, virtualization on x86-based computers was largelysoftware-based, and benefits often came at the expense ofcomplexity (of the virtualization software itself) and poor per-formance (due to the overhead of extra software).

AMD has led the industry in attempting to maximize the bene-fits of virtualization while minimizing its drawbacks. The firstexample of this was the introduction of DDR2-based AMDOpteron™ processors, AMD Athlon™ 64 processors, and AMDTurion™ 64 X2 dual-core mobile processors in 2006, all ofwhich include AMD Virtualization™ (AMD-V™) technology,which provides hardware enhancements designed to helpreduce the complexity and overhead of virtualization soft-ware. Now in 2007, AMD introduced Quad-Core AMD Opteronprocessors with even greater benefits for virtualization cus-tomers. Quad-Core AMD Opteron processors support anadvanced form of AMD-V that includes Rapid Virtualization

VirtualMachine

VirtualMachine

VirtualMachine

VirtualMachine

VirtualMachine

VirtualMachine

Application

VirtualMachine

Breaks “oneapplication perserver” model

Move Virtual Machinesbased on workload ormaintenance schedules

Virtualization For Dummies, AMD Special Edition 16

05_131565 ch02_4.qxp 8/14/07 3:48 PM Page 16

Page 25: Virtualization

Indexing. This technology is designed to significantly improvethe performance of virtualized applications by allowing fullmemory management in hardware (using Virtualized PageTables and a guest TLB as described in Chapter 1).

Operating system and virtualization infrastructure vendorslike Microsoft, Novell, Red Hat, Sun, Virtual Iron, VMware, andXenSource have either incorporated support for AMDVirtualization™ technology, or are rushing to do so in theirsoftware releases.

AMD terms the group of companies collaborating to supportvirtualization the virtualization ecosystem. Chapter 3 offersmore detail on who’s doing what and when.

Other cool benefitsIn addition to consolidating existing workloads, virtualizationalso facilitates the introduction of new applications in the datacenter. After IT gets the go-ahead on a new project, develop-ment can begin immediately on brand-new VMs added to anexisting physical server. Virtualization essentially allows theenterprise to base its hardware acquisition plans on aggregatedemand, rather than the vagaries of any given program.

Although not strictly the domain of virtualization technologyper se, most virtualized software environments include utilitiesthat facilitate operational tasks such as the provisioning ofnew virtual servers, the allocation (and reallocation) of virtualresources, and the assignment of VMs to physical systems.These utilities simplify the scheduling of planned hardwareoutages as well as the recovery from unplanned outages bymigrating virtual machines from one physical server to anotherwithout incurring any service interruption.

This capability is often referred to as live migration. With livemigration, a virtual machine moves instantaneously from oneserver to another, presenting a seamless experience to the enduser and maintaining availability guarantees. However, if theprocessors running in the computers in the pre- and post-migration environment aren’t alike, live migration can result inunexpected behavior of the guest software. Since the introduc-tion of its AMD64 technology in 2003, AMD has worked closelywith virtualization software developers to define the functional-ity necessary to ensure that live migration is possible across abroad range of AMD64-based processors.

Chapter 2: Making Better Use of Your Systems with Virtualization 17

05_131565 ch02_4.qxp 8/14/07 3:48 PM Page 17

Page 26: Virtualization

Today, customers can migrate 32-bit virtual machines fromolder single-core AMD Opteron processor-based platforms todual-core AMD Opteron processor-based platforms without anyinterruption in service to their customers. And through thehelp of AMD’s ecosystem partners, a plan is in place to enablelive migration between dual-core and Quad-Core AMD Opteronprocessor-based systems.

Accommodating planned outagesTo accommodate planned outages, IT management can relo-cate the VMs running on a particular hardware configurationto an alternate system, allowing the original hardware to betaken offline for service. With live migration tools availablefrom many of the leading virtualization vendors this reloca-tion can take place with no service disruption to the end user.

Accommodating unplanned outagesFor unplanned outages, the system operator can reinitiate therelevant VMs on a different virtualized system until the failedsystem can be restored to service. In addition, some virtual-ization offerings, when used in conjunction with other systemmanagement applications, can allow a system administratorto identify a pending hardware outage (unplanned) and uselive migration tools and migrate virtual machines off the emi-nently failing system and onto a stable system. In this case,even though the outage is unplanned, there will be little if anydisruption to the end user.

Streamlining ApplicationDevelopment

Virtualization is also changing the way software developerswork. Developers must often adapt their code to run in a widevariety of operating environments, and then test it in the rele-vant environments. To accomplish this, they would often dedi-cate specific developer machines to different versions ofMicrosoft Windows, Solaris, and Linux. When pursuing soft-ware anomalies, they would find the machine with theOS environment on which the bug had been observed, andattempt to come up with a correction. Of course, if the partic-ular system with the required environment had not been usedfor a while, there was no assurance it would be in good work-ing order when needed.

Virtualization For Dummies, AMD Special Edition 18

05_131565 ch02_4.qxp 8/14/07 3:48 PM Page 18

Page 27: Virtualization

Virtualization lets development organizations maintain a bat-tery of VMs corresponding to all the specific hardware andsoftware environments on which they design software to run.Then, if and when they need to address a software anomaly,they load the proper virtual machine, and they’re ready topursue the problematic code.

This holds true for more than just software developers. ManyIT departments support multiple applications on diverse plat-forms. With help from virtualization, it is possible for a singleserver to do the work of multiple severs. If, for example, ITneeds to test new application functionality or upgrades acrossa wide range of systems, virtual environments can save hard-ware, space, and other resources.

Through virtualization, literally thousands of virtual machinescan be archived, allowing you to quickly test any applicationrevision in any environment you need, rather than having torebuild a specific set of software parameters manually.

Migrating More EffectivelyVirtualization greatly eases the task of application migrationto new versions of operating systems for both client andserver applications. IT can install multiple VMs, each runningdifferent versions of the OS, and migrate specific applicationsto the “new and improved” OS at a pace convenient to every-body rather than on the all-or-nothing basis that has charac-terized software transitions in the past. Virtualization mayeven alter the way organizations deploy desktop technology.

Creating Virtual DesktopEnvironments

Virtualization is not limited to the server. The evolving con-cept of a virtualized desktop is evidenced by the recentlyformed Virtual Desktop Infrastructure Alliance that helps ITadministrators create and manage “desktop virtual machines”on servers within data centers. End-users may access thesedesktop environments at any time and from any place, usingthin client devices (or thin client access utilities on more fullyconfigured systems). Even old, underpowered systems can use

Chapter 2: Making Better Use of Your Systems with Virtualization 19

05_131565 ch02_4.qxp 8/14/07 3:48 PM Page 19

Page 28: Virtualization

the Remote Desktop Protocol (RDP) to access more powerfulvirtual PC desktops loaded with up-to-date software versions.

This approach to client deployment can lower supportexpenses, as well as hardware acquisition costs, becausethe virtual PCs reside on centralized servers in a managedIT environment, eliminating the need to visit the client’sactual desktop system for most maintenance activities.

Providing Better SecurityLast, but far from least, virtualization will play an ever-increasing role in creating more secure and robust IT environments.

On the client sideIn client environments for example, IT might install two virtualmachines on one client system: one that handles sensitivecorporate data, and a second for less secure end-user tasks.It could block the first VM from downloading unauthorizedapplications, screen savers, and other security threats, whileallowing the second VM access to less secure downloads andmaterial. It is important to note that, in this scenario, there isno way for access to “spill over” from one virtual machine tothe other.

On the server sideWhen it comes to server side security, virtualization could beused to enforce Sarbanes-Oxley requirements without thenecessity for additional hardware to keep pieces of your ITinfrastructure sufficiently isolated from one another.

Among AMD’s approaches to security in AMD-V enhancedprocessors is the design and building in of hardware-baseddevice exclusion vectors (DEVs), which enforce securitybetween virtual machines. This method enforces security via hardware-based table look-ups and is thus faster than thesoftware-based methods relied on in competing designs. TheDEV prevents a rogue or miscoded device driver from access-ing memory for which it doesn’t have authorization.

Virtualization For Dummies, AMD Special Edition 20

05_131565 ch02_4.qxp 8/14/07 3:48 PM Page 20

Page 29: Virtualization

Chapter 3

Understanding ThreeApproaches toVirtualization

In This Chapter� Understanding the hypervisor

� Moving toward better hardware/software cooperation

Anyone who has ever mastered a magic trick like sawing awoman in half or pulling a rabbit out of a hat knows that

creating an illusion requires thoughtful planning and deft exe-cution. Of course, I don’t expect you know how to performeither of these tricks, but suffice it to say they actually requiregreat planning and perfect execution.

Most operating systems aren’t designed to share hardwareresources. Instead, the architect needs to trick them intodoing so. Convincing an operating system like MicrosoftWindows or Linux that it has exclusive control of a computersystem that, in fact, it shares with other operating systems,requires at least the same degree of planning and executionyou’d need to pull a rabbit out of a hat.

Systems architects have pursued three different ways of trick-ing operating systems into sharing a virtualized environment:

� Software, or full, virtualization

� Partial virtualization or paravirtualization

� Hardware-assisted virtualization

06_131565 ch03.qxp 1/2/07 6:00 PM Page 21

Page 30: Virtualization

Virtualization For Dummies, AMD Special Edition 22The rest of this chapter explains the things these approachesshare, as well as their nuances and respective benefits.

What the Approaches ShareAll three approaches to virtualization require the presence ofhypervisor software that allocates basic machine resourcesincluding CPU time and memory. All three also consider theoperating system software running on the virtual machines tobe “guest” operating systems. Where they differ is in regard tothe techniques they use to convince the guest OS it is incharge of the system.

Even though the first method I discuss is often specificallycalled “software implemented,” remember that all three typesof virtualization require hypervisor software to make themwork. The difference is in the details and the load that thehypervisor is expected to carry in managing each virtualmachine (VM).

Approach 1: Full VirtualizationFull virtualization causes the hypervisor to “trap” the machineoperations the OS uses to read or modify the system’s status orperform input/output (I/O) operations. After it has trappedthem, the hypervisor emulates these operations in softwareand returns status codes consistent with what the real hard-ware would deliver. Figure 3-1 illustrates this concept.

The good newsThe good news is that this approach operates invisibly fromthe perspective of the guest OS. It requires no changes to theguest OS or the applications running under that guest. An off-the-shelf version of software developed long before virtualiza-tion ever came to the x86 world, like MSDOS, MicrosoftWindows 3.1, or Windows NT 3.5 can be installed as a guest OS.

06_131565 ch03_4.qxp 8/13/07 1:52 PM Page 22

Page 31: Virtualization

Figure 3-1: How the hypervisor traps machine operations and emulates a guest OS.

The bad newsThe bad news is that instruction trapping and emulationcan reduce overall system performance significantly in I/O-intensive environments. The virtualization software createsa layer of translation and emulation that all operations needto go through. And because that takes time, system perform-ance can be negatively impacted depending on the workload.

EMC’s VMware ESX, perhaps the best-known virtual environ-ment for x86 processors, takes this approach with most ver-sions of its hypervisor (although newer versions make use ofhardware-assisted virtualization features as described in thesection on hardware assisted virtualization).

Approach 2: Paravirtualization Paravirtualization (sometimes known as partial virtualization)eliminates much of the trapping-and-emulation overheadassociated with software implemented virtualization by

ApplicationsOperating System

HypervisorServer

Chapter 3: Understanding Three Approaches to Virtualization 23

06_131565 ch03_4.qxp 8/13/07 1:52 PM Page 23

Page 32: Virtualization

requiring that the guest OS cooperates in creating the virtual-izing illusion — it essentially agrees to be fooled by the hyper-visor. Figure 3-2 illustrates an example.

Figure 3-2: How paravirtualization works.

The good newsParavirtualization can be faster than the other forms ofvirtualization.

The bad newsParavirtualization requires the use of a specially modifiedguest OS that understands the game is rigged and knowshow to play along to maintain the virtualizing illusion. Thisapproach precludes the ability to run off-the-shelf and legacyoperating software in paravirtual environments. Xen, theopen-source community’s approach to virtualization, was originally developed using paravirtualization.

ApplicationsOperating SystemHypervisor

Server

Virtualization For Dummies, AMD Special Edition 24

06_131565 ch03_4.qxp 8/13/07 1:52 PM Page 24

Page 33: Virtualization

Approach 3: Hardware-AssistedVirtualization

Hardware-assisted virtualization relies on hardware exten-sions to the x86 system architecture to eliminate much of thehypervisor overhead associated with trapping and emulatingI/O operations and status instructions executed within aguest OS.

AMD Virtualization™ (AMD-V™) is the collective name forAMD’s hardware-based virtualization features. All AMDOpteron processors for Socket F (1207) and Socket AM2 infra-structures support AMD-V (check with your hardware OEMfor specific platform availability). And with the recent Quad-Core AMD Opteron processor introduction, AMD-V receives an enhancement called Rapid VirtualizationIndexing. Rapid Virtualization Indexing provides theVirtualized Page Tables and guest TLB functionality dis-cussed in Chapter 1. As a result, Quad-Core AMD Opteronprocessors are expected to provide a significant performanceadvantage for many virtualized workloads.

Key hypervisor suppliers (Microsoft, VMware, Virtual Iron,and XenSource) all support elements of AMD-V in their soft-ware. Figure 3-3 illustrates how an AMD-V CPU working with ahypervisor enables hardware-assisted virtualization.

Chapter 3: Understanding Three Approaches to Virtualization 25

06_131565 ch03_4.qxp 8/14/07 3:53 PM Page 25

Page 34: Virtualization

Figure 3-3: How AMD-V based CPUs work with the hypervisor to create a hardware-assisted virtual machine.

CPU extensions go a long way to solving the virtualizationproblems presented by x86-based processors. However, forsome workloads, the hypervisor still has lots of work to do tofinesse I/O operations, adding overhead to each I/O call. Asolution currently in development creates a virtual mappingof I/O devices. This will require changes to the chipsets andI/O bridges that link system processors to I/O buses such asPCI Express.

AMD has issued specifications for chipset extensions consis-tent with its processors’ architecture. Hardware incorporatingthese extensions will be available beginning in the first half of2009 and software support for these extensions will likelyemerge shortly thereafter.

The good newsThe good news is that the AMD Opteron™ processor withAMD-V has helped mature virtualization for x86 processors sogreatly that many organizations are already implementing it asa production-level technology. Advancements to processor

HypervisorServer

ApplicationsOperating System

Virtualization For Dummies, AMD Special Edition 26

06_131565 ch03_4.qxp 8/13/07 1:52 PM Page 26

Page 35: Virtualization

and chipset extensions (and the software that supports them)continues, and promises to yield enhanced virtualization tech-nology that rings in an era of unprecedented agility in IT oper-ations with little incremental software overhead.

The bad newsFooled you — there isn’t any.

Chapter 3: Understanding Three Approaches to Virtualization 27

06_131565 ch03_4.qxp 8/13/07 1:55 PM Page 27

Page 36: Virtualization

Virtualization For Dummies, AMD Special Edition 28

06_131565 ch03_4.qxp 8/13/07 1:55 PM Page 28

Page 37: Virtualization

Chapter 4

Living in the VirtualizationEcosystem

In This Chapter� Engaging partners across the industry

� Seeing what’s in store for the future

� Moving toward hardware-enabled virtualization

The world of virtualization can be thought of as an ecosys-tem. In any ecosystem, different species interact to create

an interconnected and interdependent whole — every crea-ture benefits in some way from the others.

Technology works similarly. It’s not enough to introduce leading-edge hardware without any applications to run.Similarly, the effectiveness of AMD Virtualization™ (AMD-V™),AMD’s x86 virtualization technology, and Rapid VirtualizationIndexing, AMD-V enhancements found in Quad-Core AMD Opteron™ processors, relies on software and hardwaremanufacturers understanding the benefit of working togetherand building a viable, mutually beneficial ecosystem. As AMDcontinues to innovate and define the industry in terms of virtu-alization-enabled chipsets, the rest of the world is taking noticeand working to provide software that taps into the promise ofthe technology.

Benefiting from a FunctioningEcosystem

The delivery of important, industry-standard technologies likevirtualization relies on a network of technology providers.

07_131565 ch04_4.qxp 8/13/07 1:42 PM Page 29

Page 38: Virtualization

Virtualization For Dummies, AMD Special Edition 30Software developers like VMware and Connectix (now part ofMicrosoft) offered the first packages to enable x86 virtualenvironments.

Over the years, VMware has augmented its basic hypervisorproduct with a suite of utilities that allows end-users tocreate, provision, and manage an array of virtual machineswithin a data center.

An open source software project, called the Xen VirtualMachine Monitor, also focused on providing x86 virtualizationcapabilities for Linux.

Some people have assumed that the introduction of hardware-based virtualization assistance will narrow or eliminate theneed for virtualization software, but this is far from the case. Allvirtual environments require a hypervisor of some form to allo-cate real machine resources to virtual machines (VMs). So, asenhanced hardware shrinks the performance overhead associ-ated with virtualization, end-user adoption of the technologywill increase and create new opportunities for independentsoftware vendors (ISVs). (See Chapter 3 for an explanation ofwhat the hyper-visor is and how it works.)

Where Things Are GoingAMD has extended its processors’ architecture to improve vir-tualization performance, but there remains much room forsubsequent innovation in this area. AMD-V operates behindthe scenes, and directly impacts only a few areas of OS andhypervisor code, which nonetheless are critical to greaterperformance, scalability, and efficiency in a virtualized envi-ronment. This allows CPU designers to further innovate hardware-based virtualization support, both to enhance functionality and to improve performance.

End users shouldn’t assume that all virtualization extensionsare equal. The devil is in the details. Even if system pur-chasers don’t “lift the hood and check out the engine,” theyshould make virtual (as opposed to real) machine perform-ance an important item on their acquisition checklist.

07_131565 ch04_4.qxp 8/13/07 1:42 PM Page 30

Page 39: Virtualization

AMD-V differs from the hardware assists in processors basedon legacy front-side bus architectures due, in no small degree,to AMD’s Direct Connect Architecture. For example, becauseprograms running in virtual environments tend to be lessfriendly to processor-caching facilities than programs runningin real (that is, non-virtual) environments, the efficient accessto main memory native to AMD64’s Direct Connect Architectureis even more important in virtualized environments than in realones.

Suppliers of system management software like CA’s Unicenterand HP’s System Insight Manager have extended their packagesto manage virtual as well as physical resources. The shift tovirtual environments will enable IT managers to consolidateworkloads and allocate system resources with a far greaterdegree of granularity than they have at present. This, in turn,will create the need for software to meter, provision, and allo-cate system resources in a more autonomic manner.

AMD’s Real Roadmap forVirtual Technology

AMD believes virtualization will play a major role in thefuture of server and client computing, and AMD is backingup its words with a solid roadmap of virtualization solutions.Figure 4-1 shows the overall roadmap for AMD64 technologydevelopment.

Figure 4-1: Timeline for AMD64 technology.

The key pain points of virtualization are memory handling,security and reliability, CPU overhead, and virtualizing I/Odevices. As the following sections explain, AMD is addressingeach of these points head on.

Dual CoreProcessing

(2005)

Rapid VirtualizationIndexing

(2007)

I/OVirtualization

(2008)

AMDVirtualization

(2006)

Direct ConnectArchitecture

(2003)

Eliminates traditionalbottlenecks inherent

in legacy architectures

Increase performancewith multi-core

capabilities

Simply virtualizationsoftware and reduce

CPU overhead

Reduce overhead ofswitching between

virtual machines

Virtualize devices toimprove performance

and security

Chapter 4: Living in the Virtualization Ecosystem 31

07_131565 ch04_4.qxp 8/15/07 9:33 AM Page 31

Page 40: Virtualization

AMD: Enhancing software-based virtualizationA virtualized environment can be viewed as the addition ofabstraction layers between the hardware and the operatingsystems you’re running on a given physical machine. Althoughvirtualization offers clear benefits, it can also add overhead.

Software-based virtualization is intrinsically tough on yourinfrastructure — the extra layer of abstraction the hypervisorcreates can’t be avoided. However, AMD processors aredesigned to help account for the extra overhead. AMD’s DirectConnect Architecture offers several features that help tostreamline software-based virtualization:

� 64-bit and AMD multi-core computing can provide morememory and more CPU resources for virtual machines.

� The integrated memory controller enhances the perform-ance of memory-intensive virtualization environments.

� HyperTransport™ technology streamlines the movementof data and the sharing of resources among VMs.

� Power efficiency without compromising performanceenables great CPU/OS density per platform.

Figure 4-2 illustrates how Direct Connect Architecture helpsstreamline software-based virtualization.

See Multi-Core For Dummies, AMD Special Edition for more onDirect Connect Architecture.

Getting outstanding performancewith hardware virtualizationAMD added hardware virtualization capabilities (along withDDR2 memory support and several other enhancements) start-ing with the Second-Generation AMD Opteron™ processor,AMD Athlon™ 64 processor and AMD Athlon™ 64 X2 dual-coreprocessor, and AMD Turion™ 64 X2 dual-core mobile technology.

Virtualization For Dummies, AMD Special Edition 32

07_131565 ch04_4.qxp 8/15/07 8:42 AM Page 32

Page 41: Virtualization

Figure 4-2: How AMD’s Direct Connect Architecture makes virtualizationefficient.

Among the benefits:

� The processor includes instructions to help reduce thecomplexity of virtualization software.

� The AMD Opteron processor can reduce overhead byselectively interpreting information destined for guestoperating systems.

� Guest operating systems can run unmodified for easierimplementation and support.

� Security of your virtual machines can be improved withAMD’s increased isolation of VMs.

� The AMD Opteron processor offers architecturalenhancements to streamline switching between hypervi-sor and guest operating systems.

Going further with I/Ovirtualization technology Of course, AMD isn’t planning to rest on its laurels. The com-pany is working with chipset partners to incorporate the fea-tures outlined in the IOMMU (I/O Memory Management Unit)specification it issued in early 2006.

• Direct Connect Architecture helps guests runat near-native speed

• Efficient switching between host/guests(Tagged TLB)

• Virtualization-aware Memory Controllerprovides efficient isolation of virtual machine memory

Front-side Bus Architecture AMD’s Direct Connect Architecture

• Shared front-side bus can decrease guest application performance

• Less efficient switching betweenhost/guests (untagged TLB)

• Memory Controller Hub is not virtualization-aware, so more memory management must be done by software

PCI-E Bridge

PCI-E BridgeI/O HubI/O Hub

CPUCPU CPUCPUCoreCore CoreCore CoreCore CoreCore

I/O HubI/O Hub

PCI-E Bridge

PCI-E BridgePCI-E Bridge

PCI-E BridgePCIc ™Bridge

PCIc™Bridge

Memory Controller

Hub

Memory Controller

Hub

I/O HubI/O HubUSBUSB

PCIPCI

PCIc ™ Bridge

PCIc™ Bridge

PCIc ™Bridge

PCIc™Bridge

SRQCrossbar

HTMem.Ctrlr

SRQCrossbar

HTMem.Ctrlr

8GB/S

8GB/S

8GB/S

8GB/S

Chapter 4: Living in the Virtualization Ecosystem 33

07_131565 ch04_4.qxp 8/13/07 1:42 PM Page 33

Page 42: Virtualization

AMD is working with ecosystem partners to help ensurethey’ll be ready to support these new features in a timelymanner. The development of AMD I/O virtualization technol-ogy represents a close collaborative effort between AMD andits ecosystem partners, with chipset availability expected.

AMD’s I/O virtualization technology helps increase the perform-ance, security, and reliability of device virtualization. The tech-nology defines a methodology for abstracting devices in virtualenvironments and enables virtualization software to mapdevices directly to VMs. I/O virtualization is implemented pri-marily in the chipset-I/O bridges and other system core logic.With AMD’s Direct Connect Architecture, virtualized applica-tions can run faster, because memory and I/O transfers areenhanced.

Figure 4-3 shows how an AMD64 CPU is built for hardware-enabled and I/O virtualization.

Figure 4-3: Schematic of AMD64 hardware-enabled I/O virtualization.

Guest OSGuest OS

I/O Virtualization technology allows secure partitioning atPCI bridge level, allowing enforcement of device

ownership at the very lowest levels of the platform

Guest OS

HypervisorPhysical Resources

Intercept?

InterceptInterrupt?

AMD Processor

MemoryAccess

DeviceExclusionVector

Allow memoryaccess?

EXCEPTION

VMTuning

Memory Controller

Virtualization-aware memorycontroller allows resource

arbitration & strong partitioningat silicon level

IOMMU

PCIe ™bridge

PCI Device

PCIe™bridge

ATC

IOM

MU

Tunnel

WithAMD Virtualization™

Guest InstructionsFlagged for Intercepts

(VRUN)All Other

GuestInstructions

Virtualization For Dummies, AMD Special Edition 34

07_131565 ch04_4.qxp 8/15/07 10:16 AM Page 34

Page 43: Virtualization

The Future Virtuallyat Your Fingers

Virtualization technology is a technical advancementdesigned to increase the level of system abstraction andenable IT users to harness ever-improving levels of computerperformance and efficiency. Virtualization essentially decou-ples users and applications from the specific hardware char-acteristics of the systems they use to perform computationaltasks. This change is set to usher in an entirely new wave ofhardware and software innovation.

Virtualization helps simplify system upgrades (and in somecases may eliminate the need for such upgrades) by capturingthe state of a VM and transporting that state, in its entirety,from an old to a new host system.

x86 virtualization was conceived and designed to enable ageneration of energy-efficient computing (see PowerManagement for Dummies, AMD Special Edition for more onhow you can improve your IT systems’ power efficiency).Processor, memory, and storage resources that today must be delivered in fixed amounts determined by real hardwaresystem configurations will be delivered with finer granularityvia dynamically tuned VMs in the future.

The combination of virtualization software and powerful AMDhardware-based virtualization assists helps users deploy com-puting resources in more agile, efficient, and cost-effectiveways. AMD is proud to take a leadership role in this processand help its customers extract ever-increasing value fromtheir IT investments.

Chapter 4: Living in the Virtualization Ecosystem 35

07_131565 ch04_4.qxp 8/15/07 8:42 AM Page 35

Page 44: Virtualization

Virtualization For Dummies, AMD Special Edition 36

07_131565 ch04_4.qxp 8/13/07 1:42 PM Page 36

Page 45: Virtualization

Chapter 5

Ten Great Reasons to Investin Virtualization Hardware

In This Chapter� Getting more secure

� Saving money

� Improving scalability

It’s here — the end of the book. And like all For Dummiesbooks, this one includes a chapter listing ten things worth

listing again in one place.

In this chapter, I’ve collected ten great reasons to use hard-ware virtualization in your technology space.

Create a Dynamic Data CenterVirtualization helps you break the “one application perserver” model, while defining your data center by logicalboundaries rather than physical boundaries.

To date, most data centers operate with excess capacity sothey can handle increases in demand as and when they arrive.However, much of the time, that capacity sits more or lessidle, simply gobbling up power, producing heat, taking upspace, and wasting money.

In a virtualized data center, as demand for a particular appli-cation increases, you can shift virtual machines (VMs) to thatapplication. Conversely, when demand decreases, you simplyreallocate your virtual resources accordingly. And because

08_131565 ch05_4.qxp 8/13/07 1:44 PM Page 37

Page 46: Virtualization

Virtualization For Dummies, AMD Special Edition 38workloads increase and decrease all day long at undeterminedtimes, each of the various VMs on a physical server can takeadvantage of any extra capacity without direct human inter-vention. The result is that you can build a data center withfewer total resources, because resources can be used asneeded instead of being dedicated to single applications orsitting and waiting until the next spike in demand.

At its core, virtualization isn’t really about virtual anything —it’s about the dynamic allocation of resources. Yes, the basicunit of virtualization is a virtual machine, but it’s what a vir-tual machine does that is so useful.

Virtualization enables you to allocate resources where youneed them, when you need them, from an aggregate pool ofresources. You can look at the aggregate demand of your envi-ronment, build out sufficient capacity to handle that demand,and then pull as necessary from that capacity and be able tohandle multiple operating systems, servers, and applications.This can save money on your total hardware investment(including potential power, heat production, and resultantcooling requirements, real estate needs, and so on, as Idescribe later in this chapter). It may also free up your IT staffto be more productive — instead of spending all day manag-ing hardware, they can focus on end-user needs.

Help Ease Power Consumptionand Stay Cool

Excess capacity demonstrates that most contemporary appli-cations run well on two- and four-processor servers; currently,only the most performance-hungry applications demand allthe computational power that 16- or 32-processor systemsdeliver.

The latest virtualization technologies from AMD software partners like Microsoft, Novell, Red Hat, Sun, SWSoft, VirtualIron, VMware, and XenSource can allow multiple virtualmachines with multiple operating environments to share asingle AMD Opteron™ processor-based server. A range ofapplications, hosted under a variety of environments such asthe Microsoft Windows, Linux, and Sun Solaris operating sys-tems, can coexist on a single “real” machine. Each application

08_131565 ch05_4.qxp 8/13/07 1:44 PM Page 38

Page 47: Virtualization

executes within its own container, or virtual machine (VM),unaware that it might in fact be one of many applicationsunder one of many operating systems residing on a singlepiece of hardware.

Depending on the nature and duty cycle of the individually-hosted applications, one eight-way AMD Opteron processor-based system can handle as many as 80 VM environments.Because a typical eight-way AMD Opteron processor-basedsystem might consume as much as 1.6 kilowatts at full load,each of these VMs may consume (on average) as little as 20watts of power — a far cry from the still relatively efficient 200watts a real (as opposed to virtual) dual-processor, dual-coresystem might consume while running at a 10 percent utilizationfactor. These savings in real power consumption are amplifiedwhen you factor in the power needed (approximately 50 per-cent of required system power) to remove heat from thesystem: A 20 watt VM needs only a 10 watt HVAC system, while a 200 watt real machine can require up to 100 watts ofpower to run HVAC equipment.

Although the move from real to virtual environments may bejustified solely on the basis of reduced power consumption,the savings don’t stop there. Without virtualization, the work-loads running on 80 1U single- or dual-processor systemscould occupy two 42U racks within the data center. Becausean eight-way AMD Opteron processor-based system mayrequire only 4U of rack space, the move from real machinesto VMs potentially could reduce the hardware footprint ofsystem equipment within a data center by a factor of 20 ormore. Even data centers that have yet to max out poweror HVAC resources could benefit from this reduction in thespace required to handle aggregate workloads.

Provide Better SecurityVirtualization allows you to keep sensitive corporate data sep-arate from end-user data, and one set of end-user data sepa-rate from another, even though they reside on the samephysical machine. If you assign separate VMs to handle thosedata, you could give one VM with end-user tasks access todownloads and other higher-risk operations, while the VMsthat handle other end-user data and sensitive and/or criticaldata stay securely out of reach.

Chapter 5: Ten Great Reasons to Invest in Virtualization Hardware 39

08_131565 ch05_4.qxp 8/13/07 1:44 PM Page 39

Page 48: Virtualization

Run Legacy Software on Non-Legacy Hardware

Many enterprises still use legacy software. The last thing theywant to do is to try and keep old hardware around and useablejust to run it.

A virtualized environment can enable a VM designed to emulatelegacy hardware and allow you to run the necessary operatingsystem and legacy software — all of this can run on the latestand greatest (and reliable) new hardware. Not only can you runlegacy software on the latest hardware, that hardware will beunder warranty, again potentially reducing your risk and thecosts of maintenance.

Develop and Test New Stuff Easily

Software developers can create virtual environments to runmultiple operating systems, or even different versions of thesame operating system, to test software.

Similarly, if you’re part of an enterprise considering rolling out new software, you can limit its deployment to one securepiece of your infrastructure (by installing it on a VM) and seehow it behaves and how your users respond before youdeploy it enterprise-wide.

Virtualization software like VMware and the Xen open sourcehypervisor allow the rapid deployment of new VMs, alongwith the rapid relocation of VMs from one physical server toanother. New applications can proceed from concept to devel-opment to deployment with fewer delays usually encounteredwhen progress depends on an organization’s ability to order,receive, and deploy incremental hardware resources. Manyapplications that run on real (that is to say, nonvirtual)machines may require at least three dedicated systems:one for development, one for normal execution, and oneto back up the system usually used for execution.

After an organization virtualizes its operations, it should needordinarily only two physical machines to accommodate its

Virtualization For Dummies, AMD Special Edition 40

08_131565 ch05_4.qxp 8/13/07 1:44 PM Page 40

Page 49: Virtualization

applications: one to support normal application executionand one to back up the first system and act as a developmentenvironment. With fewer physical systems to manage, IT staffcan be more productive and more responsive to user needs.

Run Multiple Operating Systemson the Same Hardware

Many enterprises use multiple operating systems. It’s notuncommon to run Linux, Microsoft Windows, and Solariswithin one organization. Virtualization lets you do this moresmoothly on the same hardware, rather than needing at leasttwo discrete hardware installations.

Improve ScalabilityEnterprises grow. With virtualization, responding to thechanging needs of your environment doesn’t need to followthe old way of “throwing more hardware at the problem.”

Instead, you can scale your environment much more dynami-cally, responding, for example, to growth in the user base oftwo server/application combinations with only one new pieceof hardware virtualized to account for where you need theresources.

Enhance Your HardwareUtilization

With virtualization, you’re managing the aggregate demandof your enterprise instead of the demand on any particularserver/application combination. You can deploy the appropri-ate total hardware complement to handle your peak aggregateloads rather than deploy individual pieces of hardware forevery type of task. Doing so lets you keep your total hardwareinstallation busy and earning its keep, instead of sitting idlyby waiting for the next task that might suit a specific server/application combination.

Chapter 5: Ten Great Reasons to Invest in Virtualization Hardware 41

08_131565 ch05_4.qxp 8/13/07 1:44 PM Page 41

Page 50: Virtualization

Create a ManageableUpgrade Path

Upgrading software or operating systems can be a huge task.Virtualization lets you split up the task and do it at a paceslightly less insane than an all-nighter met in the morning byend-user panic. In a virtualized workplace you can upgrade onegroup, spend some quality time getting to know them and howthey’re getting along with their upgraded systems, and then usethat knowledge to upgrade the next group on your list.

Manage Outages (Expected andUnexpected) Dynamically

For scheduled outages, a virtualized environment lets youshift resources to cover where the outage will occur. And withlive migration tools, you can move virtual machines (and theusers accessing applications on them) dynamically and trans-parently between systems. Your end users need never skip abeat. Instead of getting an e-mail before the e-mail server goesdown for routine maintenance, they never get an e-mail at all.

Virtualization can also help enhance disaster recovery: Shoulda VM fail for any reason, a new instance of a VM can be startedat a remote location almost immediately.

Nice, huh?

Virtualization For Dummies, AMD Special Edition 42

08_131565 ch05_4.qxp 8/15/07 8:45 AM Page 42

Page 51: Virtualization

Virtualization is designed to enable a generation of more energy-efficient computing. Processor, memory, and storage resources that traditionally needed to be delivered in fixed amounts determined by real hardware system configurations can now be delivered with finer granularity via virtual machines.

At its simplest level, virtualization allows you, virtually and cost-effectively, to have two or more computers, running two or more completely different environments, on one piece of hardware. For example, with virtualization, you can have both a Linux machine and a Windows machine on one system. Alternatively, you could host a Windows® 95 desktop and a Windows® XP desktop on one workstation. AMD is proud to play a pivotal role in this process.

ISBN: 978-0-470-13156-5Part Number: 42139-A

Not resaleable

Understand how virtualization works and

whether it's right for you

Find out how virtualization can

benefit your organization

Get more from your IT investments!

@� Find listings of all our books

� Choose from many different subject categories

� Sign up for eTips at etips.dummies.com

Virtualization

Clark Scheffy

A Reference for the Rest of Us!®

FREE eTips at dummies.com®

Explanations in plain English

“Get in, get out” information

Icons and other navigational aids

Top ten lists

A dash of humor and fun

Compliments of Harness ever-increasing

levels of computer performance!

Create a dynamic data center

Improve security

Allocate memory where it's needed

Improve scalability

Save energy, time, and money

AMD Special Edition