CCS notes
Virtualization
What is Virtualization?
Definition: The process of dividing physical resources into multiple virtual resources using a Virtual Machine Monitor (VMM) or hypervisor.
Importance: Enables multiple operating systems to run on the same hardware, critical for cloud computing.
Features of Virtualization
Resource Pooling: Shared resources across multiple users via multi-tenancy.
Cost Efficiency: Lowers infrastructure costs with an on-demand service model.
Flexibility: Supports multiple virtual machines on a single physical system.
Role in Cloud Computing
Enables: Scalable and efficient cloud services through resource abstraction and partitioning.
Optimization: Organizations can reduce costs and enhance operations.
Hypervisor
Definition: Virtual Machine Monitor that allows guest operating systems to run on a virtual platform.
Types of Hypervisors
Type-1 (Native): Runs directly on host hardware, controls resources without needing a main OS.
Type-2 (Hosted): Runs atop a host OS, relying on it for hardware management.
Guest OS
An operating system installed in a virtual machine, separate from the host OS.
Benefits of Virtualization
Resource Maximization: Pay-as-you-go model for optimal resource use.
Cost Reduction: Elimination of large servers and expensive hardware.
Maintenance Reduction: Multiple OS on a single machine reduce hardware dependency.
Service Accessibility: Access services of different OSs.
Multiple Systems Support: Benefits of various OSs via a single device.
Safe Software Testing: Run beta software in isolation.
Enhanced Security: Virtual machine isolation improves system security.
Demerits of Virtualization
Performance Overhead: Slightly reduced performance from resource sharing.
Complex Management: Requires expertise for managing multiple VMs.
Security Risks: Vulnerabilities in one VM can affect others on the same host.
Initial Setup Costs: High costs for creating a virtualization infrastructure.
Virtualization Approaches
Full Virtualization: Guest OS runs without modifications, unaware of virtualization.
Para-Virtualization: Guest OS modified to communicate with hypervisor for better performance.
Hardware Virtualization: Utilizes hardware features for virtualization.
Instruction Set Architecture (ISA) Level Virtualization
Positives: Flexibility, simple transformation, multiple systems on one host.
Negatives: Performance overhead from instruction interpretation.
Hardware Abstraction Layer (HAL) Virtualization
Advantages: Increased efficiency; utilizes hardware capabilities effectively.
Negatives: Incomplete virtualization may require workarounds.
Operating System (OS) Level Virtualization
Definition: Shares hardware and OS, enabling multiple OS instances without dual-booting.
Benefits: Simultaneous execution, no reboot needed, resource-efficient.
Library and Application Level Virtualization
Library Level: Allows developers to interact with systems more easily by hiding OS complexities.
Application Level: Enables applications to run in dedicated environments simulating real hardware.
Conclusion
Virtualization fundamentally transforms resource management, fostering efficient, scalable computing across various environments, and plays a vital role in modern cloud architecture.