OpenHarmony啃論文成長(zhǎng)計(jì)劃--分布式軟總線關(guān)鍵技術(shù)普適計(jì)算初探
??想了解更多內(nèi)容,請(qǐng)?jiān)L問:??
??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??
我們來自O(shè)penHarmony開發(fā)者成長(zhǎng)計(jì)劃:啃論文小隊(duì),我們?cè)跉W建深教練的帶領(lǐng)下啃論文。我們是TCCS團(tuán)隊(duì),全意為The Child Collecting Shells?!拔也⒉恢牢以谑廊搜壑惺鞘裁茨?,對(duì)我來說,我似乎只像是一個(gè)在海邊玩耍的男孩,不時(shí)找一顆平滑的卵石,或是比較美麗的貝殼來取悅自己,而真理的大海則橫陳在我面前,一無發(fā)現(xiàn)。”——牛頓
本文4800字讀起來花不了幾分鐘,本篇緒論主要作者為TCCS團(tuán)隊(duì)的張君豪,雖然我也什么都看不懂,但是我想就算你是一個(gè)什么也不懂的小白,我們也要讓你通過我們這系列文章讀懂分布式軟總線通訊,不僅要大受震撼,更要看懂,看懂且大受震撼是我的追求。
1、序言
我們知道(上一篇提到),實(shí)現(xiàn)分布式軟總線通訊的整體步驟大概是以下這幾步!
也就是第一步是設(shè)備的發(fā)現(xiàn)與連接,將設(shè)備間手動(dòng)的發(fā)現(xiàn)和連接進(jìn)化成自發(fā)現(xiàn)。那么發(fā)現(xiàn)的前提就是首先需要硬件能力的虛擬化,因此本文從設(shè)備虛擬化展開,我們參考了幾篇paper,
2、何為虛擬化
為了更輕易的搞懂什么是虛擬化,自然首選就是去找一篇中文綜述,通過一篇中文綜述我們就可以輕而易舉的了解整個(gè)虛擬化技術(shù)的大致框架,這同時(shí)也使我們可以站在巨人的肩膀上看世界。首先我們找到了朱軍紅等人的一篇虛擬化技術(shù)分析[1],通過對(duì)文章的閱讀我們知道虛擬化技術(shù)主要把計(jì)算機(jī)底層物理硬件資源、操作系統(tǒng)以及應(yīng)用程序API資源進(jìn)行抽象與集中管理,虛擬化技術(shù)作為連接上下層的中間件,通過上下層耦合提高架構(gòu)靈活性。也就是說,虛擬化技術(shù)實(shí)現(xiàn)了對(duì)物理內(nèi)存資源、存儲(chǔ)資源抽象管理與應(yīng)用程序多任務(wù)共享操作管理。而虛擬化技術(shù)主要有平臺(tái)虛擬化、資源虛擬化、應(yīng)用虛擬化三個(gè)技術(shù)。
平臺(tái)虛擬化分為全虛擬化、超虛擬化、硬件輔助虛擬化、部 分虛擬化、操作系統(tǒng)虛擬化 。全虛擬化主要是對(duì)CPU、內(nèi)存、 存儲(chǔ)器等底層硬件資源進(jìn)行完全虛擬,同時(shí)軟件資源與虛擬化 平臺(tái)進(jìn)行無縫銜接,同時(shí)虛擬機(jī)可以直接訪問底層硬件資源, 不需要通過宿主操作系統(tǒng)實(shí)現(xiàn)訪問;超虛擬化主要是通過修 改部分宿主操作訪問級(jí)實(shí)現(xiàn)虛擬主機(jī)與宿主操作系統(tǒng)間的數(shù) 據(jù)交互;硬件輔助虛擬化主要是指硬件資源提供虛擬監(jiān)視器結(jié) 構(gòu)支持,實(shí)現(xiàn)虛擬機(jī)獨(dú)立運(yùn)行;部分虛擬化是指通過VMM模擬內(nèi)存地址空間,實(shí)現(xiàn)資源共享和線程獨(dú)立;操作系統(tǒng)級(jí)虛擬化是指多個(gè)虛擬機(jī)獨(dú)立運(yùn)行在同一個(gè)宿主主機(jī)上,不同虛擬主機(jī) 間互不影響。
資源虛擬化技術(shù)是指在計(jì)算機(jī)底層硬件資源(磁盤、CPU、 電源等)上建立一個(gè)抽象層,通過該抽象層為上層應(yīng)用提供服務(wù),該層主要起到了平衡利用硬件資源的目的。常見的資源虛擬化技術(shù)有存儲(chǔ)虛擬化、網(wǎng)絡(luò)虛擬化、計(jì)算虛擬化。
應(yīng)用虛擬化技術(shù)是指為應(yīng)用程序虛擬出脫離操作系統(tǒng)的虛擬運(yùn)行環(huán)境,對(duì)應(yīng)用程序依賴的操作環(huán)境與硬件資源進(jìn)行虛擬化處理,目前應(yīng)用虛擬化技術(shù)主要有應(yīng)用程序流、遠(yuǎn)程桌面服務(wù)、桌面虛擬化。
好了,看了這么多,是不是發(fā)現(xiàn)看不懂?或者說感覺它和我們需要的設(shè)備虛擬化又像是有關(guān)系卻又像沒關(guān)系?或者說感覺像是方向偏離了那么一點(diǎn)?對(duì)的,那我們就來看一下另一篇文獻(xiàn),這篇是張浩的設(shè)備虛擬化技術(shù)在家庭物聯(lián)網(wǎng)中的應(yīng)用[2]。如果要把上面提到的所有虛擬化方面全部說清楚那就又是一個(gè)巨大的工程,而且這個(gè)過程已經(jīng)偏離了我們的軌道,所以我們就直接轉(zhuǎn)向正確的方向去逐步挖掘,也希望大家通過我們的挖掘之路能給自己的研究提供一些啟發(fā)。
在科研理論方面,支撐物聯(lián)網(wǎng)發(fā)展的信息技術(shù)也不斷涌現(xiàn),其中普適計(jì)算理論較為成熟。在普適計(jì)算所描述的環(huán)境中,日常生活中的各種具有計(jì)算和通信能力的物體都能夠從物理空間映射到信息空間并以普適服務(wù)的形式進(jìn)行表達(dá),然后再通過無縫融合、自發(fā)交互等。
形成一個(gè)智能空間。在這個(gè)空間里,存在著大量的不同系統(tǒng)平臺(tái)、不同通信協(xié)議、不同存儲(chǔ)模式以及不同生產(chǎn)廠商的設(shè)備。這些異構(gòu)設(shè)備間的互聯(lián)互通互操作的實(shí)現(xiàn),也正是當(dāng)前物聯(lián)網(wǎng)技術(shù)需要解決的問題。
所以,其實(shí)設(shè)備虛擬化實(shí)現(xiàn)的主要技術(shù)方案是普適計(jì)算。
3、普適計(jì)算的來日與方長(zhǎng)
1991年,前Xerox PARC首席科學(xué)家Mark Weiser最先提出了普適計(jì)算的概念,他強(qiáng)調(diào)了把計(jì)算能力嵌入到自然環(huán)境和日常生活中,讓人們把注意力集中到任務(wù)本身(這是不是和鴻蒙系統(tǒng)分布式軟總線子系統(tǒng)的目標(biāo)是一致的?),而參與任務(wù)的計(jì)算機(jī)則消失在人們的視線中。這也意味著,普適計(jì)算的目的是把傳統(tǒng)桌面計(jì)算的“顯式交互”變成未來的“隱式交互”。
90年代后期,MarkWeiser所提出的普適計(jì)算思想開始得到國(guó)際社會(huì)的廣泛關(guān)注和接受。而針對(duì)這一思想, 目前已經(jīng)啟動(dòng)了許多相關(guān)的研究計(jì)劃,并且普適計(jì)算也成為了當(dāng)前極具影響力和活力的研究領(lǐng)域。但對(duì)于普適計(jì)算的準(zhǔn)確定義,目前還沒有統(tǒng)一的標(biāo)準(zhǔn)。根據(jù)不同的研究方向和側(cè)重點(diǎn)有著不同的理解,但他們的目標(biāo)都是-致的,那就是“建立一個(gè)具有通信和計(jì)算能力的環(huán)境,同時(shí)使得人和環(huán)境漸漸地融合在一-起”。而國(guó)內(nèi)普適計(jì)算領(lǐng)域的專家、清華大學(xué)教授徐guang佑等人給出的定義是:“普適計(jì)算是物理空間與信息空間的融合,在這個(gè)融合的空間中人們可以隨時(shí)隨地、透明地獲得數(shù)字化的服務(wù)”。其中“隨時(shí)隨地”強(qiáng)調(diào)的是在任何時(shí)候、任何場(chǎng)所,我們不需要坐在電腦面前就可以獲取想要的服務(wù);而“透明”指的是獲取服務(wù)的整個(gè)過程是不需要花費(fèi)太多的時(shí)間和注意力的,整個(gè)服務(wù)的交互過程對(duì)使用者來說是透明的、蘊(yùn)涵式的。例如:當(dāng)我們下班回家站在門口的時(shí)候,門就會(huì)自動(dòng)打開,并且將房間的燈也會(huì)打開。這就是一個(gè)典型的普適計(jì)算應(yīng)用場(chǎng)景??傊者m計(jì)算的目的就是讓人們從以計(jì)算機(jī)為中心的桌面計(jì)算時(shí)代中逃離,進(jìn)入一個(gè)以人為中心的計(jì)算時(shí)代。
4、普適計(jì)算綜述研究的小插曲兒
上面我們已經(jīng)了解到了普適計(jì)算的歷史,那么下面我們就來從技術(shù)的角度來探討一下普適計(jì)算的實(shí)現(xiàn)與關(guān)鍵點(diǎn)。首先我們先找到了一篇外文論文A SURVEY ON UBIQUITOUS COMPUTING(普適計(jì)算的調(diào)查)[3],但是在我花了1個(gè)小時(shí)對(duì)這篇阿三(對(duì)印度大哥的愛稱)產(chǎn)出的論文進(jìn)行研究以后,emmmm,我發(fā)現(xiàn)我浪費(fèi)了1個(gè)小時(shí)。。。。。不過也不算浪費(fèi),至少還是有收獲的,我發(fā)現(xiàn)三哥提出的這個(gè)框架和分布式軟總線還是有相似之處的,只是三哥只提到了一個(gè)思路,并沒有對(duì)核心技術(shù)原理進(jìn)行探究以及詮釋,反而搞了個(gè)社會(huì)調(diào)查。。。。。。下圖就是三哥提出來的架構(gòu)圖!
說實(shí)話這個(gè)圖其實(shí)我并沒有很看懂,雖然論文下面也附了簡(jiǎn)短的介紹說了一堆沒什么用的話,也歡迎大家來交流,原論文中對(duì)本結(jié)構(gòu)解釋如下。
它包括各種類型的傳感器和執(zhí)行器以及用于處理它們的驅(qū)動(dòng)程序和控制器,它還包括各種配置文件,例如用于優(yōu)化處理資源的資源配置文件、用于管理用戶設(shè)置和偏好的用戶配置文件、用于控制流程執(zhí)行的執(zhí)行配置文件。多任務(wù)調(diào)度器模塊用于高效地處理多個(gè)任務(wù)并支持應(yīng)用程序中的多任務(wù)環(huán)境。多用戶輸入處理程序和虛擬用戶環(huán)境模塊提供對(duì)多用戶以及上下文和用戶設(shè)計(jì)管理的支持。用戶數(shù)據(jù)庫(kù)模塊有助于對(duì)用戶進(jìn)行身份驗(yàn)證。工具、監(jiān)控、復(fù)制、通信、本地化等其他模塊支持泛在計(jì)算應(yīng)用程序中的各種功能。
5、普適計(jì)算核心技術(shù)初探
這是我們這篇文章參考的第四篇論文:Ubiquitous computing: An overview of technology impacts [4],這是一篇SSCI論文,比上面一篇更加權(quán)威一些。我們這次從這一篇開始進(jìn)行研究。這篇文獻(xiàn)是2010年發(fā)出來的,所以迄今為止已經(jīng)有一些年月了,所以我們只是選擇性的進(jìn)行閱讀,而我們這篇文章如果想一下子就把這么大的一個(gè)方面說清楚也是很困難的,所以我們一步步來,各位觀眾姥爺一點(diǎn)點(diǎn)看。
這篇文章首先介紹了什么是普適計(jì)算,然后列舉了普適計(jì)算在各國(guó)的發(fā)展(當(dāng)然這個(gè)發(fā)展截止到2010年),然后介紹了普適計(jì)算的技術(shù)基礎(chǔ),在隨后就是應(yīng)用方面,以及法律、媒體如何看待這個(gè)技術(shù)了,而我們這篇文章重點(diǎn)就在于初步的發(fā)掘普適計(jì)算的技術(shù)基礎(chǔ)部分,通過這個(gè)部分希望能讓我們對(duì)普適計(jì)算有一個(gè)基礎(chǔ)的了解。當(dāng)然如果大家對(duì)這篇文章的其他部分感興趣我也可以將論文分享給大家。
OK,Let‘s begin!是不是有英語(yǔ)課那味兒了?,“Communication technology, in particular mobile communication, is considered the key technology in ubiquitous computing.”,翻譯過來就是:通信技術(shù),尤其是移動(dòng)通訊技術(shù)是普適計(jì)算的關(guān)鍵技術(shù)。前面我們提到設(shè)備虛擬化的關(guān)鍵技術(shù)是普適計(jì)算,而文中提到普適計(jì)算的關(guān)鍵技術(shù)就是通信技術(shù),除了移動(dòng)通信技術(shù)外,我們現(xiàn)在還擁有許多強(qiáng)大的近距離通訊技術(shù),比如鴻蒙分布式軟總線擁有的技術(shù)就包括上文提到的NFC、WiFi、紅外、USB等,再來看看我們之前的架構(gòu)圖,我們就能明白,普適計(jì)算構(gòu)建了底層硬件層面的基礎(chǔ)互聯(lián),而實(shí)現(xiàn)普適計(jì)算的相關(guān)計(jì)算協(xié)議我們將會(huì)在下一篇推出來詳細(xì)的聊一聊相關(guān)物聯(lián)網(wǎng)協(xié)議。
從技術(shù)角度來看,普適計(jì)算將分為兩個(gè)階段來實(shí)現(xiàn):
第一階段,也就是作者當(dāng)時(shí)所處的階段:
In the present first phase, the possibilities of auto-ID technologies will be utilized above all, in particular in RFID, which contribute towards equipping objects in the real world and persons with information technologies. Especially in the business environment, this enables a seamless communication, which is the basis for a great variety of (new) applications.These are primarily utilized to control processes and material flows more efficiently. For the private user, new information services emerge in this phase, through which mobile devices will be upgraded. The technical preconditions for the new functions and features are an increased performance of the devices, further miniaturisation and the possibility of ad hoc networking。
簡(jiǎn)明的來說就是,在當(dāng)時(shí)所處的第一階段,首先借助例如RFID的自動(dòng)識(shí)別技術(shù),為現(xiàn)實(shí)中的人和物體進(jìn)行匹配,特別是在商業(yè)環(huán)境中實(shí)現(xiàn)無縫通信,比如我們現(xiàn)在隨處可見的與自己手機(jī)配對(duì)的藍(lán)牙耳機(jī)、智能手表、擴(kuò)展顯示屏等,初步將人與物關(guān)聯(lián)起來是做的第一步。
第二階段:
The second phase of ubiquitous computing is characterized by an increasing integration of previously separate solutions and individual end devices to a completely networked information system. This can lead to the replacement of conventional devices by specialized devices (e.g., wearables) or by ‘‘a(chǎn)mbient interfaces” and ‘‘responsive environments” which will be jointly used by many users. The increased use of sensors will enable these systems to recognize their users and environment and thus to process recognized tasks autonomously to a certain extent。
簡(jiǎn)而言之就是將以前與人配對(duì)好的一個(gè)個(gè)獨(dú)立的設(shè)備相互之間連接起來,集成到一個(gè)完全網(wǎng)絡(luò)化的信息系統(tǒng)中,他可能導(dǎo)致傳統(tǒng)設(shè)備被專用設(shè)備所取代,比如我們可能不再需要一個(gè)專門的電視來實(shí)現(xiàn)看電視而是接一個(gè)拓展屏實(shí)現(xiàn)視頻播放功能,身旁的音響來實(shí)現(xiàn)音頻播放功能,而這個(gè)連接過程是自動(dòng)去實(shí)現(xiàn)的而不是自己去到處連接或者接線,同時(shí)可能會(huì)增加傳感器來區(qū)分用戶和任務(wù)而不是自己去切換調(diào)節(jié),比如識(shí)別到你說播放電視就會(huì)給你播放學(xué)習(xí)視頻非誠(chéng)勿擾,而你遠(yuǎn)方4歲的表弟說播放視頻就會(huì)播放喜羊羊與灰太狼,這就是自主識(shí)別用戶和環(huán)境。
我們可以理解為普適計(jì)算的第一階段是連接單一的人和物品,而第二個(gè)階段就是將所有物品通過網(wǎng)絡(luò)相互連接起來,打通任督二脈,而實(shí)現(xiàn)所有物品相互連接就必然需要屏蔽不同協(xié)議之間的區(qū)別,那么不同協(xié)議又有什么異同呢?我們又該如何去打通去連接呢?我們下節(jié)就會(huì)通過去橫向分析不同網(wǎng)絡(luò)協(xié)議來對(duì)分布式軟總線進(jìn)行抽絲剝繭的進(jìn)一步探討!
參考文獻(xiàn):
[1]朱軍紅,唐明根,孫學(xué)杉.虛擬化技術(shù)分析[J].電腦知識(shí)與技術(shù),2016,12(04):229-230.DOI:10.14004。
[2]張浩. 設(shè)備虛擬化技術(shù)研究及在家庭物聯(lián)網(wǎng)中的應(yīng)用[D].湘潭大學(xué),2013。
[3]Meshram V, Meshram V, Patil K. A survey on ubiquitous computing[J]. ICTACT Journal on Soft Computing, 2016, 6(2): 1130-1135。
[4] Friedewald M, Raabe O. Ubiquitous computing: An overview of technology impacts[J]. Telematics and Informatics, 2011, 28(2): 55-65。
??想了解更多內(nèi)容,請(qǐng)?jiān)L問:??
??51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)??