Многие читатели бложика являются практиками виртуализации, кто-то даже пытается заглянуть под капот и посмотреть как это устроено.
Сегодня я подобрал несколько актуальных ссылок на статьи, описывающие как работает на уровне процессора вложенная виртуализация, как самому написать гипервизор, зачем нужны инструкции процессора для аппаратной реализации функций виртуализации.
Virtualization Internals
- Virtualization Internals Part 1 – Intro to Virtualization
- Virtualization Internals Part 2 – VMWare and Full Virtualization using Binary Translation
- Virtualization Internals Part 3 – Xen and Paravirtualization
- Virtualization Internals Part 4 – QEMU
Как написать гипервизор самому:
- Hypervisor From Scratch – Part 1: Basic Concepts & Configure Testing Environment
- Hypervisor From Scratch – Part 2: Entering VMX Operation
- Hypervisor From Scratch – Part 3: Setting up Our First Virtual Machine
- Hypervisor From Scratch – Part 4: Address Translation Using Extended Page Table (EPT)
- Hypervisor From Scratch – Part 5: Setting up VMCS & Running Guest Code
- Hypervisor From Scratch – Part 6: Virtualizing An Already Running System
- Hypervisor From Scratch – Part 7: Using EPT & Page-Level Monitoring Features
- Hypervisor From Scratch – Part 8: How To Do Magic With Hypervisor!
Вложенная виртуализация:
- Out of Hypervisor (OoH): When Nested Virtualization Becomes Practical
- Using SMT to Accelerate Nested Virtualization
- The Turtles Project: Design and Implementation of Nested Virtualization – с чего начиналось
- Improving KVM x86 Nested Virtualization
Для понимая поддержки аппаратной виртуализации в VMware ESXi есть довольно полезная, хоть и давно не обновлявшаяся таблица ESX(i) Support of Intel VT-x and AMD-V Features. Вроде, все функции были реализованы в 6.5/6.7: Continue reading “Наука виртуализации”