OSBoxes - Virtual Machines for VirtualBox & VMware
Performance Tuning on Virtual Machines | Learning Tree Blog
VirtualBox vs. VMware Player: The Best Virtual Machine for Windows
The Best Virtual Machine for Linux: KVM vs. VirtualBox vs. QEMU vs. Hyper-V
Hypervisor
A Hypervisor is also called as a Virtual Machine Monitor (VMM).
Hypervisor 101: Understanding the Virtualization Market
Type 1 hypervisors is an operating system that run directly on the system hardware ("native" or "bare metal" or "embedded").
Type 2 hypervisors run on a host operating system. Most client side VM software contains this kind of hypervisor.
Intel's VTx technology improved the performance of visualization (rendering binary translation and paravirtualization obsolete) and allowed for KVM to be implemented. More importantly, it negated most of the differences between “type-1” and “type-2” hypervisors.
Ben Armstrong’s Virtualization Blog | Microsoft Learn
Comparison of platform virtualization software - Wikiwand
A Performance Comparison of Hypervisors - VMWare (PDF)
Performance Comparison of KVM, VMware and XenServer using a Large Telecommunication Application (PDF)
Will Containers Replace Hypervisors? Almost Certainly! | Cloudscaling
CPU
Protection ring - Wikiwand
Real mode - Wikiwand
Protected mode - Wikiwand
x86 virtualization - Wikiwand
硬科技:為何x86的虛擬化這麼難搞(上) #作業系統 (152220) - Cool3c
硬科技:為何x86的虛擬化這麼難搞(中) #作業系統 (152291) - Cool3c
硬科技:為何x86的虛擬化這麼難搞(下) #作業系統 (152320) - Cool3c
硬科技:x86虛擬化由內到外還是繼續難搞(上) #intel (152574) - Cool3c
硬科技:x86虛擬化由內到外還是繼續難搞(中) #作業系統 (152657) - Cool3c
硬科技:x86虛擬化由內到外還是繼續難搞(下) #intel (152681) - Cool3c
GPU
硬科技:GPU虛擬化為何超級難搞(上) #CPU (157525) - Cool3c
硬科技:GPU虛擬化為何超級難搞(中) #api (157526) - Cool3c
硬科技:GPU虛擬化為何超級難搞(下) #nvidia (157527) - Cool3c
KVM
Type 2 Hypervisor, Linux Kernel
Documents - KVM
How to Install Kvm on Ubuntu 20.04 | Linuxize
Virtual Machine Manager virt-manager
How to Use Virtualbox VMs on KVM In Linux
kvm -cdrom ubuntu-20.04.4-desktop-amd64.iso
Xen
The Xen Project, the powerful open source industry standard for virtualization.
Hypervisor x86 & ARM
Xen & Docker: Made for Each Other! | Xen Project Blog
Xen only check handle three things: memory, CPU and interrupts
VMWare vSphere (ESXi)
Type 1 Hypervisor, not play well with consumer level hardware
Free VMware vSphere Hypervisor, Free Virtualization (ESXi) | United States
Is ESXi Really Free? Let's put it to the Test
VMware on a Raspberry Pi!?!?! (ESXi Install) - YouTube
Proxmox
Type 2 Hypervisor (actually Ubuntu LTS), plays well with consumer level hardware
Proxmox VE - Virtualization Management Platform
Proxmox VE
Virtual Machines Pt. 2 (Proxmox install w/ Kali Linux) - YouTube
Getting Started with Proxmox 8 - YouTube virtualize everything
5 Things I Would Do On Fresh Install Of ProxMox - YouTube use OEM install when creating template, storage pass through
Before I do anything on Proxmox, I do this first... - YouTube
Perfect Proxmox Template with Cloud Image and Cloud Init - YouTube
Perfect Proxmox Template with Cloud Image and Cloud Init | Techno Tim Documentation
Let's Install Proxmox 8.0! - YouTube
My Proxmox Home Server Walk-Through: Part 1 (TrueNAS, Portainer, Wireguard) - YouTube
Remote Gaming and Streaming w/ Proxmox - Proxmox Walk-Through: Part 2 - YouTube GPU pass-through
IMPORT a Virtual Machine Template (OVA, VMDK, RAW, ...) into Proxmox! - YouTube
Proxmoxer Documentation
joshpatten/PVE-VDIClient: Proxmox based VDI client proxmoxer
+ virt-viewer
PROXMOX VDI Client - A Better Approach to Thin Clients for Proxmox - YouTube
SmartHomeBeginner
Mini Homelab Tour - I do a LOT with this Little Proxmox Server and 100+ Docker Apps - YouTube
Docker on Proxmox LXC 🚀 Zero Bloat and Pure Performance! - YouTube
F
Hyper-V
Hyper-V - Wikiwand
What Is Hyper-V & How Do You Use It? A Beginner's Guide
Introduction to Hyper-V on Windows 10 | Microsoft Docs
Enable Hyper-V on Windows 10 | Microsoft Docs
Run virtual machines on Windows 8.1 with Client Hyper‑V: A quick how-to | ZDNet
QEMU
QEMU
QEMU - ArchWiki
Welcome to QEMU’s documentation! — QEMU documentation
Eduardo Otubo: Qemu Sandboxing for dummies. - YouTube
QEMU Sandboxing for dummies | PPT
QEMU,KVM及QEMU-KVM介绍 - 又是火星人 - 博客园
QEMU vs. KVM: Exploring the Virtualization Giants
(12) QEMU vs KVM: A Quick Comparison | LinkedIn
virtualization - Difference between KVM and QEMU - Server Fault
Can´t figure out the difference between QEMU and KVM : r/linuxmasterrace
quickemu-project/quickemu: Quickly create and run optimised Windows, macOS and Linux desktop virtual machines.
mawalu/qsandbox: Shell sandboxing using QEMU and virtiofsd. Just enter qsandbox run to open your current working dir in a temporary QEMU vm.
lightweight initramfs
Emulating a Raspberry Pi with QEMU
yay -S qemu-base qemu-tools qemu-system-aarch64 qemu-system-arm qemu-system-riscv qemu-user-static
how to run arm64 docker image on linux
Getting started with Docker for Arm on Linux | Docker
# run this to register qemu, `-p` for persistent
qemu-user-static --reset -p yes # if you have the installed locally on the host
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# then these can be run
docker run --rm -it --platform linux/arm64 ubuntu:latest uname -a
docker run --rm -it --platform=linux/arm64/v8 arm64v8/alpine:3.18
Frontends
libvirt
libvirt: The virtualization API
- toolkit to manage VM platforms
- support KVM, QEMU, LXC, Xen, ...
- C, C#, Go, Python bindings
libvirt / libvirt-go-module · GitLab
libvirt / libvirt-python · GitLab
Virtual Machine Manager
- creates and manages KVM-based virtual machines
virt-viewer
to view VM display (supports VNC and SPICE)
VirtualBox
Downloads – Oracle VM VirtualBox
Oracle® VM VirtualBox®
Chapter 8. VBoxManage
Use VBoxManage to Pass Through USB device to VirtualBox VM – FlamingKeys – Active Directory, Office 365, PowerShell
Also download the extension packs (PUEL, non-commercial only).
you need to learn Virtual Machines RIGHT NOW!! (Kali Linux VM, Ubuntu, Windows) - YouTube
Shared Folder
Requires Guest Additions
Chapter 4. Guest Additions
Mounting VirtualBox shared folders on Ubuntu Server 16.04 LTS
What does "auto-mount" do in VirtualBox shared folder setup? - Super User
sudo usermod -aG vboxsf
Enable 64-bit support
virtualbox.org • View topic - I have a 64bit host, but can't install 64bit guests
To enable 64bit guests, run through the following checklist:
-
Note your exact CPU model or part number, then go online and check its capabilities. The CPU must have 64bit capability and support either Intel or AMD virtualization technologies: VT-x or AMD-v.
-
You usually need to enable VT-x/AMD-v in the host PC BIOS. You need to check with your PC manual or support forum to find out how to boot into the BIOS screen. This is not something we here at the forums can help you with. Once you get there you need to look for something buried in a menu, perhaps in the security category. The option may be called something like "Enable Virtualization Technology". If you see "Virtual Directed I/O" then that is a different thing. Remember to reboot your host OS after making BIOS changes - in this case a full restart from power off is required, just resuming from a hibernated state may not do the job.
-
If (1) and (2) are already taken care of, then make sure that no other host apps are already using VT-x/AMD-v. The usual culprits are system level debuggers, other VM platforms, and some resident anti-virus applications. This has become a particular issue with 64bit Windows desktop and server hosts - especially Win8/Win2k12/Win10, since these may enable Microsoft's Hyper-v VM platform by default: this grabs ownership of VT-x and won't play nice with VirtualBox.
-
When creating a VM, make sure you choose the 64-bit version of the guest OS template in
| General | Basic | Version, e.g. choose "Ubuntu (64 bit)" and not "Ubuntu" or "Ubuntu (32bit)". This has become more important since VirtualBox 4.3.x, because choosing the correct template also allows other modern processor features to be visible to the guest - it's not just about 64bit capability any more.
Gaming
Tips for the Guest Windows 7:
- Install Guest Additions
- Switching off Hibernation
- Switching off System Restore ("System protection")
- Reducing the size of the PagingFile ("Advanced system settings")
- Run "Turn Windows features on or off"
- Trimming down an already installed Win 7.
- Sean's Windows 7 Install & Optimization Guide for SSDs & HDDs
Using ESXI for Virtualized Gaming - Justin-Tech Blog
Fixing Audio in Linux Guests | VirtualBox - Without The Sarcasm
GPU sharing
see
computer-hardware#interfaces
TWO Graphics Cards in ONE Slot?! - YouTube PCIe Bifurcation
IOMMU: passthrough PCIe devices to VM (under AMI-Vi/VT-d branding)
Paravirtualization: small overhead sharing of hardware devices to VM via driver
GPU Paravirtualization in Windows 11 Hyper V make it easier than PCIe bifurcation
Understanding the iommu Linux grub File Configuration
7 Years Late is Better than Never. - YouTube
linux - What are the implication of using iommu=force in the boot kernel options? - Unix & Linux Stack Exchange
GPU Passthrough with QEMU on Arch Linux | DominicM
Proxmox vGPU Gaming Tutorial - Share Your GPU With Multiple VMs! - YouTube
Proxmox 8.0 - PCIe Passthrough Tutorial - YouTube
Hyper V
How to Create and Run Virtual Machines With Hyper-V
Nvidia tried so hard to stop this - GPU Sharing with Virtual Machines - YouTube
jamesstringerparsec/Easy-GPU-PV: A Project dedicated to making GPU Partitioning on Windows easier!
Two Gamers, One GPU from your Windows PC! Hyper-V Paravirtualization Build and Tutorial - YouTube
【全网首发】家用显卡虚拟化 vGPU,微软 Hyper-V 独有免费功能 - YouTube
四等分的显卡!用一张显卡开网吧是什么体验? - YouTube
The Battle
Hypervisor "versus" Linux Containers with Docker !
Linux containers vs. VMs: A security comparison | InfoWorld
Why Containers Instead of Hypervisors?
Containers vs. virtual machines: How to tell which is the right choice for your enterprise | InfoWorld
Difference between Hypervisor Virtualization and Container Virtualization
What is Docker and why is it so darn popular? | ZDNet
Will Containers Replace Hypervisors? Almost Certainly! | Cloudscaling
Docker vs. VMWare: How Do They Stack Up?
[Infographic] Docker vs. Vagrant
The Difference: Docker vs. Virtualization — munz & more
Containers are not VMs | Docker Blog
There’s Application Virtualization and There’s Docker | Docker Blog
So, when do you use a Container or VM? | Docker Blog
Containers vs Hypervisors: The Battle Has Just Begun | Linux.com
It's too early so say Containers have won and Hypervisors are obsolete.