Slide 6
Slide 6 text
What else can be virtualized?
memory – VM and Paging pioneered by Ferranti Atlas in 1952 (with University of Manchester and Plessey)
runtime (library functions) or Virtual Machine – Java VM, .Net CLR, Dalvik (Android JVM)
filesystem - chroot in Unix – same kernel, network stack, CPU
filesystem (in user-mode) (SSHFS, Windows “share” mapping, here and above VFS is in game)
filesystem+network (sandbox, FreeBSD jail, Google Chrome sandbox)
sandbox + resource slice management/accounting – OpenVZ/Virtuozzo (specific shortcomings – no IPSec, memory
management/accounting granularity); Solaris containers, AIX WPARs
OS – UML (StrongSWAN IPSec testing), colinux – same CPU
Desktop – VDI
Periphery – virtual CD / Printer / LAN adapter (common case for VPN)
Hardware – also called emulation or simulation
Running legacy OS/ Apps – Hercules – run VM/370 or zSystem Linux on PC, MAME, virtualII
modelling / verifying future hardware / system products
Full (system) virtualization
CPU
HDD, other storage e.g. CD, tape
Network
Graphics / video
Input – keyboard, mouse
USB, whatever is specific to emulated platform (HPET)