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

  1. Type-1 (Native): Runs directly on host hardware, controls resources without needing a main OS.

  2. 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

  1. Full Virtualization: Guest OS runs without modifications, unaware of virtualization.

  2. Para-Virtualization: Guest OS modified to communicate with hypervisor for better performance.

  3. 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.