VxWorks引入Python,助力嵌入式系統(tǒng)發(fā)展
2020年,StackOverflow對(duì)全球開發(fā)人員進(jìn)行了關(guān)于最受歡迎的編程語言的調(diào)查。 在排名中,Python語言超過Java,排名第二(緊隨Rust之后)。 與去年的排名相比,Python已成為增長(zhǎng)最快的編程語言,并有望在2020年普及,全球智能連接具有長(zhǎng)遠(yuǎn)的眼光。 在2019年7月,它宣布其最廣泛使用的VxWorks平臺(tái)將支持Python語言的開發(fā),而Wind River Think,“ Python將嵌入式編程推向了新的高度?!?
數(shù)字世界,Python與AI、IOT更配噢!
風(fēng)河公司對(duì)Python的高度評(píng)價(jià)其實(shí)并不令人意外,畢竟像YouTube、豆瓣、Google甚至NASA(美國航空航天局)都早已經(jīng)開始大量使用Python語言。之所以Python受到如此追捧,一個(gè)非常重要的背景因素就在于人工智能的興起。如今流行的AI技術(shù)大部分都是用Python語言編寫的,無論是科學(xué)計(jì)算、圖像處理還是機(jī)器學(xué)習(xí),Python憑借其動(dòng)態(tài)特性及其開發(fā)效率高這一天然性能優(yōu)勢(shì)都可以輕松勝任,也吸引了越來越多的編程人員加入Python生態(tài)中。
風(fēng)河自誕生之日起其天然基因就是一直致力于建設(shè)嵌入式開發(fā)生態(tài)系統(tǒng)。了解用戶需求,洞察行業(yè)最新趨勢(shì),保持研發(fā)活力與創(chuàng)新,是風(fēng)河一直以來的傳統(tǒng)。當(dāng)風(fēng)河決定為嵌入式系統(tǒng)注入人工智能,尤其是在邊緣計(jì)算領(lǐng)域進(jìn)行智能升級(jí),這些都讓風(fēng)河公司非常敏銳地捕捉到Python的價(jià)值。更重要的是,當(dāng)萬物互聯(lián)時(shí)代悄然走近,設(shè)備制造商們希望能夠在IOT設(shè)備上做更多的事情,這就要求芯片除了更智能之外,還要承載更多新的業(yè)務(wù)特性。那么在嵌入式系統(tǒng)中如何為用戶提供這些性能支撐呢?C或C++或許不錯(cuò),但憑借在數(shù)據(jù)科學(xué)和數(shù)據(jù)工程應(yīng)用中的高度優(yōu)先性,Python成為了更好的選擇。
Python引入VxWorks,進(jìn)入開發(fā)“神操作”模式
正是看到了Python在人工智能領(lǐng)域和萬物互聯(lián)時(shí)代的廣闊應(yīng)用前景,也看到了開發(fā)人員對(duì)Python的由衷喜愛,風(fēng)河公司認(rèn)為,既然當(dāng)初已經(jīng)在VxWorks平臺(tái)引入了嵌入式行業(yè)最廣泛應(yīng)用的C ++,那么為什么不繼續(xù)順應(yīng)潮流,讓開發(fā)人員可以用Python來為VxWorks開發(fā)應(yīng)用程序呢?
就這樣,風(fēng)河公司將Python引入了VxWorks世界。在嵌入式設(shè)備中,開發(fā)人員可以利用Python在開發(fā)中運(yùn)行測(cè)試腳本,也可以創(chuàng)建不同復(fù)雜度的神經(jīng)網(wǎng)絡(luò)和推理機(jī),以便進(jìn)行預(yù)測(cè)性維護(hù),甚至還可以解決復(fù)雜的數(shù)學(xué)問題如自動(dòng)微分,創(chuàng)建 CLI等各種“神操作”。如今,VxWorks 7已經(jīng)擁有Python的支持,開發(fā)者可以在Wind River Workbench上創(chuàng)建并運(yùn)行,也可以自由選擇其他編輯器,還可以在交互模式下使用Python,非常方便。
嵌入式系統(tǒng)中的Python運(yùn)行與眾不同
雖然VxWorks 7已經(jīng)可以使用Python語言編程,但在這背后其實(shí)凝聚了風(fēng)河公司研發(fā)團(tuán)隊(duì)很多心血。眾所周知,語言越是簡(jiǎn)潔易用,對(duì)后臺(tái)的資源消耗就越大,在那些已經(jīng)支持Python的大型網(wǎng)站中,Python往往是運(yùn)行在大型數(shù)據(jù)中心或云計(jì)算環(huán)境中,資源調(diào)度非常靈活。但是在嵌入式系統(tǒng)中,Python的運(yùn)行就完全不一樣了。
嵌入式的系統(tǒng)環(huán)境首先空間很小,其次對(duì)性能和安全性要求極其高,確保業(yè)務(wù)連續(xù)性是首要使命,所以能夠分給Python的計(jì)算資源非常有限。即便如此,風(fēng)河公司的研發(fā)團(tuán)隊(duì)還是憑借自身在嵌入式環(huán)境中數(shù)十年來的深厚積累和技術(shù)優(yōu)勢(shì),滿足開發(fā)者在嵌入式設(shè)備中使用Python的夙愿——畢竟,在計(jì)算環(huán)境里完美平衡性能和隔離性,一直都是風(fēng)河公司最擅長(zhǎng)的事情。
據(jù)了解,在VxWorks 7上融入Python,風(fēng)河公司在研發(fā)時(shí)也尤為謹(jǐn)慎,在確保系統(tǒng)高可用高可靠的同時(shí),確保Python可以充分調(diào)度計(jì)算資源,實(shí)現(xiàn)計(jì)算資源的共享。經(jīng)過充分驗(yàn)證和實(shí)踐,如今風(fēng)河公司VxWorks 7也在不斷優(yōu)化和完善,以最終確保不同環(huán)境下從普通應(yīng)用到核心業(yè)務(wù),都可以方便地應(yīng)用Python。
當(dāng)VxWorks 7支持Python語言開發(fā)后,給嵌入式設(shè)備服務(wù)供應(yīng)商帶來的好處是顯而易見的:首先設(shè)備服務(wù)商的軟件開發(fā)周期將大幅度縮短,開發(fā)效率顯著提高;其次,Python普及程度越來越高,VxWorks 7支持Python,也有利于企業(yè)更方便地招納開發(fā)人才,組建開發(fā)團(tuán)隊(duì);最后,由于Python屬于開源環(huán)境,開發(fā)者可以“站在巨人的肩膀上”,利用已有成果進(jìn)行開發(fā),所以開發(fā)成本大幅度縮減,維護(hù)難度和維護(hù)成本都明顯降低。