本發(fā)明涉及智能終端領(lǐng)域,尤其涉及一種雙系統(tǒng)定向連接的方法和裝置。
背景技術(shù):
現(xiàn)有的許多交互設(shè)備為提高設(shè)備軟硬件升級的便利性和系統(tǒng)架構(gòu)的穩(wěn)定性,常采用兩個(gè)Android系統(tǒng)設(shè)備,其中一個(gè)Android系統(tǒng)設(shè)備用于實(shí)現(xiàn)對交互設(shè)備的顯示等基本需求;另一個(gè)Android系統(tǒng)設(shè)備用于實(shí)現(xiàn)交互設(shè)備與用戶之間的交互。
在Android雙系統(tǒng)方案中,為了在兩個(gè)系統(tǒng)之間進(jìn)行通信,以Android-A作為host,Android-B作client,在Android-A上通過ADB(Android Debug Bridge,Android調(diào)試橋)連接至B并發(fā)送指令。當(dāng)B需要向A發(fā)送消息時(shí),則以日志文件的方式輸出,A通過解析日志文件得到B的消息。
如果第三方應(yīng)用知道了B向A回傳數(shù)據(jù)的格式,將對其安全性造成很大的威脅。此外,解析日志文件的過程效率也較為低下。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種雙系統(tǒng)定向連接的方法和裝置,以消除現(xiàn)有技術(shù)中雙系統(tǒng)數(shù)據(jù)傳輸?shù)陌踩[患,提高數(shù)據(jù)處理的效率。
第一方面采用一種雙系統(tǒng)定向連接的方法,包括:
建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;
建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接。
其中,所述建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接,包括:
啟動所述第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程,第一守護(hù)進(jìn)程通過ADB以所述第一系統(tǒng)設(shè)備的物理地址作為啟動參數(shù)啟動第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程;
第一守護(hù)進(jìn)程生成套接字連接的監(jiān)聽套接字,將所述套接字連接綁定到所述第一系統(tǒng)設(shè)備的IPv6地址以及所述第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備直接連接的物理網(wǎng)卡;
由所述第二守護(hù)進(jìn)程根據(jù)所述啟動參數(shù)確認(rèn)第一系統(tǒng)設(shè)備的IPv6地址,并通過已連接的網(wǎng)卡向所述IPv6地址發(fā)起主動的套接字連接,以向所述監(jiān)聽套接字確認(rèn)建立套接字連接。
其中,所述建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接之后,還包括:
當(dāng)所述第一系統(tǒng)設(shè)備或第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)需要進(jìn)行通信時(shí),將數(shù)據(jù)通過對應(yīng)的套接字連接依次經(jīng)由系統(tǒng)設(shè)備的守護(hù)進(jìn)程、另一系統(tǒng)設(shè)備的守護(hù)進(jìn)程發(fā)送到另一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)。
其中,所述當(dāng)所述第一系統(tǒng)設(shè)備或第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)需要進(jìn)行通信時(shí),將數(shù)據(jù)通過對應(yīng)的套接字連接依次經(jīng)由系統(tǒng)設(shè)備的守護(hù)進(jìn)程、另一系統(tǒng)設(shè)備的守護(hù)進(jìn)程發(fā)送到另一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)之前,還包括:
設(shè)置所述第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備之間的套接字連接的文件描述符。
其中,所述第一系統(tǒng)設(shè)備的守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的守護(hù)進(jìn)程之間的數(shù)據(jù)發(fā)送為盲轉(zhuǎn)發(fā)。
第二方面采用一種雙系統(tǒng)定向連接的裝置,包括:
第一建立單元,用于建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;
第二建立單元,用于建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接。
其中,所述第一建立單元,包括:
守護(hù)進(jìn)程啟動模塊,用于啟動所述第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程,第一守護(hù)進(jìn)程通過ADB以所述第一系統(tǒng)設(shè)備的物理地址作為啟動參數(shù)啟動第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程;
網(wǎng)卡連接模塊,用于通過第一守護(hù)進(jìn)程生成套接字連接的監(jiān)聽套接字,將所述套接字連接綁定到所述第一系統(tǒng)設(shè)備的IPv6地址以及所述第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備直接連接的物理網(wǎng)卡;
套接字連接模塊,用于由所述第二守護(hù)進(jìn)程根據(jù)所述啟動參數(shù)確認(rèn)第一系統(tǒng)設(shè)備的IPv6地址,并通過已連接的網(wǎng)卡向所述IPv6地址發(fā)起主動的套接字連接,以向所述監(jiān)聽套接字確認(rèn)建立套接字連接。
其中,所述裝置,還包括:
數(shù)據(jù)傳輸單元,用于當(dāng)所述第一系統(tǒng)設(shè)備或第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)需要進(jìn)行通信時(shí),將數(shù)據(jù)通過對應(yīng)的套接字連接依次經(jīng)由系統(tǒng)設(shè)備的守護(hù)進(jìn)程、另一系統(tǒng)設(shè)備的守護(hù)進(jìn)程發(fā)送到另一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)。
其中,所述裝置,還包括:
文件描述符設(shè)置單元,用于數(shù)據(jù)傳輸之前設(shè)置所述第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備之間的套接字連接的文件描述符。
其中,所述第一系統(tǒng)設(shè)備的守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的守護(hù)進(jìn)程之間的數(shù)據(jù)發(fā)送為盲轉(zhuǎn)發(fā)。
本發(fā)明通過建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接,最終建立雙系統(tǒng)之間基于套接字連接的數(shù)據(jù)通道,基于套接字連接的數(shù)據(jù)通道數(shù)據(jù)傳輸?shù)谋C苄院?,提高了安全系?shù),同時(shí)提高了數(shù)據(jù)傳輸效率。
附圖說明
圖1是本發(fā)明實(shí)施例一中的雙系統(tǒng)定向連接的方法的流程圖;
圖2A是本發(fā)明實(shí)施例二中的雙系統(tǒng)定向連接的方法的流程圖;
圖2B是本發(fā)明實(shí)施例二中的雙系統(tǒng)定向連接的數(shù)據(jù)通道的示意圖;
圖3是本發(fā)明實(shí)施例三中的雙系統(tǒng)定向連接的裝置的結(jié)構(gòu)示意圖;
圖4是本發(fā)明實(shí)施例四中的雙系統(tǒng)定向連接的裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖并通過具體實(shí)施方式來進(jìn)一步說明本發(fā)明的技術(shù)方案??梢岳斫獾氖牵颂幩枋龅木唧w實(shí)施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
在更加詳細(xì)地討論示例性實(shí)施例之前應(yīng)當(dāng)提到的是,一些示例性實(shí)施例被描述成作為流程圖描繪的處理或方法。雖然流程圖將各步驟描述成順序的處理,但是其中的許多步驟可以被并行地、并發(fā)地或者同時(shí)實(shí)施。此外,各步驟的順序可以被重新安排。當(dāng)其操作完成時(shí)所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理可以對應(yīng)于方法、函數(shù)、規(guī)程、子例程、子程序等等。
實(shí)施例一
圖1為本發(fā)明實(shí)施例一提供的一種雙系統(tǒng)定向連接的方法的流程圖。本實(shí)施例的方法可以通過硬件和/或軟件的方式實(shí)現(xiàn),并一般可獨(dú)立的配置在終端設(shè)備的應(yīng)用端內(nèi)中實(shí)現(xiàn)本實(shí)施例的方法。
其中,應(yīng)用端可以為內(nèi)嵌于用戶終端中的某個(gè)客戶端的插件,或者為所述用戶終端的操作系統(tǒng)的插件,與內(nèi)嵌于用戶終端中的文本編輯類客戶端(例如,記事本或者編輯器等)配合使用;應(yīng)用端也可以為所述用戶終端中一個(gè)獨(dú)立的可提供文本編輯服務(wù)的客戶端,本實(shí)施例對此不進(jìn)行限制。
S11、建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接。
現(xiàn)有技術(shù)中,第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備間的數(shù)據(jù)傳輸以單向傳輸為主,如果要實(shí)現(xiàn)雙向的數(shù)據(jù)傳輸則過程比較復(fù)雜,并數(shù)據(jù)傳輸?shù)乃俣缺容^慢。
在本方案中,分別在兩個(gè)系統(tǒng)設(shè)備建立用于對兩個(gè)系統(tǒng)設(shè)備間的數(shù)據(jù)傳輸進(jìn)行調(diào)度管理的守護(hù)進(jìn)程,守護(hù)進(jìn)程在系統(tǒng)的后臺進(jìn)行獨(dú)立運(yùn)行,兩個(gè)守護(hù)進(jìn)程之間以套接字的方式進(jìn)行數(shù)據(jù)傳輸。
第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程可以根據(jù)設(shè)定的參數(shù)啟動第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程,根據(jù)設(shè)定的參數(shù)以及第一守護(hù)進(jìn)程和第二守護(hù)進(jìn)程之間的請求和返回建立第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備之間的套接字連接。
S12、建立第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與第一守護(hù)進(jìn)程之間的套接字連接,以及第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與第二守護(hù)進(jìn)程之間的套接字連接。
對于系統(tǒng)設(shè)備而言,系統(tǒng)服務(wù)是外層交互與內(nèi)層數(shù)據(jù)處理之間的節(jié)點(diǎn),本方案中,兩個(gè)系統(tǒng)設(shè)備分別建立系統(tǒng)服務(wù)與各自的守護(hù)進(jìn)程之間的套接字連接,在用戶交互過程中的數(shù)據(jù)通過套接字連接在系統(tǒng)服務(wù)與守護(hù)進(jìn)程之間進(jìn)行傳輸,最終,兩個(gè)系統(tǒng)設(shè)備之間有數(shù)據(jù)發(fā)送的需要時(shí),依次通過自身的系統(tǒng)服務(wù)與守護(hù)進(jìn)程間的套接字、守護(hù)進(jìn)程與守護(hù)進(jìn)程之間的套接字連接以及另一系統(tǒng)的守護(hù)進(jìn)程與系統(tǒng)服務(wù)之間的套接字連接形成的數(shù)據(jù)通道,實(shí)現(xiàn)從一個(gè)系統(tǒng)服務(wù)到另一個(gè)系統(tǒng)服務(wù)的數(shù)據(jù)傳輸。
綜上所述,本實(shí)施例的技術(shù)方案,通過建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接,最終建立雙系統(tǒng)之間基于套接字連接的數(shù)據(jù)通道,基于套接字連接的數(shù)據(jù)通道數(shù)據(jù)傳輸?shù)谋C苄院?,提高了安全系?shù),同時(shí)提高了數(shù)據(jù)傳輸效率。
實(shí)施例二
圖2A為本發(fā)明實(shí)施例二提供的雙系統(tǒng)定向連接的方法的流程圖,如圖所示,該方法包括:
步驟S21、啟動第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程,第一守護(hù)進(jìn)程通過ADB以第一系統(tǒng)設(shè)備的物理地址作為啟動參數(shù)啟動第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程。
交互設(shè)備中的第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備的初始連接方式為ADB,ADB主要是用于單向傳輸,本方案中將數(shù)據(jù)的發(fā)起端定義為第一系統(tǒng)設(shè)備,數(shù)據(jù)的接收端定義為第二系統(tǒng)設(shè)備。在建立本方案中的定向連接時(shí),首先啟動第一守護(hù)進(jìn)程,守護(hù)進(jìn)程可以由用戶自行定義執(zhí)行預(yù)定功能,本方案中的第一守護(hù)進(jìn)程和第二守護(hù)進(jìn)程用于建立第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備的定向連接。
步驟S22、第一守護(hù)進(jìn)程生成套接字連接,將套接字連接綁定到第一系統(tǒng)設(shè)備的IPv6地址以及第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備直接連接的物理網(wǎng)卡。
與ADB不同,套接字連接的物理連接由網(wǎng)卡實(shí)現(xiàn),連接的基礎(chǔ)參數(shù)是第一系統(tǒng)設(shè)備的IPv6地址,第一守護(hù)進(jìn)程將套接字連接綁定到第一系統(tǒng)的IPv6地址,同時(shí)連接到第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備的網(wǎng)卡,建立第一守護(hù)進(jìn)程和第二守護(hù)進(jìn)程的初始連接。
步驟S23、由第二守護(hù)進(jìn)程根據(jù)啟動參數(shù)確認(rèn)第一系統(tǒng)設(shè)備的IPv6地址,并通過已連接的網(wǎng)卡向IPv6地址發(fā)起主動的套接字連接,以向所述監(jiān)聽套接字確認(rèn)建立套接字連接。
上述第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備的套接字的建立過程具體而言,第一系統(tǒng)設(shè)備完成套接字連接建立的初始設(shè)置,并將自身的物理地址通過ADB發(fā)送到第二系統(tǒng)設(shè)備并激活第二系統(tǒng)設(shè)備的守護(hù)進(jìn)程;第二守護(hù)進(jìn)程根據(jù)相關(guān)參數(shù)確認(rèn)第一系統(tǒng)設(shè)備的IPv6地址,并通過已連接的網(wǎng)卡發(fā)起主動的套接字連接請求,第一系統(tǒng)設(shè)備根據(jù)監(jiān)聽套接字對第二守護(hù)進(jìn)程發(fā)起的套接字連接請求的監(jiān)聽結(jié)果建立套接字連接。
步驟S24、建立第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與第一守護(hù)進(jìn)程之間的套接字連接,以及第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與第二守護(hù)進(jìn)程之間的套接字連接。
最終形成的數(shù)據(jù)通道如圖2B所示,第一系統(tǒng)設(shè)備50的系統(tǒng)服務(wù)51與第一守護(hù)進(jìn)程52之間的套接字連接直接根據(jù)預(yù)留的通訊端口建立即可,第二系統(tǒng)設(shè)備60的系統(tǒng)服務(wù)61與第二守護(hù)進(jìn)程62之間的套接字連接的建立過程類似,再加上已建立的第一守護(hù)進(jìn)程52和第二守護(hù)進(jìn)程62之間的套接字連接,形成基于套接字連接的數(shù)據(jù)通道。
步驟S25、設(shè)置第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備之間的套接字連接的文件描述符。
在本方案中建立的定向連接中,數(shù)據(jù)通道I/O復(fù)用,為保證數(shù)據(jù)傳輸過程中對套接字連接的有效調(diào)度,可以通過poll函數(shù)監(jiān)聽數(shù)據(jù)通道的文件描述符,并可以對文件描述符進(jìn)行設(shè)置。在監(jiān)聽過程中,如果監(jiān)聽到文件描述為休眠,則發(fā)送命令給另外一個(gè)系統(tǒng)設(shè)備,以維持連接;如果監(jiān)聽到文件描述為可“讀”,則通過套接字連接讀取接收到的數(shù)據(jù),并設(shè)置poll的參數(shù),表示對“寫”感興趣;如果監(jiān)聽到文件描述為可“寫”,則通過套接字連接寫數(shù)據(jù)進(jìn)行傳輸,如果保存待寫入數(shù)據(jù)的緩存區(qū)已清空,則設(shè)置poll的參數(shù),表示對“寫”不感興趣,如果保存待寫入數(shù)據(jù)的緩存區(qū)一次未發(fā)送完,則繼續(xù)監(jiān)聽文件描述符,直到數(shù)據(jù)傳輸完成。
步驟S26、當(dāng)?shù)谝幌到y(tǒng)設(shè)備或第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)需要進(jìn)行通信時(shí),將數(shù)據(jù)通過對應(yīng)的套接字連接依次經(jīng)由系統(tǒng)設(shè)備的守護(hù)進(jìn)程、另一系統(tǒng)設(shè)備的守護(hù)進(jìn)程發(fā)送到另一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)。
具體到數(shù)據(jù)傳輸過程,所述第一系統(tǒng)設(shè)備的守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的守護(hù)進(jìn)程之間的數(shù)據(jù)以盲轉(zhuǎn)發(fā)的方式通過各個(gè)套接字連接依次發(fā)送。系統(tǒng)設(shè)備將自身最先建立的數(shù)據(jù)傳輸任務(wù)對應(yīng)的數(shù)據(jù)最先發(fā)送出去,發(fā)送的數(shù)據(jù)塊數(shù)目就等于數(shù)據(jù)傳輸任務(wù)建立時(shí)的數(shù)據(jù)塊的數(shù)目。
綜上所述,本實(shí)施例的技術(shù)方案,通過建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接,最終建立雙系統(tǒng)之間基于套接字連接的數(shù)據(jù)通道,基于套接字連接的數(shù)據(jù)通道數(shù)據(jù)傳輸?shù)谋C苄院?,提高了安全系?shù),同時(shí)提高了數(shù)據(jù)傳輸效率。同時(shí),基于套接字連接的數(shù)據(jù)傳輸以及數(shù)據(jù)傳輸過程中基于文件描述符的調(diào)度提高了數(shù)據(jù)傳輸?shù)男室约皵?shù)據(jù)通道的利用率。
實(shí)施例三
圖3所示為本發(fā)明實(shí)施例三提供的雙系統(tǒng)定向連接的裝置的結(jié)構(gòu)示意圖,該裝置可通過硬件和/或軟件的方式實(shí)現(xiàn),并一般可獨(dú)立的配置在終端設(shè)備的實(shí)現(xiàn)本實(shí)施例的裝置。如圖3所示,所述雙系統(tǒng)定向連接的裝置具體包括:第一建立單元和第二建立單元12;
第一建立單元10和第二建立單元20;
第一建立單元10,用于建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;
第二建立單元20,用于建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接。
綜上所述,上述各單元的協(xié)同運(yùn)轉(zhuǎn),通過建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接,最終建立雙系統(tǒng)之間基于套接字連接的數(shù)據(jù)通道,基于套接字連接的數(shù)據(jù)通道數(shù)據(jù)傳輸?shù)谋C苄院?,提高了安全系?shù),同時(shí)提高了數(shù)據(jù)傳輸效率。
實(shí)施例四
圖4所示為本發(fā)明實(shí)施例四提供的雙系統(tǒng)定向連接的裝置的結(jié)構(gòu)示意圖,該裝置可通過硬件和/或軟件的方式實(shí)現(xiàn),并一般可獨(dú)立的配置在終端設(shè)備的實(shí)現(xiàn)本實(shí)施例的裝置。如圖4所示,所述雙系統(tǒng)定向連接的裝置具體包括:第一建立單元10和第二建立單元20;
第一建立單元10,用于建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;
第二建立單元20,用于建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接。
其中,所述第一建立單元10,包括:
守護(hù)進(jìn)程啟動模塊11,用于啟動所述第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程,第一守護(hù)進(jìn)程通過ADB以所述第一系統(tǒng)設(shè)備的物理地址作為啟動參數(shù)啟動第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程;
網(wǎng)卡連接模塊12,用于通過第一守護(hù)進(jìn)程生成套接字連接,將所述套接字連接綁定到所述第一系統(tǒng)設(shè)備的IPv6地址以及所述第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備直接連接的物理網(wǎng)卡;
套接字連接模塊13,用于由所述第二守護(hù)進(jìn)程根據(jù)所述啟動參數(shù)確認(rèn)第一系統(tǒng)設(shè)備的IPv6地址,并通過已連接的網(wǎng)卡向所述IPv6地址發(fā)起主動的套接字連接,以向所述監(jiān)聽套接字確認(rèn)建立套接字連接。
其中,所述裝置,還包括:
數(shù)據(jù)傳輸單元30,用于當(dāng)所述第一系統(tǒng)設(shè)備或第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)需要進(jìn)行通信時(shí),將數(shù)據(jù)通過對應(yīng)的套接字連接依次經(jīng)由系統(tǒng)設(shè)備的守護(hù)進(jìn)程、另一系統(tǒng)設(shè)備的守護(hù)進(jìn)程發(fā)送到另一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)。
其中,所述裝置,還包括:
文件描述符設(shè)置單元40,用于數(shù)據(jù)傳輸之前設(shè)置所述第一系統(tǒng)設(shè)備和第二系統(tǒng)設(shè)備之間的套接字連接的文件描述符。
其中,所述第一系統(tǒng)設(shè)備的守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的守護(hù)進(jìn)程之間的數(shù)據(jù)發(fā)送為盲轉(zhuǎn)發(fā)。
綜上所述,上述各單元的協(xié)同運(yùn)轉(zhuǎn),通過建立第一系統(tǒng)設(shè)備的第一守護(hù)進(jìn)程和第二系統(tǒng)設(shè)備的第二守護(hù)進(jìn)程之間的套接字連接;建立所述第一系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第一守護(hù)進(jìn)程之間的套接字連接,以及所述第二系統(tǒng)設(shè)備的系統(tǒng)服務(wù)與所述第二守護(hù)進(jìn)程之間的套接字連接,最終建立雙系統(tǒng)之間基于套接字連接的數(shù)據(jù)通道,基于套接字連接的數(shù)據(jù)通道數(shù)據(jù)傳輸?shù)谋C苄院?,提高了安全系?shù),同時(shí)提高了數(shù)據(jù)傳輸效率。同時(shí),基于套接字連接的數(shù)據(jù)傳輸以及數(shù)據(jù)傳輸過程中基于文件描述符的調(diào)度提高了數(shù)據(jù)傳輸?shù)男室约皵?shù)據(jù)通道的利用率。
上述實(shí)施例中提供的雙系統(tǒng)定向連接的裝置可執(zhí)行本發(fā)明任意實(shí)施例所提供的雙系統(tǒng)定向連接的方法,具備執(zhí)行該方法相應(yīng)的功能模塊和有益效果。未在上述實(shí)施例中詳盡描述的技術(shù)細(xì)節(jié),可參見本發(fā)明任意實(shí)施例所提供的雙系統(tǒng)定向連接的方法。
注意,上述僅為本發(fā)明的較佳實(shí)施例及所運(yùn)用技術(shù)原理。本領(lǐng)域技術(shù)人員會理解,本發(fā)明不限于這里所述的特定實(shí)施例,對本領(lǐng)域技術(shù)人員來說能夠進(jìn)行各種明顯的變化、重新調(diào)整和替代而不會脫離本發(fā)明的保護(hù)范圍。因此,雖然通過以上實(shí)施例對本發(fā)明進(jìn)行了較為詳細(xì)的說明,但是本發(fā)明不僅僅限于以上實(shí)施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實(shí)施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。