[發明專利]一種運行應用程序的方法及裝置有效
| 申請號: | 201710058876.5 | 申請日: | 2017-01-23 |
| 公開(公告)號: | CN108345496B | 公開(公告)日: | 2020-12-15 |
| 發明(設計)人: | 麻先盛;代雷 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48;G06F9/445;G06F9/455 |
| 代理公司: | 北京中博世達專利商標代理有限公司 11274 | 代理人: | 申健 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 運行 應用程序 方法 裝置 | ||
本發明實施例提供一種運行應用程序的方法及裝置,涉及計算機領域,能在沙箱層級實現運行多進程的應用程序所需的所有資源由該應用程序維護。該方法包括:獲取待運行的應用程序的配置文件;根據該配置文件,創建第一進程虛擬機,在第一進程虛擬機中加載并運行第一程序代碼(基于外核操作系統實現的維護應用程序的至少兩個功能單元交互的應用程序的數據的進程管理單元),以在操作系統中形成沙箱,運行第一程序代碼的第一進程虛擬機運行在沙箱中;根據該配置文件,在沙箱中創建至少兩個第二進程虛擬機,在每個第二進程虛擬機中加載并運行一個第二程序代碼(基于外核操作系統實現的應用程序的一個功能單元),以在沙箱中運行該應用程序。
技術領域
本發明涉及計算機領域,尤其涉及一種運行應用程序的方法及裝置。
背景技術
傳統的軟件系統中,終端設備運行應用程序所需的所有資源由終端設備的操作系統(Operating System,OS)維護,終端設備運行應用程序時可以通過系統調用訪問這些資源。當這些資源由應用程序維護時,支持應用程序運行的可以提供類操作系統功能的與應用程序鏈接在一起的運行庫可以稱為外核操作系統或庫操作系統(library operationsystem,LibOS)。
當前的LibOS項目中,Graphene LibOS可以支持多進程的應用程序。該多進程的應用程序中,運行在終端設備的一個OS進程中的一個進程可以稱為一個微進程,即該多進程的應用程序包括運行在終端設備的多個OS進程中的多個微進程。通常,每個微進程是通過終端設備的OS中的一個后臺進程來啟動的,且多個微進程啟動后會在終端設備的OS進程的一個沙箱(Sandbox)中運行,以及該沙箱中每個微進程的狀態信息和資源管理均由終端設備的OS維護。
然而,當Graphene LibOS支持的多進程的應用程序運行在沙箱中時,由于沙箱中每個微進程的狀態信息和資源管理均由終端設備的OS維護,即沙箱中每個微進程的狀態信息和資源管理無法由應用程序維護,因此Graphene LibOS無法在沙箱層級實現運行多進程的應用程序所需的所有資源均由該應用程序維護。
發明內容
本申請提供一種運行應用程序的方法及裝置,能夠在沙箱層級實現運行多進程的應用程序所需的所有資源均由該應用程序維護。
為達到上述目的,本申請采用如下技術方案:
第一方面,提供一種運行應用程序的方法,該方法可以包括:獲取待運行的應用程序的配置文件,該配置文件用于指示創建進程虛擬機(包括第一進程虛擬機和第二進程虛擬機)所需的資源,然后根據該配置文件,創建第一進程虛擬機,并在第一進程虛擬機中加載并運行第一程序代碼(即基于外核操作系統實現的用于維護該應用程序的至少兩個功能單元之間交互的該應用程序的數據的進程管理單元),以在操作系統中形成沙箱,運行有第一程序代碼的第一進程虛擬機運行在該沙箱中,以及根據該配置文件,在該沙箱中創建至少兩個第二進程虛擬機,并在至少兩個第二進程虛擬機中的每個第二進程虛擬機中加載并運行一個第二程序代碼(即基于外核操作系統實現的應用程序的一個功能單元),以在該沙箱中運行該應用程序。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710058876.5/2.html,轉載請聲明來源鉆瓜專利網。





