- 物聯(lián)網(wǎng)嵌入式技術(shù)項(xiàng)目教程
- 張小恒 李靜主編
- 2247字
- 2023-06-28 16:06:04
1.1.4 虛擬機(jī)嵌入式開發(fā)相關(guān)知識(shí)
虛擬機(jī)(Virtual Machine,VM)是指通過軟件模擬的具有完整硬件系統(tǒng)功能的、運(yùn)行在一個(gè)完全隔離環(huán)境中的完整計(jì)算機(jī)系統(tǒng)。在實(shí)體計(jì)算機(jī)中能夠完成的工作在虛擬機(jī)中都能夠?qū)崿F(xiàn)。在計(jì)算機(jī)中創(chuàng)建虛擬機(jī)時(shí),需要將實(shí)體機(jī)的部分硬盤和內(nèi)存容量作為虛擬機(jī)的硬盤和內(nèi)存容量。每個(gè)虛擬機(jī)都有內(nèi)存、硬盤和操作系統(tǒng),可以像使用實(shí)體機(jī)一樣對(duì)虛擬機(jī)進(jìn)行操作。
1.資源配置
虛擬機(jī)資源涉及多個(gè)方面,如CPU、內(nèi)存、網(wǎng)絡(luò)以及磁盤。在規(guī)劃虛擬機(jī)時(shí)應(yīng)該考慮這些資源之間的關(guān)系,如果分配資源不合理,將會(huì)導(dǎo)致虛擬機(jī)內(nèi)的應(yīng)用程序性能表現(xiàn)不佳。
(1)CPU
虛擬機(jī)的每個(gè)虛擬CPU(vCPU)只運(yùn)行在一個(gè)物理核心之上,因此CPU頻率越高虛擬機(jī)的運(yùn)行速度也就越高,vCPU數(shù)量越多越有助于提升應(yīng)用的性能表現(xiàn)。如果虛擬機(jī)需要占用大量的CPU時(shí)間,那么可以考慮為虛擬機(jī)分配第二個(gè)vCPU,但是為虛擬機(jī)分配兩個(gè)以上vCPU并不一定能讓應(yīng)用運(yùn)行得更快,因?yàn)橹挥卸嗑€程應(yīng)用才能有效地使用多個(gè)vCPU。
(2)RAM
RAM資源通常有限,因此在給虛擬機(jī)分配RAM時(shí)需要格外小心。物理內(nèi)存被完全占用后,必須確定哪些虛擬機(jī)能夠保留物理內(nèi)存,哪些虛擬機(jī)要釋放物理內(nèi)存,這稱為“內(nèi)存回收”。當(dāng)虛擬機(jī)占用的物理內(nèi)存被回收后,存在的一個(gè)風(fēng)險(xiǎn)就是會(huì)對(duì)虛擬機(jī)的性能造成影響。虛擬機(jī)被回收的內(nèi)存越多,相應(yīng)的風(fēng)險(xiǎn)也就越大。最明智的做法是只為虛擬機(jī)分配完成工作所需要的內(nèi)存。分配額外的內(nèi)存將會(huì)增加回收風(fēng)險(xiǎn)。
(3)網(wǎng)絡(luò)帶寬
網(wǎng)絡(luò)帶寬包括兩方面:一是虛擬機(jī)和虛擬交換機(jī)之間的帶寬,二是虛擬交換機(jī)與外部網(wǎng)絡(luò)之間的帶寬。對(duì)于與外部物理網(wǎng)絡(luò)的連接,一定要確保主機(jī)具備速度最快的物理網(wǎng)卡。進(jìn)行大量網(wǎng)絡(luò)傳輸?shù)奶摂M機(jī),虛擬機(jī)以及數(shù)據(jù)包的傳輸都會(huì)消耗CPU時(shí)間。因此,運(yùn)行在CPU受限的服務(wù)器之上的虛擬機(jī)由于CPU無法快速響應(yīng)請(qǐng)求可能會(huì)面臨網(wǎng)絡(luò)吞吐量不高的情況。
(4)磁盤性能
磁盤性能往往是制約虛擬機(jī)性能的關(guān)鍵因素。虛擬機(jī)磁盤性能受陣列磁盤數(shù)量、類型以及運(yùn)行在其上的虛擬機(jī)數(shù)量的限制。因?yàn)榧械毓蚕泶鎯?chǔ)架構(gòu)將導(dǎo)致通過同一位置訪問所有的虛擬機(jī)磁盤,陣列的存儲(chǔ)控制器以及磁盤過載情況很容易出現(xiàn),只剩下虛擬機(jī)在等待存儲(chǔ)的響應(yīng)。虛擬機(jī)等待磁盤I/O、虛擬機(jī)CPU空閑對(duì)性能的影響有很大不同。等待I/O的虛擬機(jī)無法做其他工作,因此高I/O等待時(shí)間意味著性能肯定會(huì)下降。進(jìn)行周密的存儲(chǔ)設(shè)計(jì)以避免上述情況的發(fā)生至關(guān)重要。
2.主要用途
(1)演示不同環(huán)境
虛擬機(jī)上可以安裝各種演示環(huán)境,便于進(jìn)行各種演示。
(2)減小主機(jī)程序負(fù)擔(dān)
為保證主機(jī)的快速運(yùn)行,減少安裝不必要不常用的程序,偶爾使用的程序或者測(cè)試用的程序可以在虛擬機(jī)上運(yùn)行。
(3)方便復(fù)雜性、保密性應(yīng)用
虛擬機(jī)可避免每次重新安裝系統(tǒng),可將不常用且保密要求較高的軟件(如銀行類的常用工具)單獨(dú)放在一個(gè)環(huán)境下運(yùn)行。
(4)方便特殊應(yīng)用測(cè)試
如果需要測(cè)試不熟悉的應(yīng)用,可以在虛擬機(jī)中隨便安裝和徹底刪除。
(5)同時(shí)使用多個(gè)操作系統(tǒng)
虛擬機(jī)同時(shí)使用不同操作系統(tǒng)十分方便,如Linux、Mac等系統(tǒng)都有多個(gè)不同版本,直接在主機(jī)中安裝代價(jià)極大,且無法同時(shí)使用和快速切換,這時(shí)可以采用虛擬機(jī),安裝不同的操作系統(tǒng)。
3.常用虛擬機(jī)軟件
(1)VMware Workstation
1999年,VMware公司發(fā)布了第一款產(chǎn)品——基于主機(jī)模型的虛擬機(jī)VMware Workstation。2001年又推出了面向服務(wù)器市場(chǎng)的VMware GSX Server和VMware ESX Server。
VMware Workstation可以同時(shí)運(yùn)行各種Linux發(fā)行版、DOS、Windows的各種版本、UNIX等,甚至可以在同一臺(tái)性能強(qiáng)大的計(jì)算機(jī)上安裝多個(gè)Linux發(fā)行版、多個(gè)Windows版本。
VMware Workstation的優(yōu)點(diǎn)如下。
1)可同時(shí)在同一臺(tái)PC上運(yùn)行多個(gè)操作系統(tǒng),每個(gè)操作系統(tǒng)都有自己的虛擬機(jī),就如同網(wǎng)絡(luò)上一個(gè)獨(dú)立的PC。
2)同時(shí)運(yùn)行的兩個(gè)虛擬機(jī)之間可以相互進(jìn)行對(duì)話,一個(gè)虛擬機(jī)處于全屏模式,另一個(gè)虛擬機(jī)在后臺(tái)運(yùn)行。
3)在虛擬機(jī)上安裝同一種操作系統(tǒng)的多個(gè)發(fā)行版,不需要重新對(duì)硬盤進(jìn)行分區(qū)。
4)虛擬機(jī)之間共享文件、應(yīng)用、網(wǎng)絡(luò)資源等。
5)可以運(yùn)行客戶機(jī)-服務(wù)器(Client-Server,C/S)方式的應(yīng)用,也可以在同一臺(tái)計(jì)算機(jī)上使用另一臺(tái)虛擬機(jī)的所有資源。
(2)Parallels Desktop
Parallels Desktop是適用于Mac OS平臺(tái)的虛擬機(jī)解決方案。可同時(shí)在一臺(tái)Mac OS計(jì)算機(jī)上隨時(shí)訪問Windows和Mac兩個(gè)系統(tǒng)上的應(yīng)用程序而無須重啟。相較VMware,Parallels Desktop無須重啟,在兩個(gè)系統(tǒng)同時(shí)運(yùn)行期間可以實(shí)現(xiàn)文件互傳、素材共用。
此外,該虛擬機(jī)的融合模式(Coherence)支持不顯示W(wǎng)indows界面但是仍可使用Windows應(yīng)用程序,或者在Mac OS上保留熟悉的Windows背景與“開始”菜單。同時(shí)運(yùn)行Windows與Mac OS兩種應(yīng)用程序的方式都不會(huì)對(duì)性能產(chǎn)生任何影響。
多虛擬機(jī)支持Windows、Linux、Chrome OS、Mac OS、Android OS等。
Parallels Desktop優(yōu)點(diǎn)如下。
1)無縫集成,在Mac設(shè)備上也能使用Siri與Cortana,它還支持iCloud、Dropbox與Google Drive。
2)性能較好,比如暫停虛擬機(jī)與重啟操作系統(tǒng)的速度較VMware Fusion 8.5快了3倍,可以實(shí)時(shí)優(yōu)化虛擬磁盤,只有在實(shí)際需要時(shí)才會(huì)占用空間。
3)方便開發(fā),免費(fèi)為Docker、Jenkins和Chef等常用開發(fā)工具提供支持。
(3)Virtual PC
Virtual PC是微軟公司的虛擬化技術(shù)。允許在一個(gè)計(jì)算機(jī)上同時(shí)運(yùn)行多個(gè)PC操作系統(tǒng),包括DOS、Windows、Windows Server 2003、UNIX、Linux等,比如在Windows里運(yùn)行Windows和Linux。在較新的操作系統(tǒng)中運(yùn)行Virtual PC虛擬機(jī)可以為傳統(tǒng)應(yīng)用提供安全環(huán)境以保持兼容性,它可以保存重新配置時(shí)間,方便相關(guān)支持和開發(fā)工作。
Virtual PC的優(yōu)點(diǎn)如下。
1)兼容性好,和大多數(shù)Windows系統(tǒng)的兼容性是最好的。
2)占用內(nèi)存小,使用方便。
3)對(duì)網(wǎng)絡(luò)的支持好,安裝完成系統(tǒng)后配置一下IP即可上網(wǎng)。
(4)Oracle VirtualBox
VirtualBox是由Oracle公司出品的軟件。
VirtualBox主要支持的操作系統(tǒng)包括:Linux、Mac OS、OpenSolaris、Solaris 10、Windows等。
值得注意的是VirtualBox是開源軟件,目前新版本已更新至VirtualBox 6.1.32。
VirtualBox的優(yōu)點(diǎn)如下。
1)小巧精悍,安裝文件下載方便,安裝占用的硬盤空間較小。
2)官網(wǎng)發(fā)布支持更新更多操作系統(tǒng)類型的速度比VMware WorkStation更快。
3)開源免費(fèi)。
- 報(bào)關(guān)原理與實(shí)務(wù)(第二版)
- “湖南智造”背景下高職“雙元雙創(chuàng)”人才培養(yǎng)模式研究與實(shí)踐
- 服裝貿(mào)易單證實(shí)務(wù)(第2版)
- 版式設(shè)計(jì)
- 商品知識(shí)與實(shí)務(wù)
- 電機(jī)與電氣控制技術(shù)
- 預(yù)算會(huì)計(jì)
- 電子技術(shù)基礎(chǔ)
- 計(jì)算機(jī)應(yīng)用基礎(chǔ)教程題庫(kù)(Windows XP+Office 2003)
- 食品專業(yè)英語
- 專業(yè)認(rèn)知與職業(yè)規(guī)劃(電子信息類)
- 報(bào)關(guān)單填制(高職高專經(jīng)管類工學(xué)結(jié)合系列教材)
- 機(jī)械設(shè)計(jì)(上冊(cè))
- 汽車制造質(zhì)量管理與控制
- 工務(wù)安全與應(yīng)急處理