一种分配浏览器进程的方法及其设备的制作方法

文档序号:6541229阅读:110来源:国知局
一种分配浏览器进程的方法及其设备的制作方法
【专利摘要】本发明涉及一种分配浏览器进程的方法及其设备。该方法首先获取与当前系统运行环境相关的数据。然后基于所述数据,分配该浏览器进程。本发明根据当前系统运行环境智能地分配浏览器的进程,本发明能够应用于任意一种电子设备中。
【专利说明】一种分配浏览器进程的方法及其设备
[0001]本发明专利申请是申请日为2011年2月18日、申请号为201110040827.1、名称为“一种分配浏览器进程的方法及其设备”的中国发明专利申请的分案申请。
【技术领域】
[0002]本发明涉及互联网技术,尤其涉及浏览器的进程分配。
【背景技术】
[0003]现有浏览器的进程模式通常有三种,分别是单进程模式、多进程模式和混合进程模式。
[0004]在单进程模式下,所有页面都在同一进程中运行,目前多数IE内核浏览器都是使用单进程模式。单进程模式的优点是,打开多个页面时,资源占用较少。单进程模式的缺点是,其无法解决网页资源泄露问题,在某个网页崩溃和假死情况发生时,容易牵连到整个设备,如容易牵连到整个浏览器。
[0005]在多进程模式下,每个页面都在单独进程中运行。多进程模式的优点是,其能够彻底解决页面资源泄露问题,在页面出问题时,互不干扰。多进程模式的确定是,打开多个页面时,资源占用较多。
[0006]在混合进程模式下,可根据打开页面数量来创建进程。以浏览器为例,通常情况下,浏览器设定在同一进程中可运行九个页面。
[0007]在混合进程模式下,打开多个页面时的资源占用较少,能较好地解决页面资源泄露问题,并且在页面崩溃时也有上佳表现。因此,混合进程模式在页面资源占用以及页面资源泄漏问题上达到了一种相对平衡状态。然而互联网有千千万万个用户,很多用户计算机器性能不同,混合模式不能完全适应于每种计算机。例如,此种混合进行模式不适用于,具有单核CPU的计算机系统中的浏览器。
[0008]互联网上很多用户只是计算机的简单使用者,通常只是在互联网上做些简单操作,对计算机及互联网知识掌握不多。因此,很多用户根本不清楚自己机器的性能,更不知道如何根据计算机性能来选择浏览器中的进程模式。并且,还有一些计算机用户工作很忙,无暇顾及为其计算机中的浏览器选择最优的进程模式。

【发明内容】

