日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Virtualization基础

發布時間:2025/3/14 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Virtualization基础 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

官方文檔學習

  https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/pdf/Virtualization_Getting_Started_Guide/Red_Hat_Enterprise_Linux-7-Virtualization_Getting_Started_Guide-en-US.pdf

?

CPU虛擬化

模擬 emulation

  對于CPU來說,需要模擬ring 0、1、2、3

  虛擬機內核運行在ring 1上

  

虛擬 virtualization

  完全虛擬化 full-virtualization

    對于CPU來說,需要虛擬ring 0

    虛擬機內核運行在ring -1 上

    Guest認為自己直接運行在物理主機上,沒有意識到自己是虛擬機

    BT 二進制翻譯,基于軟件的方式

    HVM 硬件輔助的虛擬化,基于底層硬件支持虛擬化指令集

  半虛擬化 para-virtualization

    Guest清楚的知道自己是虛擬機

    如果虛擬機要運行特權指令,但這條特權指令不會影響到其它的虛擬機和物理機,則由虛擬機的內核直接調用硬件資源,減少了中間的指令轉換層

    如果虛擬機要運行的特權指令,會影響虛擬機和物理機,則發出hyper call,交由hypervisor調用硬件資源

?

Memory虛擬化

在虛擬機中

  Shadow Page Table 實現虛擬機中邏輯地址到虛擬機物理地址的轉換

    MMU 將虛擬機的物理地址轉換為物理主機的物理地址

    GVA ---> GPA ---> HPA

  MMU Virtualization 硬件實現,能使得虛擬機中的邏輯地址直接轉換成為物理主機的物理地址

    Intel EPT Extended Page Table

    AMD NTP Nested Page Table

    GVA ---> HPA

  TLB Virtualization

    Translation Lookaside Buffer 轉換檢測緩沖區是一個內存管理單元

    tagged TLB

      存儲虛擬機中邏輯地址到物理機的物理地址的轉化

?

I/O虛擬化

  存儲設備

    硬盤、光盤、U盤、軟盤

  網絡設備

    網卡

  顯示設備

    VGA

      frame buffer機制

      給每個驅動一個緩沖窗口,一般使用完全虛擬化

  字符設備

    鍵盤

      ps/2、usb

    鼠標

      ps/2、usb

    使用焦點捕獲方式,將字符設備和虛擬機建立臨時關聯,一般使用完全虛擬化

  I/O虛擬化方式

    完全虛擬化

      完全使用軟件來模擬真實硬件

      適用于所有的設備

    半虛擬化

      移除了虛擬機中不必要的模擬驅動使用,而是調用I/O前端驅動,I/O前端驅動和物理主機上的I/O后端驅動交互,從而直接調用物理驅動

      通常僅適用于

        磁盤、網卡

      IO-through IO透傳

        讓虛擬機直接使用物理設備,仍然需要hypervisor協調

        需要硬件支持透傳技術

          Intel VT-d

            在IO MMU層隔離各虛擬機的IO數據,避免因為集中的DMA設備管理,導致多虛擬機的IO數據混淆

            并且還能完成中斷映射的對應關系,明確各IO中斷對應的處理虛擬機

            基于北橋的硬件輔助的虛擬化技術,主要提升I/O設備可靠性、靈活性以及性能

?

虛擬化技術兩種實現

  Type-I

    hypervisor ---> vm

    Xen、RHEV、ESXi

  Type-II

    host vmm ---> vms

    KVM、VMware Workstation、Virtual Box

    依賴底層操作系統

?

KVM、Xen缺陷

  它們都不能完整意義上的實現IO,必須通過qemu、virtio實現IO傳輸

?

虛擬化技術分類

  模擬

    PearPC

    Bochs

    QEMU

    (模擬器)

  完全虛擬化

    native virtualization

    底層硬件架構必須和虛擬機架構一致

    VMware Workstation、VMware Server、Parallels Desktop、KVM、Xen(HVM)

  半虛擬化

    para-virtualization

    底層硬件架構必須和虛擬機架構一致

    xen、uml(user-mode linux)

  OS級別虛擬化

    OpenVZ

    lxc

    Solaris Containers

    FreeBSD jails

    (性能好)

  庫虛擬化

    wine

    在Linux上模擬Windows庫,可以玩Windows上的游戲、軟件

  應用程序虛擬化

    jvm

?

TUN與TAP

  在計算機網絡中,TUN與TAP是操作系統內核中的虛擬網絡設備。不同于普通靠硬件網卡實現的設備,這些虛擬的網絡全部用軟件實現,并向運行于操作系統上的軟件提供與硬件網絡設備相同的功能

  TAP等同于一個以太網設備,它操作第二層數據包如以太網數據幀

  TUN模擬了網絡層設備,操作第三層數據包比如IP數據包

  操作系統通過TUN/TAP設備向綁定該設備的用戶空間的程序發送數據。反之,用戶空間的程序也可以像操作硬件網絡設備那樣,通過TUN/TAP設備發送數據,數據包投遞至操作系統的網絡棧,從而模擬外部接受數據的過程

?

虛擬化網絡

  nat

  bridge

  route

  isolation

?

網橋設備管理

NetworkManager不支持橋設備管理

1 chkconfig NetworkManager off 2 chkconfig networ on

?

橋設備管理軟件包安裝

1 yum install -y bridge-utils

?

編輯橋配置文件

cp ifcfg-eth0 ifcfg-br0vim ifcfg-br0DEVICE=br0NM_CONTROLLED=noTYPE=Bridge# 下面IP、掩碼、DNS直接使用原網卡的# 如果有mac地址最好刪除掉 vim ifcfg-eth0# 將 IP、掩碼、DNS等刪除BRIDGE=br0service network restart

?

使用brctl配置橋設備(不持久)

brctl addbr br0brctl stp br0 on ifconfig eth0 0 upbrctl addif br0 eth0ifconfig br0 IP/NETMASK uproute add default gw GW_IP

?

轉載于:https://www.cnblogs.com/cq146637/p/8893627.html

總結

以上是生活随笔為你收集整理的Virtualization基础的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。