一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及智能終端通信領(lǐng)域,具體涉及一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置。
【背景技術(shù)】
[0002]隨著智能化、物聯(lián)網(wǎng)時代的到來,智能家居、智能手機、智能路由等智能終端日益普及,走進千家萬戶。
[0003]Google公司推出的Android(安卓)是一個以Linux為基礎(chǔ)的開源移動設(shè)備操作系統(tǒng),其主要通信方式為Binder通信,Binder通信采用同步方式,效率高,Binder通信是通過Linux的Binder Driver來實現(xiàn)的。由于Android免費開放,系統(tǒng)集成性高,被廣泛的運用在智能手機、平板電腦等各類多媒體智能終端上。
[0004]目前,除了采用Android技術(shù)的智能移動終端產(chǎn)品之外,還有很大一部分智能移動終端產(chǎn)品采用的是Android之外的技術(shù),比如Linux系統(tǒng)。Liunx系統(tǒng)通信的方式主要有Socket、命名管道、消息隊列、信號量和共享內(nèi)存方式。而由于通信方式的不同,Android系統(tǒng)和Linux系統(tǒng)間的相互通信就會受到阻礙。
【發(fā)明內(nèi)容】
[0005]本發(fā)明所要解決的技術(shù)問題是由于通信方式的不同,Android系統(tǒng)和Linux系統(tǒng)間的相互通信受阻的問題。
[0006]為了解決上述技術(shù)問題,本發(fā)明所采用的技術(shù)方案是提供一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置,包括Android系統(tǒng)的Service服務(wù)和Linux系統(tǒng)的Mpa進程服務(wù),所述Service服務(wù)接收Android系統(tǒng)的APP應(yīng)用程序發(fā)送的第一請求數(shù)據(jù),并設(shè)置有第一格式轉(zhuǎn)換單元和第一 Socket單元;所述Mpa進程服務(wù)接收Linux系統(tǒng)的進程服務(wù)發(fā)送的第二請求數(shù)據(jù),并設(shè)置有第二格式轉(zhuǎn)換單元和第二 Socket單元;
[0007]所述第一格式轉(zhuǎn)換單元將第一請求數(shù)據(jù)或者對第二請求數(shù)據(jù)的進行處理的第一處理結(jié)果轉(zhuǎn)化為第一格式,所述第一 Socket單元將第一格式的第一請求數(shù)據(jù)或者第一處理結(jié)果以Socket報文形式發(fā)送給所述第二 Socket單元,所述第二 Socket單元讀取Socket報文的第一請求數(shù)據(jù)或者第一處理結(jié)果,所述第二格式轉(zhuǎn)換單元將讀取的第一請求數(shù)據(jù)或者第一處理結(jié)果轉(zhuǎn)換為第二格式,Linux系統(tǒng)的進程服務(wù)根據(jù)第二格式的第一請求數(shù)據(jù)進行相應(yīng)處理得到第二處理結(jié)果或者接收第一處理結(jié)果并顯示;
[0008]所述第二格式轉(zhuǎn)換單元將第二處理結(jié)果或者第二請求數(shù)據(jù)轉(zhuǎn)化為第二格式,所述第二 Socket單元將第二格式的第二處理結(jié)果或者第二請求數(shù)據(jù)以Socket報文形式發(fā)送給所述第一 Socket單元,所述第一 Socket單元讀取Socket報文的第二處理結(jié)果或者第二請求數(shù)據(jù),第一格式轉(zhuǎn)換單元將讀取的第二處理結(jié)果或者第二請求數(shù)據(jù)轉(zhuǎn)化為第一格式,Android系統(tǒng)的APP應(yīng)用程序接收第二處理結(jié)果并顯示或者根據(jù)第一格式的第二請求數(shù)據(jù)進行相應(yīng)處理得到第一處理結(jié)果。
[0009]在上述一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置中,所述第一格式為GS0N字符串格式,所述第二格式為JS0N字符串格式。
[0010]在上述一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置中,在所述第一格式轉(zhuǎn)換單元和所述第一 Socket單元之間設(shè)有第一加密單元和第一解密單元;在所述第二格式轉(zhuǎn)換單元和所述第二 Socket單元之間設(shè)有分別與第一加密單元和第一解密單元對應(yīng)的第二解密單元和第二加密單元;
[0011]所述第一加密單元對由第一格式轉(zhuǎn)換單元轉(zhuǎn)化為第一格式的第一請求數(shù)據(jù)或者第一處理結(jié)果按照預(yù)設(shè)格式進行加密;
[0012]所述第二解密單元對由第二 Socket單元從Socket報文中讀取的第一請求數(shù)據(jù)或者第一處理結(jié)果以預(yù)設(shè)格式進行解密;
[0013]所述第二加密單元對由第二格式轉(zhuǎn)換單元轉(zhuǎn)化為第二格式的第二處理結(jié)果或者第二請求數(shù)據(jù)按照預(yù)設(shè)格式進行加密;
[0014]所述第一解密單元對由第一 Socket單元從Socket報文中讀取的第二處理結(jié)果或者第二請求數(shù)據(jù)以預(yù)設(shè)格式進行解密。
[0015]在上述一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置中,所述預(yù)設(shè)格式為Base64 方式。
[0016]本發(fā)明通過充分利用Android系統(tǒng)自帶的Service服務(wù)和GS0N算法以及Linux系統(tǒng)的Mpa進程服務(wù)和開源的JS0N算法,并采用C/S模式和Socket通信方式進行數(shù)據(jù)傳輸,實現(xiàn)了在多媒體終端Linux與Android雙系統(tǒng)間的通信,不僅保證低成本,結(jié)構(gòu)簡單,實施性高,而且通信速度快,移植性強,擴展性、可靠性好。
【附圖說明】
[0017]圖1為本發(fā)明提供的一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置結(jié)構(gòu)框圖;
[0018]圖2為本發(fā)明提供的一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置的工作流程圖。
【具體實施方式】
[0019]本發(fā)明充分利用Android系統(tǒng)中提供的Service服務(wù)和Linux系統(tǒng)中提供的Mpa進程服務(wù),并采用C/S (Client/Server)模式,通過Socket通信方式實現(xiàn)Android系統(tǒng)與Linux系統(tǒng)雙系統(tǒng)間的通信。其中,當(dāng)Android系統(tǒng)作為Client端時,Linux系統(tǒng)則作為Server端;當(dāng)Android系統(tǒng)作為Server端時,則Linux系統(tǒng)作為Client端,兩系統(tǒng)可隨時根據(jù)數(shù)據(jù)傳輸?shù)男枰M行改變,來實時保證通信的準(zhǔn)確性。
[0020]下面結(jié)合說明書附圖和具體實施例對本發(fā)明做出詳細(xì)的說明。
[0021]如圖1所示,本發(fā)明提供了一種Linux系統(tǒng)與Android系統(tǒng)的雙系統(tǒng)通信裝置,該裝置的應(yīng)用環(huán)境為Linux系統(tǒng)與Android系統(tǒng)雙系統(tǒng)終端,具體包括Android系統(tǒng)的Service服務(wù)10和Linux系統(tǒng)的Mpa進程服務(wù)20 ;
[0022]Service服務(wù)10設(shè)置有第一格式轉(zhuǎn)換單元11和第一 Socket單元12,用于為Android系統(tǒng)中的各個應(yīng)用程序提供與Linux系統(tǒng)終端進行通信的服務(wù),即Service服務(wù)10接收Android系統(tǒng)的APP應(yīng)用程序發(fā)送的第一請求數(shù)據(jù),并通過Mpa進程服務(wù)20或Linux系統(tǒng)其他進程服務(wù)對該第一請求數(shù)據(jù)進行與請求相應(yīng)的處理,得到第二處理結(jié)果;
[0023]Mpa進程服務(wù)20設(shè)置有第二格式轉(zhuǎn)換單元21和第二 Socket單元22,用于為Linux系統(tǒng)中各個進程提供與Android系統(tǒng)終端進行通信的服務(wù),即Mpa進程服務(wù)20接收Linux系統(tǒng)的進程服務(wù)發(fā)送的第二請求數(shù)據(jù),并通過Android系統(tǒng)的APP應(yīng)用程序?qū)υ摰诙埱髷?shù)據(jù)進行與請求相應(yīng)的處理,得到第一處理結(jié)果。
[0024]第一格式轉(zhuǎn)換單元11將第一請求數(shù)據(jù)或者對第二請求數(shù)據(jù)的進行處理的第一處理結(jié)果轉(zhuǎn)化為第一格式,第一 Socket單元12將第一格式的第一請求數(shù)據(jù)或者第一處理結(jié)果以Socket報文形式發(fā)送給第二 Socket單元22,第二 Socket單元22監(jiān)聽指定端口的Socket報文,并讀取Socket報文中的第一請求數(shù)據(jù)或者第一處理結(jié)果,再由第二格式轉(zhuǎn)換單元21將讀取的第一請求數(shù)據(jù)或者第一處理結(jié)果轉(zhuǎn)換為第二格式,Linux系統(tǒng)的服務(wù)進程(Mpa進程服務(wù)20和其他進程服務(wù))根據(jù)第二格式的第一請求數(shù)據(jù)進行相應(yīng)處理得到第二處理結(jié)果或者接收第一處理結(jié)果并顯示,其中,要將第二處理結(jié)果返回Android系統(tǒng)端;
[0025]第二格式轉(zhuǎn)換單元21將第二處理結(jié)果或者第二請求數(shù)據(jù)轉(zhuǎn)化為第二格式,第二Socket單元22將第二格式的第二處理結(jié)果或者第二請求數(shù)據(jù)以Socket報文形式發(fā)送給第一 Socket單元12,第一 Socket單元12監(jiān)聽指定端口的Socket報文,并讀取Socket報文中的第二處理結(jié)果或者第二請求數(shù)據(jù),第一格式轉(zhuǎn)換單元11將讀取的第二處理結(jié)果或者第二請求數(shù)據(jù)轉(zhuǎn)化為第一格式,Android系統(tǒng)的APP應(yīng)用程序接收第二處理結(jié)果并