[發(fā)明專利]基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的復(fù)用方法及裝置有效
| 申請(qǐng)?zhí)枺?/td> | 202010105004.1 | 申請(qǐng)日: | 2020-02-20 |
| 公開(公告)號(hào): | CN111339541B | 公開(公告)日: | 2022-08-02 |
| 發(fā)明(設(shè)計(jì))人: | 吳恒剛 | 申請(qǐng)(專利權(quán))人: | OPPO廣東移動(dòng)通信有限公司 |
| 主分類號(hào): | G06F21/60 | 分類號(hào): | G06F21/60;G06F9/54 |
| 代理公司: | 北京知帆遠(yuǎn)景知識(shí)產(chǎn)權(quán)代理有限公司 11890 | 代理人: | 吳文婧 |
| 地址: | 523860 廣東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 binder 驅(qū)動(dòng) 進(jìn)程 通信 ipc 機(jī)制 方法 裝置 | ||
本發(fā)明提出一種基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的復(fù)用方法及裝置,應(yīng)用于移動(dòng)設(shè)備中,移動(dòng)設(shè)備具有至少兩個(gè)的操作系統(tǒng),各操作系統(tǒng)所屬的容器共用Linux內(nèi)核,該方法包括:在binder驅(qū)動(dòng)中獲取各操作系統(tǒng)所屬容器的命名空間標(biāo)識(shí),命名空間標(biāo)識(shí)由Linux內(nèi)核預(yù)先分配;將命名空間標(biāo)識(shí)發(fā)送至移動(dòng)設(shè)備的主機(jī)中的服務(wù)管理組件;服務(wù)管理組件采用命名空間標(biāo)識(shí)和所提供的服務(wù)名共同命名所提供的服務(wù)。通過本發(fā)明能夠有效防止惡意程序跨操作系統(tǒng)獲取服務(wù)和使用服務(wù),有效提升多操作系統(tǒng)移動(dòng)設(shè)備的安全性,通過對(duì)基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的改進(jìn),達(dá)到復(fù)用基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的目的,有效提升多操作系統(tǒng)移動(dòng)設(shè)備的進(jìn)程間響應(yīng)性能。
技術(shù)領(lǐng)域
本發(fā)明涉及電子技術(shù)領(lǐng)域,尤其涉及一種基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的復(fù)用方法及裝置。
背景技術(shù)
隨著信息化社會(huì)的不斷發(fā)展,移動(dòng)辦公在日常生活中越來越普及,一臺(tái)移動(dòng)設(shè)備需同時(shí)兼顧工作和生活,雙android系統(tǒng)是一種解決方案,即一臺(tái)移動(dòng)設(shè)備兩個(gè)操作系統(tǒng),辦公模式的操作系統(tǒng)可以用于業(yè)務(wù)辦公,而普通模式的操作系統(tǒng)用于個(gè)人生活,兩個(gè)系統(tǒng)用戶數(shù)據(jù)相互獨(dú)立。在android系統(tǒng)中,binder驅(qū)動(dòng)的進(jìn)程間通信(Inter-ProcessCommunication,IPC)機(jī)制被大量使用,binder驅(qū)動(dòng)的IPC機(jī)制是典型的C/S架構(gòu),移動(dòng)設(shè)備中的服務(wù)管理組件Service manager、能夠提供服務(wù)的server進(jìn)程、和獲取服務(wù)的client進(jìn)程均通過binder驅(qū)動(dòng)進(jìn)行交互,完成注冊(cè)服務(wù)、獲取服務(wù)、使用服務(wù)的過程。在這個(gè)過程中每個(gè)服務(wù)均以服務(wù)名作為唯一標(biāo)識(shí),服務(wù)管理組件service manager以服務(wù)名為唯一關(guān)鍵字進(jìn)行server管理。
而由于容器方案是共用Linux內(nèi)核,而且binder驅(qū)動(dòng)限制一個(gè)binder設(shè)備只能有一個(gè)service manager的。所以在部署binder時(shí),將service manager部署在移動(dòng)設(shè)備的主機(jī)HOST中,Android系統(tǒng)中的能夠提供服務(wù)的server進(jìn)程和獲取服務(wù)的client進(jìn)程均部署在對(duì)應(yīng)的容器當(dāng)中,service manager是基于服務(wù)名進(jìn)行服務(wù)的管理,這樣部署,就需要解決服務(wù)重名的問題。
相關(guān)技術(shù)中,通常是修改server服務(wù)名,例如在用戶態(tài)的android系統(tǒng)中將server名字加上當(dāng)前容器名字作為后綴;或者在內(nèi)核態(tài)的binder驅(qū)動(dòng)中分析server注冊(cè)服務(wù)過程中攜帶的服務(wù)名、client獲取服務(wù)過程中攜帶的服務(wù)名,并進(jìn)行修改后再發(fā)送給servicemanager。
這種方式下,由于是在用戶態(tài)的android系統(tǒng)增加名字?jǐn)U展,安全性差,例如惡意程序開發(fā)者,可以在知道改名規(guī)則以后,篡改要獲取的服務(wù)名,并通過直接訪問binder驅(qū)動(dòng),進(jìn)而達(dá)到獲取非本android系統(tǒng)服務(wù)的目的。
發(fā)明內(nèi)容
本發(fā)明旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問題之一。
為此,本發(fā)明提出一種基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的復(fù)用方法及裝置,能夠有效防止惡意程序跨操作系統(tǒng)獲取服務(wù)和使用服務(wù),有效提升多操作系統(tǒng)移動(dòng)設(shè)備的安全性,通過對(duì)基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的改進(jìn),達(dá)到復(fù)用基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的目的,有效提升多操作系統(tǒng)移動(dòng)設(shè)備的進(jìn)程間響應(yīng)性能。
本發(fā)明第一方面實(shí)施例提出的基于binder驅(qū)動(dòng)的進(jìn)程間通信IPC機(jī)制的復(fù)用方法,應(yīng)用于移動(dòng)設(shè)備中,所述移動(dòng)設(shè)備具有至少兩個(gè)的操作系統(tǒng),各所述操作系統(tǒng)所屬的容器共用Linux內(nèi)核,包括:在所述binder驅(qū)動(dòng)中獲取各所述操作系統(tǒng)所屬容器的命名空間標(biāo)識(shí),所述命名空間標(biāo)識(shí)由所述Linux內(nèi)核預(yù)先分配;將所述命名空間標(biāo)識(shí)發(fā)送至所述移動(dòng)設(shè)備的主機(jī)中的服務(wù)管理組件;所述服務(wù)管理組件采用所述命名空間標(biāo)識(shí)和所提供的服務(wù)名共同命名所述所提供的服務(wù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于OPPO廣東移動(dòng)通信有限公司,未經(jīng)OPPO廣東移動(dòng)通信有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010105004.1/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 上一篇:信息展示方法和裝置、電子設(shè)備、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 下一篇:分布式文件系統(tǒng)日志提交方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F21-00 防止未授權(quán)行為的保護(hù)計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)的安全裝置
G06F21-02 .通過保護(hù)計(jì)算機(jī)的特定內(nèi)部部件
G06F21-04 .通過保護(hù)特定的外圍設(shè)備,如鍵盤或顯示器
G06F21-06 .通過感知越權(quán)操作或外圍侵?jǐn)_
G06F21-20 .通過限制訪問計(jì)算機(jī)系統(tǒng)或計(jì)算機(jī)網(wǎng)絡(luò)中的節(jié)點(diǎn)
G06F21-22 .通過限制訪問或處理程序或過程
- 一種安卓系統(tǒng)中多業(yè)務(wù)下進(jìn)程間通信系統(tǒng)及其實(shí)現(xiàn)方法
- 一種處理方法及裝置
- 一種移動(dòng)終端及其進(jìn)程間通信的限制方法、存儲(chǔ)介質(zhì)
- 電子裝置及其限制進(jìn)程間通信的方法、存儲(chǔ)介質(zhì)
- 一種移動(dòng)終端及其進(jìn)程間通信的限制方法、存儲(chǔ)介質(zhì)
- 電子裝置及其限制進(jìn)程間通信的方法、存儲(chǔ)介質(zhì)
- 一種實(shí)時(shí)安卓操作系統(tǒng)中的實(shí)時(shí)Binder處理避免非實(shí)時(shí)Binder競(jìng)爭的方法
- 資源調(diào)度方法及電子設(shè)備
- 異常定位方法、裝置、存儲(chǔ)介質(zhì)及移動(dòng)終端
- 基于binder的軟回路動(dòng)態(tài)消回聲方法及移動(dòng)終端
- 電流驅(qū)動(dòng)裝置的驅(qū)動(dòng)電路,電流驅(qū)動(dòng)設(shè)備及其驅(qū)動(dòng)方法
- 驅(qū)動(dòng)電路、驅(qū)動(dòng)模塊以及電機(jī)驅(qū)動(dòng)裝置
- 驅(qū)動(dòng)電路、驅(qū)動(dòng)模塊和電機(jī)驅(qū)動(dòng)設(shè)備
- 驅(qū)動(dòng)單元、驅(qū)動(dòng)方法、驅(qū)動(dòng)電路及顯示面板
- 驅(qū)動(dòng)電路、驅(qū)動(dòng)芯片及其驅(qū)動(dòng)方法
- 驅(qū)動(dòng)電機(jī)(電驅(qū)動(dòng))
- 驅(qū)動(dòng)電機(jī)(節(jié)能驅(qū)動(dòng))
- 驅(qū)動(dòng)電機(jī)(設(shè)備驅(qū)動(dòng))
- 驅(qū)動(dòng)機(jī)(驅(qū)動(dòng)軸)
- 驅(qū)動(dòng)機(jī)(電驅(qū)動(dòng))
- 一種進(jìn)程自動(dòng)恢復(fù)方法
- 進(jìn)程啟動(dòng)方法及內(nèi)核、進(jìn)程
- 一種進(jìn)程間的通信方法和裝置
- 進(jìn)程解析裝置、進(jìn)程解析方法和進(jìn)程解析程序
- 32位進(jìn)程和64位進(jìn)程交叉注入方法及裝置
- 一種應(yīng)用進(jìn)程控制方法及裝置
- 插件下載方法及裝置
- 進(jìn)程間的數(shù)據(jù)傳輸方法和裝置
- 進(jìn)程監(jiān)視裝置、進(jìn)程監(jiān)視方法和進(jìn)程監(jiān)視程序
- 一種基于動(dòng)態(tài)監(jiān)測(cè)的進(jìn)程優(yōu)化調(diào)度方法





