(三)虚拟化技术重点笔记与总结
聽沈老師的操作系統與虛擬化總結記錄
一、傳統服務器
傳統是煙囪式結構,為應付少量峰值負載而過度配置服務器,導致資源利用率低
缺陷1:據統計數據中心服務器的平均使用率低于 30%,但仍有相當數量的服務器無法滿足其服務水平目標
缺陷2:一個新應用的部署需要歷經預算、采購、安裝測試、上線等過程,周期長達數周至數月,難以及時響應業務需求
缺陷3:服務器數量和管理成本與應用數量呈線性關系,IT管理和成本壓力巨大
“冰山模式”-- 傳統數據中心的成本支出結構:30% 預算用于新基礎設施建設和新應用開發,70% 預算用于現有設施維護和人員支出
亞馬遜最開始只是賣書的,但是后來由于空間比較多,不想浪費,開始賣服務。
二、虛擬化定義與本質
虛擬化本質:將原來運行在真實環境上的計算系統或組件運行在虛擬出來的環中
虛擬化定義:虛擬化是表示計算機資源的抽象方法,通過虛擬化可以用與訪問抽象前資源一致的方法訪問抽象后的資源。這種資源的抽象方法并不受實現、地理位置或底層資源的物理配置的限制 (維基百科)
三、虛擬化常見類型
虛擬化常見類型:基礎設施虛擬化、系統虛擬化、軟件虛擬化
基礎設施虛擬化包括:網絡虛擬化,存儲空間虛擬化;系統虛擬化包括:PC/服務器虛擬化:(系統虛擬化的最大價值所在)、桌面虛擬化;軟件虛擬化包括(讓軟件不依賴操作系統):高級語言虛擬化、應用程序虛擬化。
?
四、虛擬化關鍵技術
1.相關定義與概念
虛擬機系統是通過在現有平臺(裸機或操作系統)上增加一個虛擬層VMM(virtual Machine Monitor或Hypervisor)來實現
VMM是一個系統軟件,可以維護多個高效的、隔離的程序環境. VMM管理計算機系統的真實資源,為虛擬機提供接口
VM(Virtual Machine)指通過軟件模擬的具有完整硬件系統功能的、運行在一個完全隔離環境中的完整計算機系統。
host OS有一些VMM是安裝在已有操作系統之上的,原有操作系統為host OS
2.全虛擬化:
原本的操作系統調直接調用硬件接口,給底層硬件發送的指令是二進制指令,加了一層虛擬機之后,操作系統不能直接調用底層,但依然發送二進制指令,這時候,虛擬機要攔截下指令,由虛擬機完成調用,所以虛擬機要轉換二進制指令。優點在于不需要修改原來的操作系統,缺點在于這種軟件攔截機制開銷比較大。
3.泛虛擬化
操作系統仍然可運行在0環上,更改操作系統內核,以前的二進制指令變成了hypercall調用。優點在于降低了虛擬機的難度,不需要對二進制指令進行轉換了。缺點在于:需要修改OS內核
4.硬件輔助虛擬化
優點在于特權指令調用之時,不需要半虛擬化,也不需要二進制轉換,因為有了硬件的支持。缺點:需要有硬件支持(如Intel VT, AMD SVM)
?
五、VMM的實現技術
1.cpu虛擬化:
指令集通常可分為非特權指令和特權指令兩種。
非特權指令不能改變共享資源的值或狀態。共享資源包括處理器、內存、計時器和特殊目的的寄存器等。非特權指令如算術運算指令、邏輯運算指令等。
特權指令是所有用來訪問共享資源的值或狀態的指令,這類指令包括關機、設置計時器、設置程序計數器、改變重定位寄存器的值和I/O相關的指令。
VMM執行非特權指令,可以直接執行,而對特權指令,則需要仿真執行
為了提高CPU虛擬化的效率,需要用硬件來完成不同層級的切換。在服務器領域,CPU可以把VMM放在-1環。
2.內存虛擬化
VMM必須對物理內存有最終的控制權,也就是說,它必須控制將客戶物理地址空間映射到主機物理地址空間的操作。這樣,才可以順利的實現內存虛擬化
VMM維護一個虛擬機內存管理數據結構——影子頁表(shadow page table)。VMM通過影子頁表給不同的虛擬機分配機器的內存頁,如操作系統虛擬內存一樣,VMM能將虛擬機內存換頁到磁盤,因此,虛擬機申請的內存可以超過機器的物理內存。VMM也可以根據每個虛擬機的要求,動態地分配相應的內存。
操作系統對頁表的頻繁更改增加了更新影子頁表操作的開銷,使用硬件來管理影子頁表將是未來研究的方向。
3.IO虛擬化
用宿主型的體系結構,使用宿主操作系統的I/0設備驅動程序。
缺點:
大大增加了虛擬化的性能開銷;
現代操作系統如Windows和Linux并沒有資源管理的支持為虛擬機提供性能隔離和服務保證,而這是很多服務器環境的基本要求。
I/O子系統的產業趨勢是朝著硬件支持的方向發展。擁有足夠的硬件支持,直接傳送I/O設備到虛擬機中的軟件是完全可能的,這將有效地消除所有I/O虛擬開銷。要做到這一點, I/O裝置需要了解虛擬機的情況和能夠支持多個虛擬接口,以便VMM能安全地映射接口到虛擬機。
Intel VT-d是目前硬件I/O虛擬化的代表
?
總結
以上是生活随笔為你收集整理的(三)虚拟化技术重点笔记与总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (二)操作系统设计技术知识重点笔记
- 下一篇: (一)网络与信息安全概论入门阶段笔记