導航:首頁 > 編程語言 > 嵌入式虛擬機管理程序

嵌入式虛擬機管理程序

發布時間:2023-09-06 15:56:37

① Hyper-V VS VirtualBox,Windows基礎虛擬化架構大比拼

隨著雲和容器技術的流行,不可否認現在的基礎架構正在趨向虛擬化。基於不同平台市面上有很多的虛擬化架構:Xen,Vmware,KVM,VirtualBox各領風騷,各具特色,本文蟲蟲來講講Windows系統下常用的兩種虛擬化解決方案VirtualBox和Hyper-V,注意本文不討論Vmware,如果你是Vmware的擁躉請不要介意。

Hypervisor虛擬機監視器用來管理虛機機和虛擬化基礎設備的特殊軟體,通過Hypervisor可以在宿主機上虛擬化出虛擬機和基礎架構設備出來。Hypervisor分為兩種類型:

Hyper-V屬於Type 1虛擬機管理程序,也稱為裸機型虛擬機管理程序,可直接在計算機硬體上運行。當宿主機啟動時,Hyper-V管理程序將從BIOS或UEFI獲取控制權,啟動Hyper-V管理操作系統包括Hyper-V Server,Windows或Windows Server。根據不同需求和設置,虛擬機VMs支持手動或者自動啟動。VMware vSphere、思傑 XenServer也屬於該類。

VirtualBox屬於Type 2的虛擬機管理程序,也叫託管型虛擬機管理程序。Type 2管理程序是在宿主機操作系統上運行,為安裝在宿主機上的應用程序。當物理計算機啟動時,宿主機操作系統載入獲得控制權。由用戶啟動虛擬機管理程序應用程序(比如VirtualBox),再啟動虛擬機VMs,創建VMs託管進程。KVM和Vmware WorkStaion也屬於該類。

宿主機啟動後,Hyper-V作為服務會一直保持運行,VirtualBox可由用戶按需啟動和關閉。

Hyper-V支持硬體虛擬化。硬體虛擬化是一種使用虛擬機管理程序在軟體和物理硬體之間創建抽象層以計算機虛擬技術。使用特殊軟體模擬計算機正常功能所需的所有設備。

VirtualBox支持硬體和軟體虛擬化。軟體虛擬化只支持x86體系結構的32位客戶機操作系統。64位客戶系統,僅在硬體虛擬化中使用。軟體虛擬化支持,可以極大的擴展VirtualBox可以不支持硬體虛擬化的老計算機上。

Hyper-V虛擬機的虛擬磁碟格式為VHD或VHDX文件。VHD是Hyper-V舊的虛擬磁碟格式。從Windows Server 2012開始,Hyper-V,虛擬磁碟格式更新為VHDX格式了。

VirtualBox支持更多格式的虛擬磁碟包括VDI,VMDK,VHD和DD:

VDI是VirtualBox自用格式

MDK是VMware虛擬磁碟格式

VHD是Hyper-V格式(VirtualBox暫不支持VHDX)

HDD是Parallels Desktop格式

Hyper-V和VirtualBox中都支持固定大小的磁碟和動態分配的磁碟形式。固定虛擬磁碟創建更耗時,佔用的實體機磁碟空間更多,但是其性能更好。動態虛擬磁碟支持即時創建,磁碟空間按照實際使用增長,但其性能不如固定虛擬磁碟。

微軟自家的軟體Hyper-V和大多數微軟應用一樣,只支持Windows系列操作系統上運行。 Hyper-V開始在Windows 8中內置,支持Windows,Windows Server 2008到以及更新版本的伺服器平台。

Virtual Box是一個跨平台軟體,可以支持市面所有主流的操作系統包括Windows,linux,Mac OS和Solaris等。

如果主要在Windows上跑虛擬架構,則可以優先使用Hyper-V。包括windows for Docker現在也是默認使用Hyper-V的。如果你是多平台環境,比如用Mac book,也用windows,那麼使用跨平台的VirtualBox具有得天獨厚的優勢。

客戶機OS是在虛擬機上VMs運行的操作系統。關於虛擬機上兩者都支持多平台的客戶虛機機OS。 Hyper-V支持Windows,Linux和FreeBSD操作系統。

