• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    用于多核瀏覽器的進程復用方法和多核瀏覽器技術

    技術編號:8532677 閱讀:206 留言:0更新日期:2013-04-04 15:35
    本發明專利技術公開了一種用于多核瀏覽器的進程復用方法和多核瀏覽器。本發明專利技術涉及計算機技術領域,尤其涉及進程復用的方法及進程復用的多核瀏覽器。本發明專利技術要解決的問題是,根據已經存在的渲染進程的權限分配渲染進程,同時能直接使用到Chrome模型中。所述多核瀏覽器包括:預設最大進程數模塊;內核確定模塊;判斷進程數模塊;查找進程模塊;核實進程權限模塊;打開網頁模塊;新建進程模塊。

    【技術實現步驟摘要】

    本專利技術涉及計算機
    ,尤其涉及一種在用于多核瀏覽器的進程復用方法和多核瀏覽器
    技術介紹
    現代瀏覽器為了解決瀏覽器資源在長時間使用后不能很好地釋放和安全性問題,大多數都使用了多進程模型。但是用戶的計算機硬件資源是有限的,為了讓瀏覽器在不同用戶計算機硬件配置下都能有較好的上網瀏覽器體驗,所以需要限制瀏覽器打開的進程的數量,防止出現類似操作系統中系統抖動的現象出現。這就產生了瀏覽器進程復用模型。例如谷歌的Chrome (全稱Google Chrome,是由谷歌公司開發的一款Web瀏覽工具)瀏覽器、世界之窗瀏覽器等都是用了多進程模型。同時存在混合模型用于用戶在瀏覽器中瀏覽Web頁面時分配特定的工作(渲染)進程或線程。在谷歌Chrome瀏覽器實現中使用了多進程模型。該模型在瀏覽器產生瀏覽器支持擴展解壓、安裝時使用獨立的工作進程;在瀏覽器瀏覽網頁需要渲染時,根據頁面需要的安全權限使用了獨立的渲染進程進行頁面內容解析及渲染;在擴展和擴展所需的插件運行時,為需要不同權限的擴展和插件使用獨立的擴展或插件進程;瀏覽器還為瀏覽器提示信息的內部頁面分配了不同的進程。由于谷歌Chrome瀏覽器原生只支持Webkit (WebKit是蘋果Mac OS X系統引擎框架版本的名稱,主要用于Safari, Dashboard, Mail和其他一些Mac OS X程序內核),所以在用戶瀏覽不支持Webkit或者說需要IE (Trident) (IE Internet Explorer,互聯網探索器;Trident,又稱為MSHTML,為Internet Explorer的排版引擎的名稱)內核特性的頁面渲染時,用戶就不能使用谷歌Chrome瀏覽器進行瀏覽。此時谷歌的進程復用模型也不再適用。另一方面在于谷歌Chrome自身的安全模型設計(主要是沙箱設計)與IE內核需要的系統安全權限可能存在沖突,可能導致直接使用Chrome的進程復用模型不能很好地,甚至是不能正常展現Web頁面。但是對于多內核瀏覽器下的進程復用目前還沒有解決的方案。
    技術實現思路
    本專利技術所要解決的技術問題在于,提供一種在用于多核瀏覽器的進程復用方法和多核瀏覽器的方案。為解決上述技術問題,本專利技術的一方面,提供一種用于多核瀏覽器的進程復用方法,包括預設瀏覽器側的最大進程數;在瀏覽器側發起對網頁的瀏覽請求,在所述多個瀏覽器內核中確定一適配渲染該請求網頁的第一瀏覽器內核;判斷當前已有進程數已達到所述最大進程數;查找到所述已有進程中使用第一瀏覽器內核進行渲染的進程;核實所述查找到的進程的權限是否與打開所述網頁所需的權限一致;使用權限相一致的所述進程中的頁面線程打開所述網頁;如果判斷當前已有進程數未達到所述瀏覽器側最大進程數時,新建一個使用第一瀏覽器內核的進程,打開所述網頁。根據本專利技術的實施例,所述在所述多個瀏覽器內核中確定一適配渲染該請求網頁的第一瀏覽器內核還可以包括基于被請求的網頁的網址URL,查詢在瀏覽器側的網址與瀏覽器渲染內核之間的映射表;從所述的多個瀏覽器內核中確定與被請求的網頁的網址相適配的瀏覽器內核進行所述網頁的渲染。根據本專利技術的實施例,所述預設瀏覽器側的瀏覽器最大進程數步驟還可以包括,依據運行所述瀏覽器的本地計算設備的硬件資源狀況設定瀏覽器側的瀏覽器最大進程數;根據本專利技術的實施例,所述硬件資源狀況還可以包括CPU性能、或顯卡性能、或內存性能、或任何前述兩者或三者的組合、或由任何前述兩者或三者以預定規則得到的綜合性能指數。根據本專利技術的實施例,所述核實查找到的進程的權限是否與打開所述網頁所需的權限一致步驟還可以包括分別枚舉各所述已有進程中使用第一瀏覽器內核進行渲染的進程,當被枚舉的所述進程的權限與打開所述網頁所需的權限一致時,使用所述進程中的頁面線程打開所述網頁。根據本專利技術的實施例,所述核實查找到的進程的權限是否與打開所述網頁所需的權限一致步驟還可以包括,對以下任一權限或任何其中若干權限的組合進行核實后臺運行權限;訪問書簽權限;訪問chrome://favicon權限;訪問上下文菜單權限;訪問cookie權限;訪問chrome, experimental. *接口權限;訪問geolocation接口權限;訪問歷史記錄權限;訪問chrome, idle模塊提供的接口權限;訪問chrome, management模塊提供的接口權限;訪問HTML5notifiCationS接口支持權限;訪問標簽頁權限;無限Web存儲能力權限。根據本專利技術的實施例,所述使用權限相一致的所述進程中的頁面線程打開所述網頁步驟還可以包括如果所述第一瀏覽器內核為Chrome瀏覽器的內核,在所述使用權限相一致的進程的線程池中的各線程中對網頁的瀏覽請求進行排隊,逐一等待所述線程池中的由繁忙狀態轉為空閑狀態的線程打開所述網頁。根據本專利技術的實施例,所述使用權限相一致的所述進程中的頁面線程打開所述網頁步驟還可以包括如果所述第一瀏覽器內核為Chrome瀏覽器的內核,在所述使用權限相一致的進程的線程池中的各線程都處于繁忙狀態時,則通知瀏覽器主進程查找其他已有瀏覽器進程,確定另一個瀏覽器內核類型及權限與打開所述新網頁所需瀏覽器內核類型及權限相一致的已有進程,打開所述網頁。根據本專利技術的實施例,所述使用權限相一致的所述進程中的頁面線程打開所述網頁步驟還可以包括如果所述第一瀏覽器內核為IE內核,且所述進程中的各線程都處于繁忙狀態,則在所述進程中新建線程,打開所述網頁,并在所述新線程打開所述網頁后在被關閉時再銷毀所述該新建的線程。根據本專利技術的實施例,所述核實查找到的進程的權限是否與打開所述網頁所需的權限一致步驟還可以進一步包括核實到被查找到的一瀏覽器進程中的各線程都處于繁忙狀態;通知瀏覽器的主進程去核實所述查找到的其他進程的權限是否與打開所述網頁所需的權限一致且所述進程中有處于空閑狀態的線程,以便在瀏覽器進程的權限與打開所述網頁所需的權限一致的其他瀏覽器進程中打開所述網頁。根據本專利技術的另一方面,一種多核瀏覽器,包括預設最大進程數模塊用于預設瀏覽器側的最大進程數;內核確定模塊用于在瀏覽器側發起對網頁的瀏覽請求,在所述多個瀏覽器內核中確定一適配渲染該請求網頁的第一瀏覽器內核;判斷進程數模塊用于判斷當前已有進程數已達到所述最大進程數;查找進程模塊用于查找到所述已有進程中使用第一瀏覽器內核進行渲染的進程;核實進程權限模塊用于核實所述查找到的進程的權限是否與打開所述網頁所需的權限一致;打開網頁模塊用于使用權限相一致的所述進程中的頁面線程打開所述網頁;新建進程模塊用于如果判斷當前已有進程數未達到所述瀏覽器側最大進程數時,新建一個使用第一瀏覽器內核的進程,打開所述網頁。根據本專利技術的實施例,所述內核確定模塊還可以用于基于被請求的網頁的網址URL,查詢在瀏覽器側的網址與瀏覽器渲染內核之間的映射表;從所述的多個瀏覽器內核中確定與被請求的網頁的網址相適配的瀏覽器內核進行所述網頁的渲染。根據本專利技術的實施例,所述預設最大進程數模塊還可以用于,依據運行所述瀏覽器的本地計算設備的硬件資源狀況設定瀏覽器側的瀏覽器最大進程數;根據本專利技術的實施例,所述硬件資源狀況可以包括CPU性能、或顯卡性能、或內存性能、或任何前述兩者或三者的組合、或由任何前述兩者本文檔來自技高網
    ...

    【技術保護點】
    一種用于多核瀏覽器的進程復用方法,包括:預設瀏覽器側的最大進程數;在瀏覽器側發起對網頁的瀏覽請求,在所述多個瀏覽器內核中確定一適配渲染該請求網頁的第一瀏覽器內核;判斷當前已有進程數已達到所述最大進程數;查找到所述已有進程中使用第一瀏覽器內核進行渲染的進程;核實所述查找到的進程的權限是否與打開所述網頁所需的權限一致;使用權限相一致的所述進程中的頁面線程打開所述網頁;如果判斷當前已有進程數未達到所述瀏覽器側最大進程數時,新建一個使用第一瀏覽器內核的進程,打開所述網頁。

    【技術特征摘要】
    1.一種用于多核瀏覽器的進程復用方法,包括 預設瀏覽器側的最大進程數; 在瀏覽器側發起對網頁的瀏覽請求,在所述多個瀏覽器內核中確定一適配渲染該請求網頁的第一瀏覽器內核; 判斷當前已有進程數已達到所述最大進程數; 查找到所述已有進程中使用第一瀏覽器內核進行渲染的進程; 核實所述查找到的進程的權限是否與打開所述網頁所需的權限一致; 使用權限相一致的所述進程中的頁面線程打開所述網頁; 如果判斷當前已有進程數未達到所述瀏覽器側最大進程數時,新建一個使用第一瀏覽器內核的進程,打開所述網頁。2.如權利要求1所述方法,其特征在于,所述在所述多個瀏覽器內核中確定一適配渲染該請求網頁的第一瀏覽器內核包括 基于被請求的網頁的網址URL,查詢在瀏覽器側的網址與瀏覽器渲染內核之間的映射表; 從所述的多個瀏覽器內核中確定與被請求的網頁的網址相適配的瀏覽器內核進行所述網頁的渲染。3.如權利要求1所述方法,其特征在于,所述預設瀏覽器側的瀏覽器最大進程數步驟,依據運行所述瀏覽器的本地計算設備的硬件資源狀況設定瀏覽器側的瀏覽器最大進程數。4.如權利要求3所述方法,其特征在于,所述硬件資源狀況包括CPU性能、或顯卡性能、或內存性能、或任何前述兩者或三者的組合、或由任何前述兩者或三者以預定規則得到的綜合性能指數。5.如權利要求1所述方法,其特征在于,所述核實查找到的進程的權限是否與打開所述網頁所需的權限一致步驟,包括分別枚舉各所述已有進程中使用第一瀏覽器內核進行渲染的進程,當被枚舉的所述進程的權限與打開所述網頁所需的權限一致時,使用所述進程中的頁面線程打開所述網頁。6.如權利要求1所述方法,其特征在于,所述核實查找到的進程的權限是否與打開所述網頁所需的權限一致步驟,包括對以下任一權限或任何其中若干權限的組合進行核實 后臺運行權限; 訪問書簽權限; 訪問 chrome://favicon 權限; 訪問上下文菜單權限; 訪問cookie權限; 訪問 chrome, experimental. * 接口權限; 訪問geolocation接口權限; 訪問歷史記錄權限; 訪問chrome, idle模塊提供的接口權限; 訪問chrome, management模塊提供的接口權限; 訪問HTML5 notifications接口支持權限; 訪問標簽頁權限;無限Web存儲能力權限。7.如權利要求1所述方法,其特征在于,所述使用權限相一致的所述進程中的頁面線程打開所述網頁步驟,包括如果所述第一瀏覽器內核為Chrome瀏覽器的內核,在所述使用權限相一致的進程的線程池中的各線程中對網頁的瀏覽請求進行排隊,逐一等待所述線程池中的由繁忙狀態轉為空閑狀態的線程打開所述網頁。8.如權利要求1所述方法,其特征在于,所述使用權限相一致的所述進程中的頁面線程打開所述網頁步驟,包括如果所述第一瀏覽器內核為Chrome瀏覽器的內核,在所述使用權限相一致的進程的線程池中的各線程都處于繁忙狀態時,則通知瀏覽器主進程查找其他已有瀏覽器進程,確定另一個瀏覽器內核類型及權限與打開所述新網頁所需瀏覽器內核類型及權限相一致的已有進程,打開所述網頁。9.如權利要求1所述方法,其特征在于,所述使用權限相一致的所述進程中的頁面線程打開所述網頁步驟,包括如果所述第一瀏覽器內核為IE內核,且所述進程中的各線程都處于繁忙狀態,則在所述進程中新建線程,打開所述網頁,并在所述新線程打開所述網頁后在被關閉時再銷毀所述該新建的線程。10.如權利要求1所述方法,其特征在于,所述核實查找到的進程的權限是否與打開所述網頁所需的權限一致步驟,進一步包括核實到被查找到的一瀏覽器進程中的各線程都處于繁忙狀態;通知瀏覽器的主進程去核實所述查找到的其他進程的權限是否與打開所述網頁所需的權限一致且所述進程中有處于空閑狀態的線程,以便在...

    【專利技術屬性】
    技術研發人員:曹龍任寰
    申請(專利權)人:北京奇虎科技有限公司奇智軟件北京有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 东京热av人妻无码| 久久久久久无码Av成人影院| 无码里番纯肉h在线网站| 无码精品前田一区二区| 亚洲AV无码成人精品区在线观看| 久久久久久亚洲Av无码精品专口| 久久亚洲精品无码av| 亚洲综合av永久无码精品一区二区 | 午夜不卡无码中文字幕影院| 亚洲成a∧人片在线观看无码| 东京热人妻无码一区二区av| 无码免费午夜福利片在线 | 国产AV无码专区亚洲Av| 成年轻人电影www无码| 亚洲AV无码专区亚洲AV伊甸园| 国产嫖妓一区二区三区无码| 无码GOGO大胆啪啪艺术| 久久99久久无码毛片一区二区| 日韩av无码一区二区三区| 久久人妻少妇嫩草AV无码蜜桃| 熟妇人妻无码中文字幕老熟妇| 熟妇人妻AV无码一区二区三区| 亚洲一区二区三区无码影院| 亚洲AV无码一区二区三区电影 | 无码精品人妻一区二区三区AV| 中文字幕无码高清晰| 色欲A∨无码蜜臀AV免费播| 成人无码WWW免费视频| 无码人妻一区二区三区精品视频| 无码毛片AAA在线| 精品欧洲AV无码一区二区男男| 无码人妻精品一区二区| 亚洲啪啪AV无码片| 亚洲精品~无码抽插| 国产成人无码一区二区三区在线| 久久亚洲国产成人精品无码区| 亚洲?V无码乱码国产精品| 亚洲?V无码成人精品区日韩| 少妇性饥渴无码A区免费| 中文字幕久久精品无码| 亚洲VA中文字幕不卡无码|