国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

OpenStack設計與實現(一)虛擬化

kviccn / 562人閱讀

摘要:即使硬件層發生變化,只要硬件抽象層不變,那么操作系統層將察覺不到任何的變化。硬件抽象層上的虛擬化是指通過虛擬硬件抽象層來實現虛擬機,為客戶機操作系統呈現出與物理硬件相同或相近的硬件抽象層。

云計算的一個核心思想就是在服務器端提供集中的物理計算資源,這些計算資源可以被分解成更小的單位去獨立地服務于不同的用戶,也就是在共享物理資源的同時,為每個用戶提供隔離、安全、可信的虛擬工作環境,而這一切不可避免地要依賴于虛擬化技術。

一、虛擬化技術的概述

虛擬化技術對大家來說都不陌生,比如虛擬內存和虛擬服務器等,為了更好的理解虛擬化我們應該首先來了解一下計算機系統的層次結構。

每一層都向上層提供一個抽象,并且每一層只需要知道下層抽象的接口,而并不需要了解其內部運作機制。例如,操作系統看到的是一個硬件抽象層,它并不知道硬件中布線和電器特征。即使硬件層發生變化,只要硬件抽象層不變,那么操作系統層將察覺不到任何的變化。
這種分層有一定的優點。首先,每一層只需要考慮本層的設計以及相鄰層間的交互接口,從而大大的降低了系統設計的復雜性,提高了軟件的移植性。另外,這樣的設計也是給下一層軟件模塊為上一層軟件模塊創造“虛擬世界”提供了條件。
所謂的虛擬化就是有位于下層的軟件模塊,根據上一層軟件模塊的期待,抽象出一個虛擬的軟件或硬件接口,使上一層軟件可以直接運行在與自己所期待的運行環境完全一致的虛擬環境上。
虛擬化可以發生在上圖中的每一個層次上,硬件的虛擬化,操作系統的虛擬化等等,但是對于IaaS(基礎架構即服務)的云計算,更關心的是硬件抽象層上的虛擬化。硬件抽象層上的虛擬化是指通過虛擬硬件抽象層來實現虛擬機,為客戶機操作系統呈現出與物理硬件相同或相近的硬件抽象層。

如上圖所示,系統虛擬化在硬件和操作系統之間引入了一個虛擬化層,虛擬化層提供一個操作系統期望的接口,統一處理操作系統的請求,使得操作系統層感覺不到虛擬化層的存在,任然認為自己在享有整個硬件。每個虛擬計算機系統(虛擬機)都擁有自己的虛擬硬件,并提供一個獨立的虛擬運行環境,通過虛擬機監控器(VMM)的模擬,虛擬機中的操作系統認為自己仍然是獨占一個系統在運行。

二、虛擬化實現方式 1、按照實現方式分

按照實現方式虛擬化可以分為兩種:

VMM直接運行在硬件平臺上,控制所有硬件并管理客戶操作系統。客戶操作系統運行在比VMM更高的級別上,Xen就是采用的這個模型。

VMM運行在一個傳統的操作系統里(第一層軟件),可以看做是第二層軟件,而客戶機操作系統則是第三層了。KVM和VirtualBox就是這種實現。

2、按照VMM所提供的虛擬平臺類型分:

按照VMM所提供的虛擬平臺類型可以分為兩類

(1) 完全虛擬化

VMM虛擬的是現實存在的平臺,并且在客戶機操作系統看來,虛擬平臺和現實平臺是一樣的,客戶機操作系統感覺不到運行在一個虛擬平臺上,現有的操作系統無需進行任何修改就可以在這樣的虛擬平臺上運行,因此這種方式被稱為完全虛擬化。
完全虛擬化中,VMM需要能夠正確處理客戶機操作系統所有可能的行為,或者說正確處理所有可能的指令,完全虛擬化經歷了兩個階段:軟件輔助的完全虛擬化與硬件輔助的完全虛擬化。
在x86虛擬技術的早期,x86體系中沒有在硬件層次對虛擬化提供支持,因此完全虛擬只能靠軟件來實現,典型的做法就是優先級壓縮和二進制代碼翻譯相結合。
優先級壓縮的原理是:將VMM和客戶機的優先級放到同一個CPU中來運行,對應于x86架構,通常VMM在ring0,客戶機操作系統內核在ring1,客戶機操作系統應用程序在ring3。當客戶機操作系統內核執行特權指令時,由于處在非特權的ring1,通常會觸發異常,VMM截獲后就可以進行特權指令的虛擬化。但是x86指令體系結構在設計之初并沒有考慮到虛擬化,一小部分特權指令在ring1中沒有觸發異常,VMM也就不能進行截獲進行虛擬化,所以就需要用二進制代碼翻譯來處理這些不友好的指令。
二進制代碼翻譯的原理:VMM通常會對操作系統的二進制代碼進行掃描,一旦發現虛擬化不友好的指令,就將其替換成支持虛擬化的指令塊。
Intel的VTx技術是硬件輔助虛擬化的代表。VTx技術在處理器上引入了一個新的執行模式用于運行虛擬機。當虛擬機運行在這個特殊模式中時,他仍然面對一套完整的處理器寄存器和執行環境,只是任何特權操作都會被處理器截獲并報告給VMM。VMM本省就運行在正常模式下,在接收到處理器的報告后,通過對目標指令的解碼,找到相應的虛擬化模塊進行模擬,并把最終的效果反映在特殊的環境中。

