【技术实现步骤摘要】
本专利技术涉及计算机
,尤其涉及一种在用于多核浏览器的进程复用方法和多核浏览器。
技术介绍
现代浏览器为了解决浏览器资源在长时间使用后不能很好地释放和安全性问题,大多数都使用了多进程模型。但是用户的计算机硬件资源是有限的,为了让浏览器在不同用户计算机硬件配置下都能有较好的上网浏览器体验,所以需要限制浏览器打开的进程的数量,防止出现类似操作系统中系统抖动的现象出现。这就产生了浏览器进程复用模型。例如谷歌的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的排版引擎 ...
【技术保护点】
一种用于多核浏览器的进程复用方法,包括:预设浏览器侧的最大进程数;在浏览器侧发起对网页的浏览请求,在所述多个浏览器内核中确定一适配渲染该请求网页的第一浏览器内核;判断当前已有进程数已达到所述最大进程数;查找到所述已有进程中使用第一浏览器内核进行渲染的进程;核实所述查找到的进程的权限是否与打开所述网页所需的权限一致;使用权限相一致的所述进程中的页面线程打开所述网页;如果判断当前已有进程数未达到所述浏览器侧最大进程数时,新建一个使用第一浏览器内核的进程,打开所述网页。
【技术特征摘要】
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所述方法,其特征在于,所述核实查找到的进程的权限是否与打开所述网页所需的权限一致步骤,进一步包括核实到被查找到的一浏览器进程中的各线程都处于繁忙状态;通知浏览器的主进程去核实所述查找到的其他进程的权限是否与打开所述网页所需的权限一致且所述进程中有处于空闲状态的线程,以便在...
【专利技术属性】
技术研发人员:曹龙,任寰,
申请(专利权)人:北京奇虎科技有限公司,奇智软件北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。