[0009]本发明提供了一种能解决以上问题的分配浏览器进程的方法及其设备。
[0010]在第一方面,本发明提供了一种分配浏览器进程的方法。该方法获取与当前系统运行环境相关的数据。基于该数据,分配该浏览器进程。
[0011]进一步地,该进程包括单进程模式、混合进程模式、多进程模式中的一个。
[0012]进一步地,与当前系统运行环境相关的数据包括CPU内核数、CPU主频率、系统内存中的一个或多个。
[0013]进一步地,通过GetSystemInfo函数获取当前系统的CPU内核数。[0014]进一步地,通过GlobalMemoryStatusEx函数获取当前系统的内存。
[0015]进一步地,通过当前系统的注册表中的记录获取当前系统中的CPU主频率。较佳地,该访问所述注册表中记录的步骤还包括用RegOpenKeyEx函数打开注册表里面相应键值,用RegQueryValueEx函数查询该键值下相关项的值,用RegCloseKey函数关闭该注册表。
[0016]进一步地,根据预置策略切换该浏览器进程模式。
[0017]进一步地,在安装浏览器过程中根据预置策略设定该浏览器的进程模式。
[0018]进一步地,在该浏览器首次被开启时根据预置策略配置该浏览器进程模式。
[0019]进一步地,该预置策略为在当前系统中的CPU为单核CPU时,配置该浏览器为单进程模式。
[0020]进一步地,该预置策略为在当前系统CPU为多核CPU,且该CPU主频或者当前系统内存在设定阈值内,则根据该CPU主频或当前系统内存配置该浏览器为混合进程模式或多进程模式。进一步地,当前系统运行环境相关数据包括与页面资源消耗情况相关的数据,并根据页面资源消耗情况分配浏览器进程。较佳地,根据页面资源类型确定所述页面资源消耗情况。较佳地,根据数据加载量确定所述页面资源消耗情况。
[0021]在第二方面,本发明提供了一种分配浏览器进程的设备。该设备包括数据获取模块和进程分配模块。该数据获取模块用于获取与当前系统运行环境相关的数据。该进程分配模块根据来自该数据获取模块的数据,分配该浏览器的进程。
[0022]进一步地,该进程包括单进程模式、混合进程模式、多进程模式中的一个或多个。
[0023]进一步地,与当前系统运行环境相关的数据包括CPU内核数、CPU主频率、系统内存中的一个或多个。
[0024]进一步地,该进程分配模块包括根据预置策略切换该浏览器进程模式的子模块。
[0025]进一步地,该预置策略为在当前系统中的CPU为单核CPU时,配置该浏览器为单进程模式。
[0026]进一步地,该预置策略为在当前系统CPU为多核CPU,且该CPU主频或者当前系统内存在设定阈值内,则根据该CPU主频或当前系统内存配置该浏览器为混合进程模式或多进程模式。进一步地,当前系统运行环境相关的数据包括与页面资源消耗情况相关的数据,且该进程分配模块根据页面资源消耗情况分配浏览器进程。较佳地,根据页面资源类型确定所述页面资源消耗情况。较佳地,根据数据加载量确定所述页面资源消耗情况。
[0027]本发明依据当前系统运行环境,智能地分配浏览器进程,最大化地提高了浏览器的使用性能。本发明为用户提供了方便,用户体验更佳。
【专利附图】