(2) 類虛擬化

類虛擬化虛擬出的平臺在現實中是不存在的,而是經過VMM重新定義的。這樣的虛擬平臺需要對所運行的客戶機操作系統進行或多或少的修改使之能夠適應虛擬環境,客戶機操作系統也就知道自己運行在虛擬平臺上,并且會主動去適應。
類虛擬化是通過在源代碼級別修改指令以回避虛擬漏洞的方式來使VMM能夠對物理資源實現虛擬化。對于x86中難以虛擬化的指令,類虛擬化采取的方式是修改操作系統內核代碼,使得操作系統內核完全避免這些難以虛擬化的指令。

三、虛擬機動態遷移

動態遷移是虛擬化特有的新特性,它將虛擬機從一個物理機快速遷移到另一個物理機,但是虛擬機里面的程序和網絡都保持連接。從用戶的角度來看,動態遷移對虛擬機的可用性沒有任何影響,用戶不會察覺任何的服務被中斷。
動態遷移實現的方法是在目的服務器上建立一臺同樣配置的新虛擬機,然后不斷地在兩個虛擬機之間同步各種內部狀態,比如內存、外設、CPU等。等狀態同步完成后,關掉老的虛擬機,啟動新的虛擬機。

原文鏈接: http://blog.csdn.net/xingjiarong/article/details/50542523

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/11494.html

相關文章

  • 云計算戰爭:OpenStack vs VMware—定位分析、功能對比、發展趨勢

    摘要:和的云計算功能特點對比正式這個戰爭或者說趨勢的一個生動寫照。總而言之,目前調度器將只會對部署虛擬機環節有影響。目前有一個孵化項目其作用是為提供虛擬機級別高可用支持。容錯在中沒有針對于容錯的功能,并且截至目前也沒有計劃去完成這些功能。 OpenStack中國社區編者按:在云計算生態系統中,有兩種類型的用戶需要使用云計算資源:傳統型(Traditional IT applications)和在互...

    shiyang6017 評論0 收藏0
  • 云計算戰爭:OpenStack vs. VMware

    摘要:和的云計算功能特點對比正是這個戰爭或者說趨勢的一個生動寫照。在設計方面稍占優勢,這源于它優秀的文檔資料以及便捷易用的部署和管理接口。總而言之,目前調度器將只會對部署虛擬機環節有影響。 在云計算生態系統中,有兩種類型的用戶需要使用云計算資源:傳統型(Traditional IT applications)和在互聯網大潮下逐漸崛起云計算應用型(Cloud-aware applications)。...

    李濤 評論0 收藏0
  • OpenStack設計實現(二)Libvirt簡介實現原理

    摘要:一簡介是由開發的一套開源的軟件工具,目標是提供一個通用和穩定的軟件庫來高效安全地管理一個節點上的虛擬機,并支持遠程操作。用戶只關心高層的功能,而的實現細節,對于最終用戶應該是透明的。本機之間的通信在初始化的過程中,所有的驅動被枚舉和注冊。 一、Libvirt簡介 Libvirt是由Redhat開發的一套開源的軟件工具,目標是提供一個通用和穩定的軟件庫來高效、安全地管理一個節點上的虛擬機...

    zzir 評論0 收藏0
  • OpenStack虛擬云桌面在攜程呼叫中心的應用

    摘要:一為什么要使用虛擬云桌面背景攜程呼叫中心,即服務聯絡中心,是攜程的核心部門之一,現有幾萬員工。他們全年小時為全球攜程用戶提供服務。為此,攜程正式引入了虛擬云桌面。攜程云桌面現狀攜程云桌面現已部署上海南通如皋合肥信陽穆棱六個呼叫中心。 編者:本文為劉科在第六期【攜程技術微分享】中的分享內容。在攜程技術中心(微信號ctriptech)微信后臺回復【云桌面】,可加入微信交流群,和關注云桌面的...

    EsgynChina 評論0 收藏0
  • OpenStack虛擬云桌面在攜程呼叫中心的應用

    摘要:一為什么要使用虛擬云桌面背景攜程呼叫中心,即服務聯絡中心,是攜程的核心部門之一,現有幾萬員工。他們全年小時為全球攜程用戶提供服務。為此,攜程正式引入了虛擬云桌面。攜程云桌面現狀攜程云桌面現已部署上海南通如皋合肥信陽穆棱六個呼叫中心。 編者:本文為劉科在第六期【攜程技術微分享】中的分享內容。在攜程技術中心(微信號ctriptech)微信后臺回復【云桌面】,可加入微信交流群,和關注云桌面的...

    biaoxiaoduan 評論0 收藏0

發表評論

0條評論

kviccn

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<