VirtualBox支持的OS類型則更多: Windows,Linux,FreeBSD,Solaris,Mac OS等。

Hyper-V Integration Services由基本驅動程序和實用工具組成,可以用來提高整體性能及主和客機操作OS間的交互。Integration Services安裝客戶機OS上。在Windows系統上,可以通過將虛擬光碟映像(ISO文件)附加到VM(包括安裝程序)或通過Windows Update來安裝。對Linux系統,主流的發行版內核都已內置對Integration Services支持。

類似的VirtualBox Guest Additions也包含驅動程序基本和系統應用工具,用來可優化來客戶機OS,提高其性能和可用性。安裝Guest Additions後,可以支持拖放,剪貼板共享,屏幕自動調整大小以及無縫模式。安裝過程和Hyper-V Integration Services類似,將ISO光碟映像與安裝程序附加到VM,然後在GUI或命令行安裝Guest Additions。

Port Mirroring是Hyper-V的網路流量分析工具。此功能可以讓我們將所有接收和發送的數據包的副本從一個埠發送到另一個埠,然後再進一步分析,相當於一個旁路網路包分析工具。我們可以創建一個虛擬機,其虛擬網路適配器連接到相應的虛擬交換機埠,在該虛擬機上安裝數據包分析軟體,通過他對整個集群多台虛擬機的網路數據包進行分析。

VirtualBox則自帶網路跟蹤功能,可以使用該功能啟用網路數據包日誌記錄,然後通過日誌分析網路行為。因此,VirtualBox利用內置功能將所有捕獲的虛擬機網路介面流量寫到PCAP文件中。之後就可以利用包分析工具(比如Wireshark)進行分析中。可以在需要時候使用命令行界面啟動網路跟蹤記錄日誌。

共享文件夾對於不同機器之間的文件交換很有用。可以使用該方法實現宿主機和虛擬機之間的文件共享。

Hyper-V本身不支持文件夾共享,可以通過Windows GUI或PowerShell在宿主機共享文件夾,並為虛擬機用戶指或賦予訪問許可權訪問。還可以使用Copy-VMFile PowerShell工具在宿主機和虛擬機之間進行文件復制。

VirtualBox內置文件夾共享功能,可以在VirtualBox用戶界面輕松啟用。使用共享文件夾在VirtualBox主機和客戶機之間傳輸文件非常方便。可以通過打開"VM Setting",然後選擇"Shared Folders。添加共享標簽頁:設置文件夾路徑,輸入將在客戶機中要顯示文件夾的名稱。

注意,必須在客戶機操作系統上安裝VirtualBox Guest Additions才可以使用該功能。

文件拖放是,可以實現將文件或文件夾等對象從屏幕的一個部分移動到另一個部分。在虛擬化環境的中,通過拖放可以將文件或文件夾在宿主機和客戶機之間拖動傳輸。 Hyper-V和VirtualBox產品都支持拖放功能,但是都需要在客戶機上安裝對應的Hyper-V Integration服務和VirtualBox Guest Additions。登錄Hyper-V VM時使用增強會話模式。

Hyper-V Checkpoints可以支持對虛擬機當前運行狀態的保存,然後停掉虛擬機,並在後面需要時候恢復到該運行狀態。新版本的Hyper-V中有兩種類型的Checkpoints:標准Checkpoints和生產Checkpoints。與標准Checkpoints不同,生產Checkpoints支持對Windows的虛擬機使用VSS卷影復制服務,支持對Linux的虛擬機使用文件系統凍結來凍結虛擬機以防止對虛擬磁碟執行寫入操作。使用凍結可以避免由於標准Checkpoints保存時候導致的數據丟失問題造成數據不一致。創建Checkpoints時,會為虛擬機的每個VHD(或VHDX)虛擬磁碟創建差異虛擬磁碟(AVHD或AVHDX)。創建Checkpoints後,所有更改都會寫入差異磁碟。差異虛擬磁碟與父虛擬磁碟一起存儲在同一目錄中。

VirtualBox Snapshots相當於Hyper-V Checkpoints。可以使用Snapshots保存當前虛擬機運行狀態,並在需要時還原。 VDI是VirtualBox中使用的虛擬磁碟文件格式。創建快照時,會將新的差異虛擬磁碟創建為新的VDI文件。

