—從軟件定義的角度重新理解操作系統—
我們正處于軟件定義的時代,軟件定義網絡(SDN)、軟件定義汽車(SDV)、軟件定義無線電(SDR),軟件定義戰爭等概念耳熟能詳。更有專家預言,未來軟件會定義一切。細心的朋友就會發現,軟件定義的每個領域都有操作系統(OS)影子,例如軟件定義網絡離不開網絡OS,軟件定義汽車離不開汽車OS,軟件定義無線電離不開SCA(本質上就是一個OS)。那就讓我們一探究竟,OS到底與軟件定義有什么關系。
1.何謂軟件定義?
軟件定義的本質是軟硬件解耦,通過修改或升級軟件的方式重構系統功能來快速響應需求變化。
軟件定義背后的邏輯是系統不僅滿足用戶當前確定性的需求,而且還能滿足用戶未來可變潛在的需求。就像手機一樣,傳統功能機只能提供打電話、發短信功能,每人都必須使用和適應它。現在是一個智能手機時代,一部手機在手,天下我有。
平臺化和智能化是軟件定義技術的兩個主流發展方向。
那什么是平臺化呢?用統一標準約束軟、硬件平臺的構建,利用生態的力量共同打造平臺。平臺支撐上層應用,由龐大生態共同構建的平臺才能催生應用的繁榮。
在移動互聯網時代,Andriod和iOS手機平臺就是當今最成功的平臺級解決方案。
怎么理解智能化?這里的智能包括兩個層面的含義。
第一層是指狹義的智能,特指人工智能,模仿人類的認知體系為機器賦能;第二層是指廣義的智能,泛指系統功能的多樣性、可變換性,可以滿足用戶的千人千面的需求。
智能手機未必就“智能”,只是可以滿足用戶的各種需求而已。
2.為什么談“軟件定義”避不開操作系統?
軟件定義的核心是API(Application Program Interface)。API之上一切皆可編程,其本質是軟硬件解耦。
由誰來提供API?由誰實現軟硬件解耦?答案是“操作系統”。
如下圖所示,在一個軟件定義系統三層架構的系統中,操作系統是平臺的一部分,是連接硬件平臺與上層應用及用戶的中間橋梁。
圖1 軟件定義系統三層架構
偉大的古希臘物理學家阿基米德曾說過“給我一個支點,我可以撬動整個地球”。操作系統之于軟件定義系統就是一個支點,它的作用是充分發揮硬件載體的價值,催生無限繁榮的應用生態。
圖2 OS是軟件定義系統的支點
3.操作系統的進化邏輯
操作系統定義是“控制和管理整個計算機系統的硬件和軟件資源,并合理的組織和調度計算機的工作和資源的分配,以提供給用戶和其它應用軟件方便的接口和環境,它是計算機系統中最基本的系統軟件。” 對以上定義進行簡單的解讀: 1)負責計算機軟硬件資源調度 2)為上層的應用、用戶提供接口 3)是系統軟件,而不是應用軟件 操作系統的核心的職能是資源調度與管理,為用戶及應用軟件提供一致的API。
在主機計算時代,操作系統的調度的對象是CPU及相關附屬資源,IBM OS/360是現代操作系統雛形,提供了標準接口連接外部設備。
20世紀70年代初,由貝爾實驗室研發UNIX操作系統是一個現代意義上的通用操作系統,解決了跨平臺移植問題,能為不同廠商、不同種類的計算機提供一致標準的API。
在個人計算時代,以個人PC機為載體,以微軟Windows和開源Linux為代表,操作系統繼續強化跨平臺移植能力,逐步適應CPU、內存、聲卡、顯卡等硬件資源調度,并推出新型用戶界面及應用模式。
在移動計算時代,以手機為載體,以谷歌Android和蘋果iOS為代表,操作系統對下所管理的對象延伸到攝像頭、GPS、慣導等各種傳感器,對上支撐了龐大的應用生態,改變了人類的生活方式。軟件定義的時代從“軟件定義手機”逐步開啟。
在萬物互聯時代,打通了人、機、物之間的連接。軟件定義一切、一切皆可編程是這個時代的基本特征。操作系統所管理的硬件平臺無論是種類上還是形態上都發生了根本性的變化。
從種類上,硬件資源包括CPU、DSP、FPGA、GPU、NPU等各種異構資源;從形態上,開始向“無形”資源延伸,把數據、知識、時間、網絡等資源也納入到操作系統所調度的范疇。遵循向下管理資源、向上支撐應用的原則和理念,從此操作系統的概念開始擴展和泛化。
基于此背景下,梅宏院士首次提出“泛在操作系統(Ubiquitous OS)”的概念。目前,智慧城市操作系統(Urban OS)、機器人操作系統(ROS)、汽車操作系統都是屬于泛在操作系統的范疇。
4.操作系統的路在何方?
人工智能與操作系統相互賦能。
當今時代是智能化的時代,人工智能為各個領域賦能。操作系統為AI應用提供基礎平臺,實現硬件平臺的資源虛擬化及調度,充分發揮硬件所能提供的計算能力。
未來應用的發展一定是輕量化、多樣性,調用盡可能少的API實現更強大的功能。
面向新的應用及用戶需求,凝練行業領域的共性,將應用的共性部分逐步沉淀到操作系統層。這時操作系統就附加上了行業領域的屬性。顯而易見,未來的操作系統將會越來越突顯人工智能的能力,高效地管理數據、知識等無形資源。
百度李彥宏說過,“未來的操作系統是基于人工智能深度學習框架的系統”。百度DuerOS就是一款融入人工智能的對話式智能操作系統。
圖3 人工智能與操作系統
操作系統也可以被軟件定義。
美國國防部高級研究計劃局(DARPA)在2015年開始啟動一項資源自適應軟件系統(BRASS)的研究,其核心思想是開發一個能經受未來100年技術變革而能自適應的軟件技術體系,該軟件技術體系能自行對所在硬件資源生態系統的變化做出安全、動態式的響應。這就需要一個能被軟件或代碼自行定義的“操作系統”。
雖然軟件定義操作系統在一定程度上可以擴展操作系統的應用領域和范圍,但是由于計算資源的多樣性、行業領域的廣泛性、用戶需求差異性,筆者認為:大一統的普適操作系統遙不可及,我們將長期處于根據應用場景定制的多樣性泛在操作系統階段。
審核編輯:劉清
-
SDR
+關注
關注
7文章
233瀏覽量
50423 -
操作系統
+關注
關注
37文章
6747瀏覽量
123201 -
sdn
+關注
關注
3文章
254瀏覽量
44763 -
SDV
+關注
關注
0文章
37瀏覽量
6827
原文標題:從軟件定義的角度重新理解操作系統
文章出處:【微信號:CloudBrain-TT,微信公眾號:云腦智庫】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論