馮霄霞
在物聯(lián)網(wǎng)時代,大家都在談?wù)撐锫?lián)網(wǎng)操作系統(tǒng),我們要分析物聯(lián)網(wǎng)的核心問題是什么,操作系統(tǒng)對于物聯(lián)網(wǎng),能做什么,不能做什么,它如何影響操作系統(tǒng)設(shè)計。物聯(lián)網(wǎng)的核心問題中,大多數(shù)問題,操作系統(tǒng)會表示很無奈,它能做的事情很少,只能解決非常有限的問題。操作系統(tǒng)要服務(wù)于物聯(lián)網(wǎng)應(yīng)用的話,就要分析清楚物聯(lián)網(wǎng)面臨的問題,要集中精力解決核心問題,有的放矢,不要人云亦云地跟著感覺走。
物聯(lián)網(wǎng),首先要解決的是“連接、區(qū)別、識別、溝通、操作”這五大問題,只有這些問題解決了,才有機會談?wù)摪踩浴⒁子眯?、低成本等問題。
發(fā)揮物體網(wǎng)絡(luò)的智慧
物聯(lián)網(wǎng)是物體的社會,就是人類企圖組建一個智慧的物體網(wǎng)絡(luò),來替人類服務(wù),要發(fā)揮物體網(wǎng)絡(luò)的智慧,其實物聯(lián)網(wǎng)跟人類社會網(wǎng)絡(luò)有很多共同點。人與人之間,也存在連接、區(qū)別、識別、溝通、互動(也就是物聯(lián)網(wǎng)說的互操作)這些問題。人和人之間,首先要通過見面、電話、信函等方式建立連接,才有機會交流吧。不同的人,必須能夠區(qū)別開來,世界上沒有完全一樣的兩張臉,就提供了區(qū)別的基礎(chǔ);有了區(qū)別后,必須能溝通,得有相同的語言,配翻譯也行。以上條件都具備了,才有互動(物聯(lián)網(wǎng)中的互操作)的可能。以上過程,由于人具有高級智慧而變得簡單,例如語言不通的人之間,還可以通過場景、手勢、畫畫、眼神等來交流;對于只有非常有限的智慧的電子產(chǎn)品來說,會變得復(fù)雜和困難。
物聯(lián)網(wǎng)的連接問題
物聯(lián)網(wǎng)中,連接問題是最簡單最基本的問題,也是當(dāng)今操作系統(tǒng)支持最為充分的,業(yè)內(nèi)很多人都在談?wù)摰乃^協(xié)議,多數(shù)指的是通信協(xié)議。能用技術(shù)解決的問題,都不是問題。連接就是一個能用技術(shù)解決的問題,物聯(lián)網(wǎng)面臨的問題,大多數(shù)都不是技術(shù)能解決的問題,設(shè)計操作系統(tǒng),要充分認(rèn)識物聯(lián)網(wǎng)面臨的問題的基礎(chǔ)上,把現(xiàn)階段能解決的問題做到極致,尚不具備條件的,逐步地提出解決方案,或者為解決這些問題提供一些必要的支持。而對于物聯(lián)網(wǎng)的接入?yún)f(xié)議來說,接入公網(wǎng)的技術(shù)已經(jīng)成型,就是TCPIP,它是個公共協(xié)議,大家都能用;而局域無線網(wǎng)絡(luò),分兩大類,一類是像智能家居一樣,需要接入不同廠家的設(shè)備的,這種網(wǎng)絡(luò),必須使用統(tǒng)一的網(wǎng)絡(luò)協(xié)議,一致性高的網(wǎng)絡(luò)協(xié)議;另一類是不需要接入不同廠家設(shè)備的無線局域網(wǎng)。
連接也包含組網(wǎng)、維持網(wǎng)絡(luò)連接、設(shè)備發(fā)現(xiàn)的問題,維持連接在物聯(lián)網(wǎng)中是一個很重要的問題,為什么呢?因為物聯(lián)網(wǎng)中有許多低功耗設(shè)備,這些設(shè)備絕大部分時間是休眠的,又要省電,又要不丟失連接,需要有點智慧。維持連接一般是用心跳的方式,對低功耗設(shè)備,合理的心跳間隔、快速喚醒、快速連接,連接完后快速返回休眠狀態(tài),就非常重要。
最基本的識別問題
談到設(shè)備區(qū)別,就開始出現(xiàn)問題了,網(wǎng)絡(luò)中的兩個設(shè)備,你必須能夠區(qū)別出他們是不同的個體,就像人的身份證號一樣,每個設(shè)備也必須有一個身份證號,或者在你所在的區(qū)域網(wǎng)中有一個唯一的號碼也行。
說到設(shè)備識別,就目前而言,并沒有任何一個物聯(lián)網(wǎng)方案能完美解決設(shè)備識別的問題。一個最簡單的智能交通系統(tǒng),要實現(xiàn)這樣的功能,哪個方向有車來,就開哪個方向的綠燈,都有車來,就根據(jù)流量智能調(diào)整紅綠燈周期。問題就來了,你如何判斷路上過來的是一輛車,還是一條狗!東西向有車來,南北向跑來一只狗,綠燈給誰放行?
識別車和狗,還是最基本的識別問題,只是識別物種,再進一步就是識別個體。識別有兩個層次,一是人和物之間的互相識別,當(dāng)然主要是人識別物,另一個是物和物之間的識別。由于人的智慧,人會根據(jù)許多的參考條件來進行模糊識別,人工智能也可以這樣做,但人工智能畢竟無法跟人比,只能在有限條件下,做簡單的輔助識別。當(dāng)然,對于具體應(yīng)用而言,它不需要識別全地球的智能設(shè)備,能夠識別跟具體應(yīng)用相關(guān)的設(shè)備就行了,可以自己定義識別規(guī)則,這純粹是應(yīng)用自己的事,操作系統(tǒng)只能做些輔助線的工作,例如把物體的身份證號和自描述語句傳遞給應(yīng)用程序,僅此而已。
解決設(shè)備識別和設(shè)備間“溝通”問題
最大的問題是溝通,溝通也分為人和物溝通與物和物之間溝通,就是互相明白對方在說什么。讓“物體”說同樣的話,互相聽懂,這是最困難也最缺乏標(biāo)準(zhǔn),同時也是不可能有標(biāo)準(zhǔn)的。如果是物與人之間溝通,就好辦多了。
如果能解決設(shè)備識別和設(shè)備間“溝通”問題,那么智能設(shè)備間的互操作就水到渠成了,由于在“識別”和“溝通”方面,無法形成一個開放的、廣泛適用的標(biāo)準(zhǔn),許多物聯(lián)網(wǎng)系統(tǒng)就另辟蹊徑,盡可能繞過標(biāo)準(zhǔn)問題。同時提供智能硬件開發(fā)平臺以及通用操作系統(tǒng)的中間件,或者開發(fā)一個跨界系統(tǒng),使物聯(lián)網(wǎng)中不同設(shè)備上使用相同的開發(fā)工具。人與物之間的操作問題,可以通過遠程終端的方案,完美地解決。傳統(tǒng)的非智能設(shè)備,人和物直接的操作,是通過文字、圖形、按鍵、觸屏這些介質(zhì)來完成的,在物聯(lián)網(wǎng)世界里,無非是操作介質(zhì)和執(zhí)行操作的智能硬件之間,隔了個空間距離而已。手持的操作界面,就是一個顯示和操作終端而已,所有操作,對于設(shè)備來說,就像在設(shè)備上直接操作一樣,這樣才能規(guī)避沒有標(biāo)準(zhǔn)的事實。
先談?wù)劜豢孔V的方案,現(xiàn)在有些智能硬件廠家,開發(fā)專門的APP讓用戶操作智能硬件,這是不合適的。兩種靠譜的方案,是HTML和遠程桌面。使用遠程桌面后,你的手機只需要安裝一個智能設(shè)備APP,點開該APP后,你家里的所有智能設(shè)備都會被羅列在里面。遠程桌面的缺點是,動畫顯示很困難,尤其是大面積的動畫,有些消費品是有這個需求的,這種時候,就要使用HTML了。除了動畫外,遠程界面的優(yōu)勢還是很明顯的。首先是兼容性問題,瀏覽器的標(biāo)準(zhǔn)化程度其實不高。其次是一致性問題,有許多智能硬件,本機是有顯示界面的,比如冰箱,在家里,你可能習(xí)慣于直接在冰箱上操作,用冰箱本身的界面操控設(shè)備,在外面,你就用手機操作,界面跟冰箱上的界面完全一樣,就像站在冰箱前操作一樣,無須學(xué)習(xí)兩套界面。如果冰箱上和手機上的界面不一樣的話,你會抓狂的,遠程桌面天生就是完全一樣的。而使用HTML的話,則要自己維護兩份界面的一致性,不要小看維護這個一致性問題,搞過硬件的人就知道,維護原理圖和bom表的一致性,是一個致命的工作;維護過兩個以上并行軟件版本的人也應(yīng)該清楚,確保兩個版本應(yīng)該相同的部分是一致的,是非常困難的。
操作系統(tǒng)為物聯(lián)網(wǎng)解決了什么問題
連接:操作系統(tǒng)通過集成常見的網(wǎng)絡(luò)協(xié)議棧,例如TCP/IP、ZigBee、藍牙、WiFi驅(qū)動等,算是為解決連接問題作出了貢獻。
智能硬件間的區(qū)別和識別:這兩個問題,似乎真的跟操作系統(tǒng)沒啥關(guān)系,基本上只能為同一廠家產(chǎn)品之間的“區(qū)別和識別”提供部分幫助。
溝通和互操作:物和物之間的溝通和互操作,操作系統(tǒng)基本上看熱鬧而已,同樣只能對使用同一個廠商提供的開發(fā)工具開發(fā)的特定應(yīng)用提供一些幫助,其互操作,基本僅限于使用它們的開發(fā)工具開發(fā)的智能硬件,且主要是物和人之間;人和物之間的互操作,支持遠程桌面和webserver的操作系統(tǒng)能提供比較完善的幫助。