新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 多核、虛擬化、多操作系統(tǒng)的軟件趨勢

多核、虛擬化、多操作系統(tǒng)的軟件趨勢

作者:迎九 《電子產(chǎn)品世界》編輯 時間:2010-02-08 來源:電子產(chǎn)品世界 收藏

  將原本分散的多處理器系統(tǒng)整合為單一系統(tǒng)并不能通過簡單地將多個系統(tǒng)簡單地壓縮在一個系統(tǒng)中來實現(xiàn)。系統(tǒng)架構(gòu)的變化使多個系統(tǒng)之間的并行運行和通信協(xié)調(diào)方式發(fā)生了不小的變化。

本文引用地址:http://m.butianyuan.cn/article/105985.htm

  在采用技術(shù)的時候,操作系統(tǒng)管理內(nèi)核的基本方式有兩種:第一種是對稱多處理(SMP),這是由一個操作系統(tǒng)來控制多個內(nèi)核。只要有一個內(nèi)核空閑可用,操作系統(tǒng)就在線程等待隊列中分配下一個線程給這個空閑內(nèi)核來運行。第二種是非對稱多處理(AMP),每個內(nèi)核上都運行各自的操作系統(tǒng)。

  因此,多核系統(tǒng)并不是直接把多個芯片的多處理器濃縮到單一芯片之中這么簡單。實際上,多核系統(tǒng)和多處理器系統(tǒng)之間存在著許多重要的區(qū)別,導(dǎo)致不能把多處理器系統(tǒng)上的軟件直接移植到多核系統(tǒng)上來。

  多處理器系統(tǒng)和多核系統(tǒng)的主要區(qū)別之一就是,在多處理器系統(tǒng)中,CPU之間的界線是比較清晰的。在典型的多處理器情況下,多個CPU通過總線連接起來,即便是共享外部存儲器,這些CPU基本上都是獨立運行的。在多核系統(tǒng)中,情況就有所不同。不論采用何種架構(gòu),在多核系統(tǒng)中,被共享的東西非常多,例如中斷控制器、外設(shè)以及Cache(高速緩存)等。

  下的Supervisor或Hypervisor

  當你希望運行SMP(同構(gòu)核)環(huán)境時,多核系統(tǒng)的這種特征通常表現(xiàn)為一種優(yōu)勢,因為所有的內(nèi)核都由同一個操作系統(tǒng)來管理。但是,當你要在多核系統(tǒng)中同時運行兩種以上的操作系統(tǒng)時,例如同時運行一套RTOS(實時操作系統(tǒng))和一套通用操作系統(tǒng),就會遇到較多的困難。在這種情況下,會有兩種選擇:第一,在兩個操作系統(tǒng)之間進行頻繁的溝通,例如在它們之間建立主、從關(guān)系;第二,更簡便的方法是采用Supervisor或者Hypervisor,這是一些少量的代碼,負責管理協(xié)調(diào)多個操作系統(tǒng)。顯然,第二種方式是更徹底、靈活、具有擴展性的多核軟件架構(gòu)。

  Hypervisor 之所以能夠有效地管理運行在其上的多個操作系統(tǒng),得益于分區(qū)和的方法。總的來說,系統(tǒng)中有三類資源可以被:執(zhí)行單元(CPU)、內(nèi)存和設(shè)備。執(zhí)行單元是基于時間片來進行。內(nèi)存虛擬化是把物理內(nèi)存劃分成許多區(qū)域。設(shè)備虛擬化則是通過給設(shè)備定義接口和API調(diào)用來提高使用靈活性和利用率。

  Hypervisor并不是一個全新的概念,在服務(wù)器中早已得到廣泛而且成功的應(yīng)用。不過,系統(tǒng)中經(jīng)常用到的Hypervisor主要是對內(nèi)存和設(shè)備進行虛擬化,以便在操作系統(tǒng)之間的資源共享得到完全的保證,而不是對執(zhí)行單元進行虛擬化。這種專用的Hypervisor比較小,而且直接運行在硬件上,不像服務(wù)器中用到的Hypervisor主要運行在完整的操作系統(tǒng)之上并且使用宿主操作系統(tǒng)的資源。

  在Hypervisor中,性能和獨立性是兩大最重要的需求,而后向兼容性(可以讓從屬操作系統(tǒng)不經(jīng)修改即可運行在宿主操作系統(tǒng)之上)是服務(wù)器Hypervisor中非常重要的需求。為了滿足嵌入式系統(tǒng)的特殊需求,這類Hypervisor應(yīng)當采用以下特殊設(shè)計:

  •設(shè)備盡可能直接映射給從屬操作系統(tǒng),以便獲得最高的性能,以及實現(xiàn)最佳的隔離性。

  •應(yīng)當具有更強的可伸縮性,可以自主選擇對哪些部分進行虛擬化,也可以自主選擇虛擬化的目的是提高性能還是提高隔離性。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