1.6 KiB
1.6 KiB
Lecture Topic: Virtualization
Windows | Linux | |
---|---|---|
Executable Format | .exe .bat .ps1 | .sh ELF standard .out |
Library Format | .dll | ELF .o .so |
Executables tend to not be portable, on Linux usually due to differences in the flavor of Linux, and even on windows due to different platform architecture. Interoperability is not guaranteed.
The differences between simulation and emulation Simulation: getting the result Emulation: mimicking the behavior
Virtualization: Alternative to emulation and simulation: allows access to hardware by generating appropriate machine code
Why Virtualization?
- Access to hardware
- Safety, sandboxed, controlled environment
- Multiple Users
Kinds of VMs
Type 1 virtual machine: manages the VMs directly, with no interaction with a base kernel Type 2 virtual machine: manages the VMs through interactions with the hardware with a main kernel
Process VM
- One purpose functionality VM
- Java VM as an example
OS VM
- Virtual machine that emulates entire OS/machine functionality
Example VM stack
- VirtualBox VM
- VirtualBox VMM
- Windows
- Hyper-V
- Hardware
Virtualbox | Hyper-V |
---|---|
OS VM, Type 2 VM | VMM, Type 1 VM |
WSL | Docker |
---|---|
Uses Hyper-V, Reuses system calls if possible | Containers, minimal dependencies |