隨著新系統的設計,軟件開發人員正在使用基于開放標準的編程語言和操作系統,如C / C++和POSIX,以確保未來的可移植性。
隨著新系統的設計,軟件開發人員正在使用基于開放標準的編程語言和操作系統,如C / C++和POSIX,以確保未來的可移植性。
但對于現有的已部署遺留系統,不一定有相同的考慮因素和設計方法可用或遵循。當需要更新系統時,無論是為了更改硬件還是添加新功能,通常都會面臨如何遷移或更新現有軟件而不必經歷重寫軟件的昂貴練習的兩難境地。在經過認證的系統中,這種成本甚至更高,因為重新編碼=重新認證。
然而,好消息是,一種新的虛擬化技術可以重用現有的軟件應用程序,包括運行它們的操作系統,而無需更改或重建軟件。
不斷發展的遺留系統
如今,系統工程師面臨著將基于老化硬件的遺留系統發展到更現代設備上的任務時,面臨著艱巨的挑戰。當硬件出現故障、過時且不再可用時,設計人員必須轉向更新、更復雜的硬件。在大多數情況下,舊版軟件依賴于操作系統版本,如果不升級,則可能不支持新硬件。將舊應用程序同時遷移到新操作系統和新硬件平臺的任務在時間和金錢方面都可能非常昂貴。
這就是現代虛擬化技術發揮作用的地方,它允許重用現有的軟件應用程序及其操作系統,幾乎不需要更改代碼。想象一下,在一種技術中,一小段代碼直接在新的現代硬件上運行,并允許多個“來賓”操作系統在頂部同時運行,每個操作系統都有自己的“虛擬”資源集(虛擬機)。每個操作系統都認為它看到了一整套硬件,包括專用的CPU、內存、磁盤、圖形、鼠標、鍵盤、網絡設備等。當這些虛擬機配置為類似于舊硬件時,運行舊版軟件應用程序和操作系統的任務變得簡單。
分離內核和虛擬機管理程序
使這成為可能的一小段代碼是分離內核和虛擬機管理程序(SKH)。SKH 直接在新的現代硬件上運行,并允許工程師將物理或虛擬資源分配給各種來賓操作系統。然后,SKH 強制分離這些資源,為每個來賓提供硬件級安全性。舊版操作系統在其分配的虛擬機上完全虛擬化運行,無需任何修改。LynuxWorks的LynxSecure是高度安全的現代SKH的一個例子。
除了通過使用虛擬化運行遺留應用程序來節省重新開發時間之外,SKH 還可以使應用程序從巨大的性能提升中受益。現在可以將多個更快的 CPU 和大量 RAM 分配給傳統操作系統和應用程序,從而提高其性能,超越其原始硬件。摩爾定律預測晶體管密度每兩年翻一番,因此一個已有 15 年歷史的傳統系統可能會看到新硬件的性能呈指數級(200 倍)增長。
應用
許多復雜的軍事、航空和醫療系統在現場部署之前必須經過嚴格的認證流程。在給定硬件目標上認證應用程序及其操作系統的工作很容易超過應用程序本身的實際開發成本。虛擬化允許舊版應用程序和操作系統在較新的硬件上未經修改地運行,從而顯著降低認證成本。更少的代碼更改等同于降低測試成本和認證可重用性。
虛擬化的好處
虛擬化為舊系統提供了其他附加優勢。系統工程師現在可以將多個遺留系統整合到一個更強大的硬件平臺上,并降低整體系統成本。事實上,遺留系統可以與其他較新的應用程序和操作系統一起運行,以提供比以前更多的功能。想象一下,在RTOS(如LynxOS)上運行的傳統實時GPS應用程序與基于Windows XP的電子郵件應用程序相鄰,所有這些都在同一硬件平臺上。這不僅在今天是可能的,而且可以在分離內核和虛擬機管理程序的幫助下安全地完成。分離內核保證一個來賓不會以任何方式影響其他來賓。在提供的示例中,如果 Windows XP 客戶機拾取了“病毒”,則不會影響 RTOS 客戶機或其性能。
虛擬化照亮了遺留系統的未來
使用現代分離內核和虛擬機管理程序現在可以延長舊系統的使用壽命,允許遷移到新硬件、添加新功能以及將多個物理系統整合到一個系統中。所有這些優勢都有助于在航空航天和國防工業中部署新的安全和安保系統時降低成本并降低風險。
審核編輯:郭婷
-
操作系統
+關注
關注
37文章
6838瀏覽量
123396 -
C++
+關注
關注
22文章
2110瀏覽量
73689
發布評論請先 登錄
相關推薦
評論