軟件定義一切:機遇和挑戰(zhàn)
- 來源:中國信息化周報 smarty:if $article.tag?>
- 關(guān)鍵字: smarty:/if?>
- 發(fā)布時間:2017-12-13 15:18
現(xiàn)在軟件很重要,每天的生活都離不開軟件,可能大多數(shù)人每天早上起床的第一件事兒就是打開某個APP。我今天講的題目很大——軟件定義一切。
無處不在的軟件
我們正在進入一個新的時代,我是從信息技術(shù)對人類社會的改造這個角度來談這個新時代,不同的人從不同的角度也給了這個時代不同的賦名。從基礎(chǔ)設(shè)施視角來看,這是一個互聯(lián)網(wǎng)+時代;從計算模式視角來看,這是一個云計算時代;從信息資源視角來看,這是一個大數(shù)據(jù)時代;從信息應(yīng)用視角來看,這是智能化時代。有一項很重要的技術(shù),那就是軟件。從某種意義上來說,這個時代就是一個軟件定義的時代。
軟件產(chǎn)業(yè)呈持續(xù)增長態(tài)勢。從國內(nèi)來看,工信部公布的2012年到2016年的五年數(shù)據(jù)中,軟件和信息技術(shù)服務(wù)業(yè)始終保持高增長,在電子信息行業(yè)的比重也在不斷上升。2008年金融危機開始以后,很多行業(yè)都在下滑,而信息技術(shù)行業(yè)還在保持增長,而軟件行業(yè)的增長又是遠遠高于信息技術(shù)其他的比重。工信部給出的近五年數(shù)據(jù)中,軟件從業(yè)人數(shù)也在逐年增長,2016年達到576萬人。但如果換一個視角,從開源社區(qū)來看,比如程序員經(jīng)常去的一個軟件問答網(wǎng)站stack overflow,注冊3200萬人,其中超過2500萬人是多次訪問。再比如CSDN的注冊用戶達2500萬,活躍用戶超過800萬。這幾個數(shù)據(jù)普遍都要比工信部公布的數(shù)據(jù)高,這說明和軟件相關(guān)的從業(yè)人數(shù)有很多。
互聯(lián)網(wǎng)環(huán)境下軟件呈現(xiàn)
新特性和新特征
我國學(xué)者自己定義了一個詞:網(wǎng)構(gòu)軟件,指的就是面向互聯(lián)網(wǎng)計算的軟件新范型。這些新范型是什么,總結(jié)有幾個性質(zhì):實體的自主性,實體對環(huán)境的情景感知,實體之間的自主協(xié)同,實體的在線演化,以及可信性需求。簡單來說,軟件呈現(xiàn)網(wǎng)絡(luò)化體系結(jié)構(gòu),基于網(wǎng)絡(luò)進行開發(fā),通過網(wǎng)絡(luò)交付分發(fā)并提供服務(wù),這就是軟件的服務(wù)化。軟件和硬件相比,同樣都作為功能性產(chǎn)品,但軟件這種工具和互聯(lián)網(wǎng)結(jié)合就能夠?qū)崿F(xiàn)一種真正的服務(wù)化。移動互聯(lián)網(wǎng)的產(chǎn)生,又產(chǎn)生了一種新的模式,這就是APP。蘋果商店擁有300萬余個APP,累計下載量超過1500億次。這個時候創(chuàng)造了一種新的模式,客戶端要和服務(wù)器端合起來完成一件任務(wù),也是一種拷貝,不過是一種新的拷貝方式?;ヂ?lián)網(wǎng)深刻改變了人類社會和生活模式,而互聯(lián)網(wǎng)的核心價值是連接,軟件是實現(xiàn)互聯(lián)網(wǎng)核心價值的重要使能技術(shù)。硬件連接雖然很重要,但最終的靈活連接還要靠軟件。
我引用兩位名人的話,NetScape創(chuàng)始人Marc Andreessen說,軟件吞噬世界。另一位是C++語言發(fā)明人Bjarne Stroustrup說,人類文明運行在軟件之上。
軟件定義的時代
互聯(lián)網(wǎng)及其延伸,正在導(dǎo)向我們走在一個新的模式,人-機-物的融合。信息技術(shù)的網(wǎng)絡(luò)化、泛在化、智能化趨勢蘊含了人-機-物和諧發(fā)展的愿景。當前,正在興起信息化的第三波浪潮,即以數(shù)據(jù)的深度挖掘與融合應(yīng)用為特征的智慧化階段。這個階段我命名為智能化階段,在這個新的環(huán)境下,人機物融合環(huán)境下的信息基礎(chǔ)設(shè)施是海量的資源。人機物融合環(huán)境下的新型應(yīng)用的需求形態(tài)多樣。面對海量資源和應(yīng)用需求形態(tài)多樣的這兩個特征,人機物融合需要新的平臺環(huán)境,如何凝練應(yīng)用共性,如何有效管理資源這是這個平臺的基本要求。在這樣的平臺之下,由于應(yīng)用需求變化頻繁和應(yīng)用場景動態(tài)多變,這個平臺能否實現(xiàn)按需靈活定制?
什么是軟件定義
軟件定義的真正落地,還是在云計算平臺里面的應(yīng)用。在2015年的時候,Gartner戰(zhàn)略報告首次出現(xiàn)SDN(軟件定義),SDN重新“定義”了傳統(tǒng)的網(wǎng)絡(luò)架構(gòu)甚至通信產(chǎn)業(yè)。軟件定義網(wǎng)絡(luò)的技術(shù)原理是通過一組API對網(wǎng)絡(luò)設(shè)備進行任意的編程從而實現(xiàn)新型的網(wǎng)絡(luò)協(xié)議、拓撲架構(gòu)而不需改動網(wǎng)絡(luò)設(shè)備本身。
計算機的操作系統(tǒng)是管理硬件資源、控制程序運行、改善人機界面和為應(yīng)用軟件提供支持的一種系統(tǒng)軟件,即向上提供公共服務(wù),向下管理資源。如果從操作系統(tǒng)視角來看軟件定義,操作系統(tǒng)是軟件定義的“計算機”,從軟件研究者的視角,操作系統(tǒng)體現(xiàn)了“軟件定義”之集大成。
在我看來,軟件定義的技術(shù)本質(zhì)就是把過去的一體化硬件設(shè)施打破,基礎(chǔ)硬件及其虛擬化提供標準化的基本功能,然后通過管控軟件控制基本功能,提供更開放、靈活、智能的管控服務(wù)。
軟件定義的技術(shù)本質(zhì):硬件資源虛擬化,管理功能可編程。硬件資源抽象為虛擬資源,然后用系統(tǒng)軟件對虛擬資源管理和調(diào)度。就是在硬件資源虛擬化的基礎(chǔ)上,用戶可編寫應(yīng)用程序,滿足訪問資源的多樣性的需求。大家現(xiàn)在可以看到軟件定義出現(xiàn)了各種各樣的延伸,軟件定義的存儲,軟件定義的計算,軟件定義的環(huán)境,軟件定義的數(shù)據(jù)中心等等。但所有架構(gòu)都跳不出操作系統(tǒng)的三層架構(gòu),就是說軟件平臺的三層架構(gòu),這些SDX均符合“硬件資源虛擬化”與“管理任務(wù)可編程”的技術(shù)原理。
這就是我對軟件定義的理解。
軟件定義帶來機遇和挑戰(zhàn)
我們可以看到的機遇就是軟件定義一切,人-機-物互聯(lián)是我們追求的目標。我們是不是最終能做到萬物皆可互聯(lián),一切均可編程呢?這就是軟件定義給未來世界達成的目標,也就是我們的機遇所在。軟件定義的本身進一步泛化和延伸,要用軟件定義物理世界,再進入城市、行業(yè)、校園,從單一的資源管控到人、機、物融合環(huán)境下對各種資源全方位的互聯(lián)互通。這是今后努力的方向。
人工智能是當今的熱潮,但我個人的觀點還是認為處于數(shù)據(jù)驅(qū)動的算法智能階段,軟件平臺如何提供“通用”的智能應(yīng)用支撐,并允許按需深度定制?是否會出現(xiàn)面對AI的操作系統(tǒng)?我想這個也是可以通過平臺的方式去實現(xiàn)。
軟件技術(shù)在新一輪革命技術(shù)中毫無疑問是核心競爭力之一,新一輪制造革命需要實現(xiàn)“硬件”、知識和工藝流程的軟件化,進而實現(xiàn)軟件的平臺化,本質(zhì)上即“軟件定義”。
隨著人、機、物的融合,軟件定義的挑戰(zhàn)可以分為這幾個方面:體系結(jié)構(gòu)設(shè)計決策,系統(tǒng)質(zhì)量,系統(tǒng)安全,更輕量的虛擬化,從原有系統(tǒng)到軟件定義系統(tǒng)平滑過渡,高度自適應(yīng)智能軟件平臺。
體系結(jié)構(gòu)設(shè)計決策,包括如何確定受管元素的合理“粒度”和“層次”?如何界定軟、硬件的功能劃分并組裝、配置相應(yīng)元素等問題。
系統(tǒng)的質(zhì)量,需要解決的問題有如何合理平衡管理靈活性和“虛擬化”后的性能損耗,如何降低“軟件實現(xiàn)”的復(fù)雜性和故障率,有效定位故障以保障可靠性等等。
系統(tǒng)安全,對硬件資源管理可編程帶來開放性、靈活性的同時,也可能會帶來更多的安全隱患。
更輕量的虛擬化。大量的新設(shè)備產(chǎn)生,虛擬化實現(xiàn)了對硬件資源的軟化,是軟件定義的基礎(chǔ)技術(shù),現(xiàn)有以虛擬機為單位的技術(shù)過于重載,難以滿足性能和實時性要求。
原有系統(tǒng)到軟件定義系統(tǒng)平滑過渡。如何將原有系統(tǒng)平滑過渡到軟件定義系統(tǒng)?通過對已有的資源進行大幅度的改造,我們需要安裝新的硬件,需要做新的軟件管理系統(tǒng),以及面臨的人力,時間,經(jīng)濟,風(fēng)控等因素。這個平滑過渡也需要合理的方案,否則很難做成這樣的事情。
高度自適應(yīng)軟件平臺。從軟件人追求的目標來看,我們想追求一種更為高度自適應(yīng)的智能軟件平臺。現(xiàn)在平臺方式是以硬件資源為中心的,如果基礎(chǔ)設(shè)施層發(fā)生變化,軟件平臺就要發(fā)生改變,改完之后,上面的應(yīng)用也可能發(fā)生改變。我們追求的理想方式是,軟件平臺具有預(yù)測和管理未來硬件資源變化的能力。
?。ū疚母鶕?jù)梅宏在2017中國計算機大會上的演講整理而成,未經(jīng)本人確認。)
中國科學(xué)院院士 梅宏
