01背景&問題
① 移動系統方面,單就Android而言,超過24000個擴散系統可用。它們和不同的硬件平臺高度集成,這樣硬件平臺集成了大量使用非標準接口的不同硬件設備,并且使用不標準的接口。不同版本的應用軟件運行在這些系統上,包括各種版本的Android和IOS,尤其是Android。設備、硬件和軟件的異構讓跨系統的結合多種設備變得很難;
②數據格式方面,眾多的移動設備會產生不同數據格式的大量數據,從各種各樣的傳感器到音頻和視頻設備,異構的數據格式給不同系統和設備之間的資源共享帶來極大困難;
③ 網絡性能方面,要能夠在既定網絡環(huán)境下,實現高帶寬的數據共享并且保證安全和性能;
02設計
首先,M2提出以數據為中心的共享方式,將移動設備分為client和server,分別在client和server建立可用設備清單和設備清單。M2通過修改移動系統的System Service層實現跨設備的資源共享,因為上層應用是通過系統服務(public API)獲取的數據。
另外,M2只需要修改client端和server端部分本地框架,引入用戶級別的虛擬設備。下圖是M2的架構。以觸摸屏輸入為例:在server端,M2 App運行在前臺,當用戶觸摸屏幕,這個input event就被M2 App捕獲,然后APP將對這input event標準化并且打包它的細節(jié)變成M2系統的標準輸入格式;
然后,這個event就和一些輔助信息轉發(fā)到client端的輸入系統;接收之后,client端的input system services會解包input event然后轉換成client平臺的input format。如果有額外需求(根據輔助信息),還要做計算進行適配(fused display)。
其次,M2通過device transformation和transformation plugin框架靈活的使用遠程設備。使得現在的App可以透明使用并且組合本地和遠程的設備,無需修改應用就可以達到multi-mobile的功能。一個device transformation框架包含三部分:①input device abstraction ;② output device abstraction;③ transformation function。表3顯示了這些設備轉換類型。
例如,該表第一個fused用于融合輸入,轉換設備的一種應用,fused display將四個平板結合成為一個,按照比例切分為四部分,在不影響游戲體驗的情況下,擴大了顯示界面。如下圖所示:
又如該表第二個translated類型,使用轉換設備將眼睛移動變成觸屏輸入,這對于殘疾人或者無法使用手觸的人來說非常實用。服務端設備通過人臉識別功能使用相機追蹤眼睛移動,產生的信號會轉換為觸摸,它將作為輸入數據傳輸到客戶端設備。
最后,M2 中client和server通過標準網絡sockets通信,使用wifi或者wifi-direct。對于控制消息和重要數據,M2使用TCP;對于顯示、音頻、和相機preview,使用UDP。同時,M2通過硬件編碼來壓縮display和audio的數據,保證系統面對高帶寬傳輸時的性能表現;M2通過128-bit AES加密和設置連接密鑰確保移動設備連接的安全;M2系統中,服務端設備除發(fā)送時外不承擔其他功能 類似于靜默的 外部設備 服務端和客戶端可以隨時斷開連接隨時重新連接,M2在client端會維持所有App的狀態(tài)信息,根據傳輸的設備數據調整傳輸策略。App的狀態(tài)完全在client端,網絡的斷連不會導致App崩潰。
03實驗結果
M2運行在五種不同 SoC(Nexus 4 5 7 9, iPad mini以及iPhone 6S) 和九種不同版本的 Android 和 iOS 的異構智能手機和平板電腦配置上,包括 Android 版本 Jelly Bean (4.3)、KitKat (4.4)、Lollipop (5.0)、Marshmallow (6.0.x), 和Nougat(7.1.1)。主要有以下三方面性能指標:
① 顯示性能
論文采用 Android PassMark 基準測試,這是一組資源密集型測試,用于評估 CPU、內存、I/O 和圖形性能。圖 3 顯示了根據 Android Lollipop 性能標準化的 PassMark 基準測量結果;越低越好。隨著遠程顯示設備數量的增加,M2 會產生一些額外的開銷,但這種開銷并不大,并且在某些測試中與使用的設備數量無關。圖 4 顯示了運行 PassMark 測試時所需的每臺設備平均網絡帶寬,匯總到最小圖形 CPU、磁盤和內存測試、2D 測試、3D 簡單測試和 3D 復雜測試中。運行基準測試的客戶端所需的網絡帶寬是顯示的帶寬乘以遠程設備的數量,因為它將顯示數據發(fā)送到每個遠程設備。
② 拍照延遲
捕獲時間表明,與使用本地攝像機相比,M2 產生的額外延遲可以忽略不計。遠程攝像機場景的總時間要高得多,因為通過網絡將圖片傳輸到客戶端應用程序的默認本地存儲需要時間。在 N7 使用 N4 遠程攝像頭的最壞情況下,由于傳輸時間的原因,總時間比捕獲時間多近一秒。圖 5 還顯示了拍攝照片的帶寬要求,包括相機預覽和從遠程相機拍攝的照片到本地存儲的傳輸中。相機預覽的分辨率低于原始顯示分辨率,因此其帶寬要求低于 3Mbps。
③ 音頻延遲
論文使用音頻基準 Zoiper 測量音頻和麥克風延遲。圖 6 顯示了音頻延遲。對于大多數測試,與普通 Android 相比,M2 增加的延遲可以忽略不計,即使使用遠程麥克風和揚聲器也是如此。M2 產生更高性能開銷的一種情況是,當使用遠程揚聲器和麥克風以 44.1 KHz 的采樣率和 81.3 毫秒的 Zoiper 緩沖區(qū)大小設置運行基準測試時,導致大約 100 毫秒的額外延遲和近 20% 高架。
04結論
首先,M2引入了一種新的以用戶級數據為中心的方法,即通過System Services導出和導入設備數據,這使得M2具體良好移植性;其次,M2引入了設備轉換,以透明地混合和匹配不同系統中不同的設備和不同的數據格式。這使得未經修改的應用程序能夠以新的強大的方式共享和組合設備,例如多端顯示器、更好的音頻質量的電話會議、面向殘疾用戶的用戶界面,以及在iOS系統上運行Android應用程序。同時,M2利用商用移動編碼和加密硬件來實現高質量性能,甚至用于3D游戲。最后,該項目未開源,復現上有一定難度。
審核編輯:劉清
-
傳感器
+關注
關注
2551文章
51097瀏覽量
753529 -
轉換器
+關注
關注
27文章
8703瀏覽量
147166 -
UDP協議
+關注
關注
0文章
69瀏覽量
12697 -
狀態(tài)機
+關注
關注
2文章
492瀏覽量
27539 -
TCP通信
+關注
關注
0文章
146瀏覽量
4223
原文標題:如何實現異構設備的資源共享?
文章出處:【微信號:SSDFans,微信公眾號:SSDFans】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論