[發明專利]用于多核瀏覽器的進程復用方法和多核瀏覽器有效
| 申請號: | 201210530802.4 | 申請日: | 2012-12-10 |
| 公開(公告)號: | CN103019846A | 公開(公告)日: | 2013-04-03 |
| 發明(設計)人: | 曹龍;任寰 | 申請(專利權)人: | 北京奇虎科技有限公司;奇智軟件(北京)有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 北京國昊天誠知識產權代理有限公司 11315 | 代理人: | 許志勇 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 多核 瀏覽器 進程 方法 | ||
技術領域
本發明涉及計算機技術領域,尤其涉及一種在用于多核瀏覽器的進程復用方法和多核瀏覽器。
背景技術
現代瀏覽器為了解決瀏覽器資源在長時間使用后不能很好地釋放和安全性問題,大多數都使用了多進程模型。但是用戶的計算機硬件資源是有限的,為了讓瀏覽器在不同用戶計算機硬件配置下都能有較好的上網瀏覽器體驗,所以需要限制瀏覽器打開的進程的數量,防止出現類似操作系統中系統抖動的現象出現。這就產生了瀏覽器進程復用模型。
例如谷歌的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存儲能力權限。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司;奇智軟件(北京)有限公司,未經北京奇虎科技有限公司;奇智軟件(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210530802.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:進程間的腳本執行方法、系統及瀏覽器
- 下一篇:瀏覽器的切換控制方法及裝置