【附图说明】
[0028]下面将参照附图对本发明的具体实施方案进行更详细的说明,在附图中:
[0029]图1是本发明一个实施例的分配浏览器进程的方法流程图;
[0030]图2是本发明一个较佳实施例的切换浏览器进程模式的方法流程图;
[0031]图3是现有技术中的浏览器进程模式选项配置示意图;
[0032]图4是本发明一个较佳实施例的切换浏览器进程模式的方法流程图;
[0033]图5本发明一个实施例的根据页面资源消耗情况分配浏览器进程的方法流程图;[0034]图6是本发明一个实施例的分配浏览器进程的设备示意图。
【具体实施方式】
[0035]图1是本发明一个实施例的分配浏览器进程的方法流程图。
[0036]在步骤110,获取与当前系统运行环境相关的数据。
[0037]—个例子中,与当前系统运行环境相关的数据包括CPU内核数、CPU主频率、系统内存。
[0038]另一个例子中,与当前系统运行环境相关的数据包括与页面资源消耗情况相关的数据。
[0039]在步骤120,根据所获取到的数据,分配该浏览器的进程。
[0040]需要说明的是,本发明的数据获取以及对浏览器的进程分配,并未被限定在仅由浏览器来完成,也可以由专用插件或模块或设备来完成。
[0041]图2是本发明一个实施例的切换浏览器进程模式的方法流程图,其中,该浏览器的进程模式包括单进程模式、多进程模式、混合进程模式。
[0042]在步骤210,用户初次开启系统(如计算机系统、手机系统等)中的浏览器。也就是说,用户安装完该浏览器后,初次打开该浏览器。该步骤210是一个可选步骤。
[0043]在步骤220,该浏览器获取与该系统运行环境相关的数据,如获取该系统中CPU(中央处理器)内核数、CPU主频率或者该系统内存大小。
[0044]一个例子中,该浏览器通过GetSystemInf0函数来获取当前系统(即该浏览器所属系统)的CPU内核数。
[0045]另一个例子中,该浏览器通过GlobalMemoryStatusEx函数来获取当前系统(即该浏览器所属系统)的内存大小。
[0046]又一个例子中,该浏览器通过当前系统(即该浏览器所属系统)注册表里的记录来获得CPU主频率。其中,该浏览器访问其所属系统中注册表里的记录的方法为,首先用RegOpenKeyEx函数打开注册表里面相应键值,然后用RegQueryValueEx函数查询该键值下的相关项值,最后再用RegCloseKey函数关闭该注册表。
[0047]并且该当前计算机系统中注册表路径为:
[0048]HKEY_L0CAL_MACHINE\HARDWARE\DESCRIPT10N\System\CentralProcessor\0\ ?MHz
[0049]其中,?MHz中的?表示该浏览器所获取到的当前系统的主频率。
[0050]需要说明的是,本发明不限于以上方式来获取CPU内核数、系统内存、CPU主频率。
[0051]在步骤230,该浏览器根据其获取到CPU内核数、CPU主频率、系统内存大小,并根据该浏览器的预置策略配置该浏览器的进程模式,然后再保存,以便用户以后再开启该浏览器时,该浏览器具有此次配置的进程模式。
[0052]也就是说,用户初次开启浏览器后,该浏览器就会配置其进程模式,并保存此次配置结果。从而使此次配置完成后,用户以后再开启该浏览器时,该浏览器将不会再获取CPU内核数、CPU主频率、系统内存大小,也不再对该浏览器进程模式进行配置,而是保有浏览器首次配置的进程模式,除非用户主动修改该浏览器的进程模式,具体修改方式参加图3。图3是现有技术中的浏览器进程模式选项配置示意图。[0053]图3中,用户可通过进入“360安全浏览器选项”模块中的浏览器进程模式来选择该浏览器的进程模式。并且用户可选择包括单进程模式、混合进程模式、多进程模式中的任意一种进程模式。
[0054]在本发明的一个实施例中,步骤230所述的预置策略为,在当前系统中的CPU为单核CPU时,配置该浏览器为单进程模式。
[0055]在本发明的另一个实施例中,步骤230所述的预置策略为,在当前系统CPU为多核CPU,且该CPU主频或者当前系统内存在设定阈值内,则根据该CPU主频或当前系统内存配置该浏览器为混合进程模式或多进程模式。
[0056]此外,也可以在该浏览器安装过程中,设定该浏览器的进程模式。
[0057]图4是本发明一个较佳实施例的切换浏览器进程模式的方法流程图。
[0058]在步骤410,用户初次开启计算机系统中的浏览器。
[0059]在步骤420,该浏览器获取该计算机系统中CPU内核数。
[0060]具体地,该浏览器通过GetSystemInfo函数来获取当前计算机系统的CPU内核数。
[0061]在步骤430,若该计算机系统中的CPU为单核CPU,则该浏览器配置其进程模式为单进程模式,然后再保存,以便该浏览器以后再被开启时仍旧具有此种单进程模式,除非用户主动更改该浏览器的进程模式。
[0062]在步骤440,若该计算机系统中的CPU为多核CPU,则该浏览器继续获取当前计算机系统中CPU主频以及系统内存。
[0063]具体地,该浏览器通过函数RegOpenKeyEx、RegQueryValueEx> RegCloseKey 访问当前计算机系统中的注册表,然后在该注册表中的路径HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPT10N\System\CentralProcessor\0\ ?MHz 中,来获取该 CPU 主频率。其中,?MHz中的?表示该浏览器所获取到的当前计算机系统的主频率。
[0064]并且,该浏览器通过GlobalMemoryStatusEx函数获取当前计算机系统的内存。
[0065]在步骤450,若该浏览器获取到当前计算机系统中CPU主频在2G以上,或者获取到当前计算机系统内存在IG以上,则该浏览器配置其进程模式为混合进程模式,然后保存该配置结果,以便该浏览器以后再被开启时仍旧具有此种混合进程模式,除非用户主动修改。
[0066]在步骤460,若该浏览器获取到当前计算机系统中CPU内核数超过两核,并且系统内存超过2G,则该浏览器配置其进程模式为多进程模式。
[0067]需要说明的是,多数情况下,该浏览器不会将其进程模式配置成多进程模式,而是更倾向于混合进程模式。也就是说,只有当前计算机系统具有极好的性能时,才会将该浏览器进程模式配置为多进程模式。一个例子中,仅当该浏览器获取到当前计算机系统中CPU为单核CPU时,该浏览器才会将进程模式配置成单进程模式,而在其他任何情况下,该浏览器都将进程模式配置成混合进程模式。
[0068]图5是本发明一个实施例的根据页面资源消耗情况分配浏览器进程的方法流程图。
[0069]在步骤510,用户通过浏览器开启页面。
[0070]在步骤520,该浏览器获取与当前系统运行环境相关的数据,且该与当前系统运行环境相关的数据为与页面资源消耗情况相关的数据,因此,此时该浏览器检测该页面的资源消耗情况。[0071]一个例子中,该浏览器检测该页面的资源类型,并根据该资源类型判定该页面的资源消耗情况。举例如,该浏览器检测到该页面中要加载视频、音频、游戏等类型的资源时,判定该页面资源消耗较大,因此应当将资源消耗较大的对象分配至一个新的进程,并可以根据页面资源状况判断之后开启的新页面是否分配至原有进程、或上述新的进程,如果新页面的资源消耗较大,则可以将其继续分配给新的进程,如果新页面的资源消耗较小,则可以将其分配至原有的各进程中,但应确保分配页面不导致该进程因页面资源增加影响运行状态。
[0072]另一个例子中,该浏览器监测页面的数据加载量,并在加载量达到一定阈值时,判定该页面资源消耗较大。
[0073]在步骤530,根据页面资源消耗情况分配浏览器进程。
[0074]具体地,在该浏览器检测到该页面资源消耗较大时,将该页面中消耗较大资源的部分从该页面中剥离出来,并为该部分内容单独开启一个新进程,使其在新进程中运行。
[0075]举例如,该浏览器检测到该页面中正在加载视频数据,则将该视频从该页面中剥尚出来,并为该视频开启个新进程。
[0076]图6是本发明一个实施例的分配浏览器进程的设备示意图。该设备610包括数据获取模块611、进程分配模块612。
[0077]该数据获取模块611用于获取与当前系统运行环境相关的数据。其中,该进程的模式包括单进程模式、混合进程模式、多进程模式。
[0078]—个例子中,与当前系统运行环境相关的数据包括CPU内核数、CPU主频率、系统内存。
[0079]另一个例子中,与当前系统运行环境相关的数据为与页面资源消耗情况相关的数据。较佳地,该页面资源消耗情况是通过该页面资源类型和/或该页面中的数据加载量来判定。
[0080]该进程分配模块612根据来自该数据获取模块的相应数据,分配该浏览器的进程。
[0081]其中,该进程分配模块612还包括根据预置策略切换该浏览器进程模式的子模块(图6中未不意出)。
[0082]一个例子中,该预置策略为在当前系统中的CPU为单核CPU时,配置该浏览器为单进程模式。
[0083]另一个例子中,该预置策略为在当前系统CPU为多核CPU,且该CPU主频或者当前系统内存在设定阈值内,则根据该CPU主频或当前系统内存配置该浏览器为混合进程模式或多进程模式。
[0084]需要说明的是,本发明并未被限定在仅用于PC (个人计算机)中,也可以用于PM (掌上电脑)、手机等各种电子设备中。此外,本发明的信息发送方式可以是有线的也可以是无线的。
[0085]显而易见,在不偏离本发明的真实精神和范围的前提下,在此描述的本发明可以有许多变化。因此,所有对于本领域技术人员来说显而易见的改变,都应包括在本权利要求书所涵盖的范围之内。本发明所要求保护的范围仅由所述的权利要求书进行限定。
【权利要求】
1.一种分配浏览器进程的方法,其特征在于,包括: 获取与当前系统运行环境相关的数据; 基于所述数据,分配该浏览器进程。
2.如权利要求1所述的一种分配浏览器进程的方法,其特征在于,所述进程包括单进程模式、混合进程模式、多进程模式中的一个。
3.如权利要求1所述的一种分配浏览器进程的方法,其特征在于,所述与当前系统运行环境相关的数据包括,CPU内核数、CPU主频率、系统内存中的一个或多个。
4.如权利要求3所述的一种分配浏览器进程的方法,其特征在于,通过GetSystemInfo函数获取当前系统的CPU内核数。
5.如权利要求3所述的一种分配浏览器进程的方法,其特征在于,通过GlobalMemoryStatusEx函数获取当前系统的内存。
6.如权利要求3所述的一种分配浏览器进程的方法,其特征在于,通过当前系统的注册表中的记录,来获取当前系统中的CPU主频率。
7.如权利要求6所述的一种分配浏览器进程的方法,其特征在于,访问所述注册表中记录的步骤包括,用RegOpenKeyEx函数打开注册表里面相应键值,用RegQueryValueEx函数查询该键值下相关项的值,用RegCloseKey函数关闭该注册表。
8.如权利要求6所述的一种分配浏览器进程的方法,其特征在于,所述注册表路径为:
HKEY_L0CAL_MACHINE\HARDWARE\DESCRIPT10N\System\CentralProcessor\0\ ~MHz 其中,~MHz中的~表示所获取到的CPU主频率。
9.如权利要求2所述的一种分配浏览器进程的方法,其特征在于,所述分配浏览器进程的步骤包括,根据预置策略切换该浏览器进程模式的步骤。
10.如权利要求2所述的一种分配浏览器进程的方法,其特征在于,所述分配浏览器进程的步骤包括,在安装浏览器过程中根据预置策略设定该浏览器的进程模式的步骤。
11.如权利要求2所述的一种分配浏览器进程的方法,其特征在于,所述分配浏览器进程的步骤包括,在该浏览器首次被开启时根据预置策略配置该浏览器进程模式的步骤。
12.如权利要求9至11中任一权利要求所述的一种分配浏览器进程的方法,其特征在于,所述预置策略为在当前系统中的CPU为单核CPU时,配置该浏览器为单进程模式。
13.如权利要求9至11中任一权利要求所述的一种分配浏览器进程的方法,其特征在于,所述预置策略为在当前系统CPU为多核CPU,且该CPU主频或者当前系统内存在设定阈值内,则根据该CPU主频或当前系统内存配置该浏览器为混合进程模式或多进程模式。
14.如权利要求1所述的一种分配浏览器进程的方法,其特征在于,所述当前系统运行环境相关数据包括与页面资源消耗情况相关的数据,并根据页面资源消耗情况分配浏览器进程。
15.如权利要求14所述的一种分配浏览器进程的方法,其特征在于,根据页面资源类型确定所述页面资源消耗情况。
16.如权利要求14所述的一种分配浏览器进程的方法,其特征在于,根据数据加载量确定所述页面资源消耗情况。
17.—种分配浏览器进程的设备,其特征在于,包括:数据获取模块和进程分配模块; 该数据获取模块用于获取与当前系统运行环境相关的数据;该进程分配模块根据来自该数据获取模块的相应数据,分配该浏览器的进程。
18.如权利要求17所述的一种分配浏览器进程的设备,其特征在于,所述进程包括单进程模式、混合进程模式、多进程模式中的一个或多个。
19.如权利要求17所述的一种分配浏览器进程的设备,其特征在于,所述与当前系统运行环境相关的数据包括,CPU内核数、CPU主频率、系统内存中的一个或多个。
20.如权利要求17所述的一种分配浏览器进程的设备,其特征在于,所述进程分配模块包括根据预置策略切换该浏览器进程模式的子模块。
21.如权利要求20所述的一种分配浏览器进程的设备,其特征在于,所述预置策略为在当前系统中的CPU为单核CPU时,配置该浏览器为单进程模式。
22.如权利要求20所述的一种分配浏览器进程的设备,其特征在于,所述预置策略为在当前系统CPU为多核CPU,且该CPU主频或者当前系统内存在设定阈值内,则根据该CPU主频或当前系统内存配置该浏览器为混合进程模式或多进程模式。
23.如权利要求17所述的一种分配浏览器进程的设备,其特征在于,所述当前系统运行环境相关的数据包括与页面资源消耗情况相关的数据,且所述进程分配模块根据页面资源消耗情况分配浏览器进程。
24.如权利要求23所述的一种分配浏览器进程的设备,其特征在于,根据页面资源类型确定所述页面资源消耗情况。
25.如权利要求23所述的一种分配浏览器进程的设备,其特征在于,根据数据加载量确定所述页面资源消耗情况。
【文档编号】G06F9/48GK103902675SQ201410105949
【公开日】2014年7月2日 申请日期:2011年2月18日 优先权日:2011年2月18日
【发明者】刘鸿威, 赵晨曦, 谢震宇 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1