Hyper-V Live Migration可以實現將運行中的VM從一台Hyper-V宿主機無縫遷移到另一台宿主機,遷移過程不會導致長時間服務中斷。該功能可以用於故障轉移群集的轉移和業務切換,從而提供虛擬架構的高可用性。建議為Hyper-V故障轉移群集使用專用遷移網路,VM文件(如虛擬磁碟)必須位於共享存儲上。

VirtualBox Teleporting也是一種虛擬機遷移功能和解決方案。通過Teleporting從網路中將虛擬機從一台VirtualBox宿主機移動到另一台VirtualBox宿主機,而不會影響虛機的運行,遷移要求兩台宿主機使用同樣的共享存儲,宿主機可以是不同的操作系統。比如,可以將運行在Linux宿主機上的Windows虛擬機遷移到Solaris宿主機上。

Hyper-V VMConnect是用來遠程訪問虛擬機的GUI或控制台界面的工具。可以使用VMConnect來管理虛機,通過VMConnect的WMI(Windows Management Instrumentation)服務。可以實現鍵盤和滑鼠與虛擬機OS的交互,支持鏈接本地虛擬機也可以連接遠程的虛擬機。安裝Hyper-V角色時,默認情況已經啟用了VMConnect。如果未安裝,可以通過"添加功能向導"中添加"Hyper-V工具"功能。 VMConnect 使用Microsoft遠程桌面協議(RDP)進行連接和通訊。

VMConnect增強會話模式還允許將本地設備和資源重定向給虛擬機。支持對剪貼板,磁碟驅動器,USB快閃記憶體驅動器,音頻,列印機和顯示器進行重定向。

VirtualBox包含管理虛擬機的工具Remote Display,可以使用本地計算機上的VirtualBox GUI管理在本地計算機上運行的虛擬機。 VirtualBox Remote Desktop Extension(VRDE)是一般性的擴展介面,可為第三方開發的擴展包提供最大的靈活性。 VRDE可兼容Microsoft RDP。 VirtualBox Remote Display Protoco(VRDP)在VRDE擴展包提供,它向後兼容RDP,可以使用它,通過標准RDP客戶端來遠程式控制制虛擬機。

Hyper-V Manager是 Hyper-V提供的 GUI虛擬機管理工具,可幫助我們管理Hyper-V 虛擬機機集群。使用它執行虛擬機的創建,導入,配置,啟動,停止和刪除等操作。可以只用於管理虛擬機基礎設備,比如虛擬交換機,虛擬硬碟,創建Checkpoints,使用VMConnect連接到客戶操作系統界面等。也可以通過遠程管理Hyper-V集群。

phpVirtualBox是一個開源工具的VirtualBox Web管理工具,該工具用PHP編寫,通過他可以管理遠程VirtualBox實例。phpVirtualBox提供了一個與VirtualBox GUI界面相同的界面,可以在瀏覽器中遠程管理VirtualBox集群,如果不需要對客戶機界面操作,則完全可以用他實現VirtualBox的管理。

Hyper-V可以通過PowerShell來管理,使用PowerShell可以編程自定義Hyper-V及其主機配置和管,對大型Hyper-V集群來說,這尤為方便。

VBoxManage是VirtualBox的命令行界面(CLI),通過VBoxManage可以實現VirtualBox GUI中的所有可用的功能以及更多非GUI的功能,支持多平台、自編程,自動化批量執行能的功能。

Hyper-V和VirtualBox非常好的虛擬化的解決方案,孰好孰壞,根據環境和需求可能不定論。Hyper-V是 type 1虛擬機管理程序,而VirtualBox 是type2型虛擬機管理程序。 Hyper-V只支持於Windows系統上,而VirtualBox支持跨平台。Hyper-V支持群集功能,例如故障轉移群集和負載平衡。對於已經使用Windows基礎環境,Hyper-V虛擬化解決方案是個不錯的選擇。Oracle VirtualBox開源免費的,具有最大宿主機和客戶機OS支持的虛擬化架構,更適合於多平台環境。Hyper-V可以作為windows系統服務運行,開機就可以自動啟動虛擬機,而VirtualBox要做到同樣功能則比較費勁。

