Changes between Initial Version and Version 1 of KVM/intr


Ignore:
Timestamp:
Jan 7, 2009, 3:14:21 PM (16 years ago)
Author:
rock
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • KVM/intr

    v1 v1  
     1[[PageOutline]]
     2= KVM 中文介紹 =
     3== 1.簡介 ==
     4Kernel-based Virtual Machine (KVM) 是一個full virtualization的解決方案適用於Linux在x86的硬體上. 它包含了可載入的Kenrel module(kvm.ko)和user-space component,兩者都是開放原始碼。KVM的kernel component最早被納入在主流的Linux 2.6.20版本。
     5
     6KVM 允許VM使用不需修改的linux和windows disk image即可模擬機器。每一台虛擬機器有自己的虛擬硬體(網卡,硬碟,顯卡......),在KVM Model下,每個VM都為一個可被Linux排程的Process。KVM包含了兩個components(1)可管理VM硬體的設備驅動程式(2)模擬PC硬體的user-space component,它是一個輕量化修改的QEMU process。
     7
     8[[BR]]
     9== 2.相關術語 ==
     10 * Intel Virtualization Technology
     11   * Intel 的 Virtualization Technology 可以讓處理器支援多個 OS(1 physical server v.s. multiple OS),不過這其實是基於我們所熟悉的虛擬機器軟體(例如:VMware、QEMU、Xen等)才能達到的,所以這是一個由「processor + chipsets + BIOS + 虛擬機器軟體」互相運作所實現的技術。
     12 * QEMU
     13   * QEMU is a well known processor emulator written by French computer wizard Fabrice Ballard.
     14
     15[[BR]]
     16== 3.特色 ==
     17    * KVM 驅動程式目前支援 i386 與 x86_64 "host",且「All combinations are allowed except x86_64 guest on i386 host.」。
     18    * KVM在kernel和user mode之外,又新增了一個guest mode(guest mode有自己的kenrel和user mode)。
     19    * KVM 驅動程式的 user-space 介面是 '/dev/kvm',因此 process 可以執行自己的 virtual machine,在一台電腦上也能執行多個 virtual machine。
     20
     21[[BR]]
     22== 4.理論架構 ==
     23[[Image(KVM_arch.png)]]
     24 * Linux as a hypervisor
     25   * 增加虛擬化的能力到標準的Linux Kernel,許多功能可透過Linux同步release來得到(最新的硬體和擴充性等)
     26   * 在KVM Model下,每個VM都為一個可被Linux Scheduler 排程的Process。它的記憶體是透過Linux Memory allocator來分配,概念有點相向於NUMA
     27   *圖可以看到不同的Model
     28      * Guest Model:執行非I/O的guest code
     29      * Kernel Model:負責Guest Model的轉換,管理從Guest Model產生的I/O和特殊指令
     30      * User Model:perform I/O on behalf of the guest
     31   * KVM Components
     32      * KVM 主要有兩個Component
     33        * (1)可管理VM硬體的設備驅動程式
     34
     35        * (2)模擬PC硬體的user-space component,它是一個輕量化修改的QEMU process。
     36      * 修改的QEMU process 負責Guest Model的 map 到實體記憶體和呼叫Kernel Model驅動程式來執行動作
     37      * I/O model直接採用QEMU的特色,並支援copy-on-write disk images
     38    * I/O效能
     39
     40
     41
     42
     43