
Hardware and Software Support for Virtualization
Morgan and Claypool Life Sciences (Publisher)
Published on 28. February 2017
Book
Paperback/Softback
206 pages
978-1-62705-693-9 (ISBN)
Description
This book focuses on the core question of the necessary architectural support provided by hardware to efficiently run virtual machines, and of the corresponding design of the hypervisors that run them. Virtualization is still possible when the instruction set architecture lacks such support, but the hypervisor remains more complex and must rely on additional techniques.
Despite the focus on architectural support in current architectures, some historical perspective is necessary to appropriately frame the problem. The first half of the book provides the historical perspective of the theoretical framework developed four decades ago by Popek and Goldberg. It also describes earlier systems that enabled virtualization despite the lack of architectural support in hardware.
As is often the case, theory defines a necessary-but not sufficient-set of features, and modern architectures are the result of the combination of the theoretical framework with insights derived from practical systems. The second half of the book describes state-of-the-art support for virtualization in both x86-64 and ARM processors. This book includes an in-depth description of the CPU, memory, and I/O virtualization of these two processor architectures, as well as case studies on the Linux/KVM, VMware, and Xen hypervisors. It concludes with a performance comparison of virtualization on current-generation x86- and ARM-based systems across multiple hypervisors.
Despite the focus on architectural support in current architectures, some historical perspective is necessary to appropriately frame the problem. The first half of the book provides the historical perspective of the theoretical framework developed four decades ago by Popek and Goldberg. It also describes earlier systems that enabled virtualization despite the lack of architectural support in hardware.
As is often the case, theory defines a necessary-but not sufficient-set of features, and modern architectures are the result of the combination of the theoretical framework with insights derived from practical systems. The second half of the book describes state-of-the-art support for virtualization in both x86-64 and ARM processors. This book includes an in-depth description of the CPU, memory, and I/O virtualization of these two processor architectures, as well as case studies on the Linux/KVM, VMware, and Xen hypervisors. It concludes with a performance comparison of virtualization on current-generation x86- and ARM-based systems across multiple hypervisors.
More details
Series
Language
English
Place of publication
San Rafael, CA
United States
Publishing group
Morgan & Claypool Publishers
Dimensions
Height: 235 mm
Width: 190 mm
Weight
408 gr
ISBN-13
978-1-62705-693-9 (9781627056939)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Classification
Persons
Content
- Preface
- Acknowledgments
- Definitions
- The Popek/Goldberg Theorem
- Virtualization without Architectural Support
- x86-64: CPU Virtualization with VT-x
- x86-64: MMU Virtualization with Extended Page Tables
- x86-64: I/O Virtualization
- Virtualization Support in ARM Processors
- Comparing ARM and x86 Virtualization Performance
- Bibliography
- Authors' Biographies
- Index
- Acknowledgments
- Definitions
- The Popek/Goldberg Theorem
- Virtualization without Architectural Support
- x86-64: CPU Virtualization with VT-x
- x86-64: MMU Virtualization with Extended Page Tables
- x86-64: I/O Virtualization
- Virtualization Support in ARM Processors
- Comparing ARM and x86 Virtualization Performance
- Bibliography
- Authors' Biographies
- Index