② 虛擬機怎麼安裝嵌入式linux

1、准備安裝文件,一般是一個安裝可執行文件和一個破解key生成器,安裝後一路next到最後,生成一個能用的key復制進去就完成了VMware軟體安裝;
2、運行軟體,建立一個新的虛擬機,起個名字,或者直接選擇RedHatLinux,然後選擇虛擬機存放位置,一般在一個區空出8-10G就可以了,注意:存放的區必須是Fat32格式,否則在安裝系統格式化硬碟的時候會出現硬體錯誤,另外這個時候VM/setting選擇硬體設置,一般要做嵌入式開發工作,把llel和serial選上加進去就可以了,注意是物理硬體,如果你壓根沒有這兩個介面就算了吧。
3、建立好了,OK,放入系統安裝盤或者直接載入鏡像,注意:默認CD-ROM是最後的光碟機盤符,而往往這是虛擬光碟機,這常常導致總是無法找到自啟動光碟機的錯誤,要改成指向你的物理光碟機盤符,同樣是在VM/setting硬體設置修改。
4、安裝系統,和正常機器一樣操作。以安裝RedHatLinux為例,swap撥給512M,根目錄撥給7-8G,選擇完全安裝,然後開始漫長的等待(默認虛擬機內存256M,比較慢),換三張CD,Linux安裝完畢。
5、為了更好的、更方便地在虛擬機環境下開發,VM-Tools是十分有必要安裝的。首先確認管理員許可權,選中 VM/InstallVMtools安裝,會自動載入一張虛擬光碟,解壓運行對應的.tar.gz,一路enter,設置自己的顯示格式,就完成了,會看到VMWare小組的Enjoy祝福

③ 嵌入式系統如何開發的

嵌入式系統開發就是對於除了電腦之外的所有電子設備上操作系統的開發,開發對象有手機,掌上電腦,機電系統等。
嵌入式系統開發流程:

第一步:建立開發環境
操作系統一般使用Redhat Linux,選擇定製安裝或全部安裝,通過網路下載相應的GCC交叉編譯器進行安裝(比如,arm-linux-gcc、arm-uclibc-gcc),或者安裝產品廠家提供的相關交叉編譯器;
第二步:配置開發主機
配置MINICOM,一般的參數為波特率115200 Baud/s,數據位8位,停止位為1,9,無奇偶校驗,軟體硬體流控設為無。在Windows下的超級終端的配置也是這樣。MINICOM軟體的作用是作為調試嵌入式開發板的信息輸出的監視器和鍵盤輸入的工具。配置網路主要是配置NFS網路文件系統,需要關閉防火牆,簡化嵌入式網路調試環境設置過程。
第三步:建立引導裝載程序BOOTLOADER
從網路上下載一些公開源代碼的BOOTLOADER,如U.BOOT、BLOB、VIVI、LILO、ARM-BOOT、RED-BOOT等,根據具體晶元進行移植修改。有些晶元沒有內置引導裝載程序,比如,三星的ARV17、ARM9系列晶元,這樣就需要編寫開發板上FLASH的燒寫程序,可以在網上下載相應的燒寫程序,也有Linux下的公開源代碼的J-FLASH程序。如果不能燒寫自己的開發板,就需要根據自己的具體電路進行源代碼修改。這是讓系統可以正常運行的第一步。如果用戶購買了廠家的模擬器比較容易燒寫FLASH,雖然無法了解其中的核心技術,但對於需要迅速開發自己的應用的人來說可以極大提高開發速度。
第四步:下載已經移植好的Linux操作系統
如MCLiunx、ARM-Linux、PPC-Linux等,如果有專門針對所使用的CPU移植好的Linux操作系統那是再好不過,下載後再添加特定硬體的驅動程序,然後進行調試修改,對於帶MMU的CPU可以使用模塊方式調試驅動,而對於MCLiunx這樣的系統只能編譯內核進行調試。
第五步:建立根文件系統
下載使用BUSYBOX軟體進行功能裁減,產生一個最基本的根文件系統,再根據自己的應用需要添加其他的程序。由於默認的啟動腳本一般都不會符合應用的需要,所以就要修改根文件系統中的啟動腳本,它的存放位置位於/etc目錄下,包括:/etc/init.d/rc.S、/etc/profile、/etc/.profile等,自動掛裝文件系統的配置文件/etc/fstab,具體情況會隨系統不同而不同。根文件系統在嵌入式系統中一般設為只讀,需要使用mkcramfs genromfs等工具產生燒寫映像文件。
第六步:建立應用程序的FLASH磁碟分區
一般使用JFFS2或YAFFS文件系統,這需要在內核中提供這些文件系統的驅動,有的系統使用一個線性FLASH(NOR型)512KB~32MB,有的系統使用非線性FLASH(NAND型)8MB~512MB,有的兩個同時使用,需要根據應用規劃FLASH的分區方案。
第七步:開發應用程序
可以放入根文件系統中,也可以放入YAFFS、JFFS2文件系統中,有的應用不使用根文件系統,直接將應用程序和內核設計在一起,這有點類似於μC/OS-II的方式。
第八步:燒寫內核
根文件系統和應用程序,發布產品。
....................................................................................................................................................
................................................................
還有怎麼學習嵌入式呢,我剛才看到一篇很不錯的文章,是一個專科生介紹自己如何自學嵌入式,並找到嵌入式的工作,裡面介紹了他的學習方法和學習過程,希望對你有幫助。
先做個自我介紹,我07年考上一所很爛專科民辦的學校,學的是生物專業,具體的學校名稱我就不說出來獻丑了。09年我就輟學了,我在那樣的學校,一年學費要1萬多,但是根本沒有人學習,我實在看不到希望,我就退學了。
退學後我也迷茫,大專都沒有畢業,我真的不知道我能幹什麼,我在糾結著我能做什麼。所以輟學後我一段時間,我想去找工作,因為我比較沉默寡言,不是很會說話,我不適合去應聘做業務。我想應聘做技術的,可是處處碰壁。
一次偶然的機會,我才聽到嵌入式這個行業。那天我去新華書店,在計算機分類那邊想找本書學習。後來有個女孩子走過來,問我是不是讀計算機的,有沒有興趣學習嵌入式,然後給我介紹了一下嵌入式現在的火熱情況,告訴我學嵌入式多麼的有前景,給我了一份傳單,嵌入式培訓的廣告。聽了她的介紹,我心裡癢癢的,確實我很想去學會一門自己的技術,靠自己的雙手吃飯。
回家後,我就上網查了下嵌入式,確實是當今比較熱門的行業,也是比較好找工作的,工資也是相對比較高。我就下決心想學嵌入式了。於是我去找嵌入式培訓的相關信息,說真的,我也很迷茫,我不知道培訓是否真的能像他們宣傳的那樣好,所以我就想了解一段時間再做打算。
後來,我在網路知道看到一篇讓我很鼓舞的文章,是一個嵌入式高手介紹沒有基礎的朋友怎麼自學入門學嵌入式,文章寫的很好,包含了如何學習,該怎麼學習。他提到一個方法就是看視頻,因為看書實在太枯燥和費解的,很多我們也看不懂。這點我真的很認同,我自己看書往往看不了幾頁。
我在想,為什麼別人都能自學成才,我也可以的!我要相信自己,所以我就想自學,如果實在學不會我再去培訓。
主意一定,我就去搜索嵌入式的視頻,雖然零星找到一些嵌入式的視頻,但是都不系統,我是想找一個能夠告訴我該怎麼學的視頻,一套從入門到精通的視頻,一個比較完整的資料,最好能有老師教,不懂可以請教的。
後來我又找到一份很好的視頻,是在IT學習聯盟網站推出的一份視頻《零基礎嵌入式就業班》(喜歡《零基礎嵌入式就業班》的可以復制 sina.lt/qKh 粘貼瀏覽器地址欄按回車鍵即打開)。裡面的教程還不錯,很完整,可以讓我從基礎的開始學起。視頻比較便宜。
下面介紹下我的學習流程,希望對和我一樣完全沒有基礎的朋友有所幫助。
收到他們寄過來的光碟後,我就開始學習了,由於我沒有什麼基礎,我就從最簡單的C語言視頻教程學起,話說簡單,其實我還是很多不懂的,我只好請教他們,他們還是很熱心的,都幫我解決了。C語言我差不多學了一個禮拜,接下來我就學了linux的基本命令,我在他們提供linux虛擬機上都有做練習,敲linux的基本命令,寫簡單的C語言代碼,差不多也就三個禮拜。我每天都在不停的寫一些簡單的代碼,這樣一月後我基本掌握了C和linux的基本操作。
接下來我就去學習了人家的視頻的培訓教程,是整套的,和去參加培訓沒有多大的區別,這一看就是兩個月,學習了ARM的基本原理,學習嵌入式系統的概念,也掌握了嵌入式的環境的一些搭建,對linux也有更深層次的理解了,明白了嵌入式應用到底是怎麼做的,但是驅動我只是有一點點的了解,這個相對難一點,我想以後再慢慢啃。
這兩個月,除了吃飯睡覺,我幾乎都在學習。因為我知道幾乎沒有基礎,比別人差勁,我只能堅持努力著,我不能放棄,我必要要靠自己來養活自己,必須學好這門技術,然後我就把不懂的問題總結記下來,這樣慢慢積累了一段時間,我發現自己真的有點入門了。
最後的一個月,我就去看關於實踐部分的內容,了解嵌入式項目具體的開發流程,需要什麼樣的知識,我就開始准備這方面的知識,也就是學習這方面的視頻,同時他們建議我去找了找一些嵌入式面試的題目,為自己以後找工作做准備。我就到網上找了很多嵌入式的題目,把他們理解的記下來,這樣差不多准備了20天左右
我覺得自己差不多入門了,會做一些簡單的東西了。我就想去找工作看看,於是我就到51job瘋狂的投簡歷,因為我學歷的問題,專科沒有畢業,說真的,大公司沒有人會要我,所以我投的都是民營的小公司,我希望自己的努力有所回報。沒有想過幾天過後,就有面試了,但是第一次面試我失敗了,雖然我自認為筆試很好,因為我之前做了准備,但是他們的要求比較嚴格,需要有一年的項目經驗,所以我沒有被選中。
後來陸續面試了幾家公司,終於功夫不負有心人。我終於面試上的,是在閔行的一家民營的企業,公司規模比較小,我的職務是嵌入式linux應用開發,做安防產品的應用的。我想我也比較幸運,經理很看重我的努力,就決定錄用我,開的工資是3500一個月,雖然我知道在上海3500隻能過溫飽的生活,但是我想我足夠了。我至少不用每天都要靠父母養,我自己也能養活自己的。我想只要我繼續努力,我工資一定會翻倍的。
把本文寫出來,希望能讓和我一樣的沒有基礎的朋友有信心,其實我們沒有必要自卑,我們不比別人笨,只要我們肯努力,我們一樣會成功。
假如你喜歡嵌入式的話就努力學習吧。

。。。。。。。。。。。。。。。。。。。。。。。。。。。

閱讀全文

與嵌入式虛擬機管理程序相關的資料

熱點內容
更改程序圖標c語言 瀏覽:629
網路電視偷停怎麼辦 瀏覽:418
linux連接ftp 瀏覽:512
es文件瀏覽器視頻筆記 瀏覽:874
mac無法打開描述文件 瀏覽:134
什麼軟體打文件 瀏覽:53
資料庫無數據變成0 瀏覽:899
名企筆試如何刷編程題 瀏覽:49
js跳到頁面某地 瀏覽:550
jsp展示clob欄位 瀏覽:779
nyx在網路上是什麼意思 瀏覽:145
樂播農業app是什麼 瀏覽:530
編程框架如何開發 瀏覽:136
金庸群俠傳3修改代碼 瀏覽:712
檢察院的文件類別有哪些 瀏覽:793
怎麼把九游殘留數據刪除 瀏覽:828
有什麼女生主動聊天的app 瀏覽:436
有哪些可以督促自己的app 瀏覽:244
用USB傳輸視頻文件夾顯示為空 瀏覽:710
恢復文件軟體免費版手機 瀏覽:648

友情鏈接