一种嵌入式网页解析方法及使用该方法的网页浏览器和终端设备的制作方法

文档序号:6579516阅读:139来源:国知局
专利名称:一种嵌入式网页解析方法及使用该方法的网页浏览器和终端设备的制作方法
技术领域
本发明涉及浏览器领域,特别是一种嵌入式网页解析方法及使用该方法的网页浏览器和终端设备。

背景技术
随着网络科技的进步,因特网浏览器已经成为了中、高端手机和PDA的标准配置。
虽然现在的GSM、CDMA等网络下的传输速率并不高,但也远远高过了浏览器对网页的处理速度。比如,下载一个www.sina.com的主页的所有数据(html页面及相关的所有图片)一般也就是50~80秒左右,但一般的手机浏览器要完全解析布局完成这样的一个页面至少也需要180~240秒。因此,现有的嵌入式浏览器大部分都是利用定时器,固定周期性地从网络读取一定固定大小的网页数据,一边下载网页数据,一边对已经下载的网页数据进行解析、布局,从而使得用户可以在访问一个页面后的几秒钟后就可以在屏幕上开始阅读信息,提高用户的使用体验。
但是,目前这种网页解析方法的缺点在于,其定时器和每次下载的网页数据大小都需要凭经验进行设置。如果定时器周期设置的过短,会导致其他任务(比如网络协议)获得的CPU时间过短,从而产生错误(比如网络传输错误,文件下载失败等)、用户按键响应慢等;而如果考虑到复杂网页或者由于内存、网络环境复杂造成系统性能低下等特殊原因将定时器周期设置得过长,就会造成CPU资源浪费,导致浏览器的解析布局的速度低下,严重影响浏览器的性能。同样地,如果每次读取的数据过大了,有可能造成解析布局的时间过长,引起用户按键无响应、响应慢等问题,甚至由于解析布局的时间过长导致CPU长时间不被释放引起并发的图像、音频等资源下载失败的情况时有发生;而如果每次读取的数据过小了,就又会造成CPU资源浪费,导致浏览器的解析布局的速度低下,严重影响浏览器的性能。
在现实中,要在移动设备中实现这样的一种平衡一般来说很难,从而直接影响了浏览器进行网页解析的速度,影响到用户的使用体验。


发明内容
本发明所要解决的技术问题是,提供一种能够支持动态设定浏览器进行解析布局的定时器周期,或,浏览器在所述定时器周期内读取的网页数据大小的嵌入式网页解析方法及使用该方法的网页浏览器和终端设备。
为了解决上述的技术问题, 首先,本发明提供了一种嵌入式网页解析方法,其特征在于,浏览器进行解析布局的定时器周期不是固定的,或,浏览器在定时器周期内读取的网页数据大小不是固定的。
进一步地,所述浏览器进行解析布局的定时器周期,或,所述浏览器在定时器周期内读取的网页数据大小是根据当时系统的性能、网页复杂度的不同而动态设定的。
进一步地,所述浏览器进行解析布局的定时器周期为系统定时器周期÷当前系统性能。
进一步地,所述系统定时器周期是当前定时器周期,或,初始定时器周期。
进一步地,所述当前系统性能为 系统当前解析布局效率÷系统默认解析布局效率, 其中,所述解析布局效率为 所述浏览器解析网页数据的大小÷所述浏览器解析该大小的网页数据所需的时间。
进一步地,所述浏览器在定时器周期内读取的网页数据大小为 系统默认读取的网页数据大小×(系统默认解析布局默认大小网页数据所需的时间÷上一定时器周期中解析布局所消耗的时间)。
其次,本发明还提供了一种网页浏览器,其特征在于,包含设定模块,用于根据当时系统的性能、网页复杂度的不同而动态获取并设定浏览器进行解析布局的定时器周期,或,浏览器在定时器周期内读取的网页数据大小。
进一步地,所述设定模块动态获取浏览器定时周期 系统定时器周期÷当前系统性能; 其中, 所述系统定时器周期是当前定时器周期,或,初始定时器周期; 所述当前系统性能为所述系统当前解析布局效率÷系统默认解析布局效率;所述解析布局效率为所述浏览器解析网页数据的大小÷所述浏览器解析该大小的网页数据所需的时间。
进一步地,所述设定模块动态获取浏览器在定时器周期内读取的网页数据大小 系统默认读取的网页数据大小×(系统默认解析布局默认大小网页数据所需的时间÷上一定时器周期中解析布局所消耗的时间)。
最后,本发明还提供了一种终端设备,包含网页浏览器,其特征在于,所述网页浏览器根据当时系统的性能、网页复杂度的不同而动态获取并设定解析布局的定时器周期,或,所述定时器周期内读取的网页数据大小。
进一步地,所述网页浏览器动态获取定时器周期系统定时器周期÷当前系统性能; 其中, 所述系统定时器周期是当前定时器周期,或,初始定时器周期; 所述当前系统性能为所述系统当前解析布局效率÷系统默认解析布局效率;所述解析布局效率为所述浏览器解析网页数据的大小÷所述浏览器解析该大小的网页数据所需的时间; 所述网页浏览器动态获取在下一定时器周期内读取的网页数据大小 系统默认读取的网页数据大小×(系统默认解析布局默认大小网页数据所需的时间÷上一定时器周期中解析布局所消耗的时间)。
通过实施本发明,克服了传统嵌入式网页解析方法中因浏览器进行解析布局的定时器周期,或,浏览器在所述定时器周期内读取的网页数据大小设定不合理而造成的系统资源浪费及各种错误情况的发生,从而提高了浏览器进行网页解析的效率,增强了用户通过移动终端访问因特网时的体验。



图1为只采用动态设定定时器周期时,本发明所提供的方法的流程图; 图2为只采用动态设定定时器周期内浏览器从网络协议中读取的数据大小时,本发明所提供的方法的流程图; 图3为同时采用动态设定定时器周期内浏览器从网络协议中读取的数据大小和动态设定定时器周期时,本发明所提供的方法的流程图; 图4为本发明提供的网页浏览器的结构图。

具体实施例方式 本发明的基本思路是,浏览器进行解析布局的定时器周期不是固定的,而是根据当时系统的性能、网页复杂度等不同而动态计算的;同样,浏览器在每个定时器周期里面读取网页数据的大小x也不是根据经验值来设定的常量,而是要根据上一个定时器周期里浏览器解析布局的效率来动态地计算并获得下一次浏览器读取网页数据的大小。
以下结合附图对本发明所涉及的处理流程等进行详细地说明 1、缩略语说明 T浏览器周期性地从网络协议中读取网页数据,进行解析布局等操作的时间间隔。该值在现有技术中是预先设置的,在本发明中是通过动态计算得到的; TS上述T的初始值,即浏览器第一次启动,或者重置后T的取值,该值可以预先设置或通过其他方式进行设定。
X在每个定时器周内,期浏览器希望从网络协议中读取的数据大小。
x每个定时器周期内,浏览器实际从网络协议中读取的数据大小。由于网络等原因,实际从网络协议中读取的数据大小x一般小于等于希望从网络协议中读取的数据大小X。
TA浏览器在系统及网络都正常的的情况下,解析布局大小为X的一般复杂度网页数据所耗用的时间(从解析开始到布局结束的时间)。
2、初始化操作 初始时(包括浏览器第一次启动,或者重置后等情况)浏览器解析布局的定时器周期TS,以及在系统性能正常、网络情况正常的情况下一个定时器周期希望解析布局一般复杂度的网页数据的大小X,可以根据系统的软件硬件不同(如CPU的主频频率)根据经验来选取。而在系统正常情况下解析布局大小的X的一般网页耗用的时间TA则可以通过实际测试得到比如可以通过该终端系统浏览器在一般情况下访问一些常规、常用的网页来计算出解析、布局网页大小为X的数据在该嵌入式浏览器下所费用的时间,一般多计算几次,然后取平局值就得到TA。
当然,定时器初始的定时器周期TS、每次读取网页的大小X也可以根据嵌入式系统的实际情况进行优化。比如,可以设置TS范围为50~200ms,以步进为10,设置为参数TS=50+n×10(49<T<201,n取从0开始的整数),同样的设置X的范围为512~2048byte,以20为步进,设置为参数X=512+m×20(519<X<2049,m取从0开始的整数),按上面的方法计算出TA值。然后按照本发明的方法设计好程序,让一组测试人员对浏览器的参数TS、X效果进行测评,选取效果最好的一组来设置TS及X参数,这样得到的TS、X及TA就是针对该软件、硬件系统相对来说最优的参数了。
下面给出一个参考数据 2、实施例1 如图1所示,是只采用动态设定定时器周期时,本发明所包含方法的操作过程 101定时器周期到; 102浏览器从网络协议中读取最大为X的网页数据,但由于网络数据还没有准备好等原因,实际读取的数据x应该会小于等于X,则设置x=实际读取数据的大小; 103~106如果x<0则说明浏览器读取网页发生错误,这有可能是网络原因造成,也有可能因为系统原因造成,本次流程结束,转到113;否则转107; 107浏览器获得当前的系统时间Ta; 108浏览器进行解析操作; 109浏览器进行布局操作; 110浏览器获得当前的系统时间Tb; 111浏览器计算本次解析布局大小为x的网页数据所耗的时间t=Tb-Ta; 112浏览器计算下一次定时器周期T=(TS×X×t)÷(TA×x); 113浏览器重新设置下一定时器(周期为T),结束本次流程。
浏览器重复上述流程,直至网页解析布局完成或者发生用户中断操作等情况结束整个浏览网页操作。
当然,在浏览器计算下一次定时器周期,也可以采用系统当前定时器周期来代替初始定时器周期,即T=(T×X×t)÷(TA×x),从而进一步提高定时器周期取值的动态性,提高系统性能。
3、实施例2 如图2所示,是只采用动态设定定时器周期内浏览器从网络协议中读取的数据大小时,本发明所包含方法的操作过程 201定时器周期到; 202计算本定时器周期需要读取的网页数据大小X=TA×(x÷t);如果是系统第一次启动或者其他原因重启的,t=TA,X取系统默认值; 203浏览器从网络协议中读取最大为x的网页数据。由于网络数据还没有准备好等原因,实际读取的数据应该小于等于x;如果实际读取的数据小于x,则设置x为本次实际读取数据的大小; 204~207如果x<0则说明浏览器读取网页发生错误,这有可能是网络原因造成,也有可能因为系统原因造成,本次流程结束,转到213;否则转208; 208浏览器获得当前的系统时间Ta; 209浏览器进行解析操作; 210浏览器进行布局操作; 211浏览器获得当前的系统时间Tb; 212浏览器计算本次解析布局大小为x的网页数据所耗的时间t=Tb-Ta; 213定时器周期结束。
浏览器重复上述流程,直至网页解析布局完成或者发生用户中断操作等情况结束整个浏览网页操作。
4、实施例3 如图3所示,是同时采用动态设定定时器周期内浏览器从网络协议中读取的数据大小和动态设定定时器周期时,本发明所包含方法的操作过程 301定时器周期到; 202计算本定时器周期需要读取的网页数据大小X=TA×(x÷t); 303浏览器从网络协议中读取最大为X的网页数据,但由于网络数据还没有准备好等原因,实际读取的数据x应该会小于等于X,则设置x=实际读取数据的大小; 304~307如果x<0则说明浏览器读取网页发生错误,这有可能是网络原因造成,也有可能因为系统原因造成,本次流程结束,转到113;否则转107; 308浏览器获得当前的系统时间Ta; 309浏览器进行解析操作; 310浏览器进行布局操作; 311浏览器获得当前的系统时间Tb; 312浏览器计算本次解析布局大小为x的网页数据所耗的时间t=Tb-Ta; 313浏览器计算下一次定时器周期T=(TS×X×t)÷(TA×x); 314浏览器重新设置下一定时器(周期为T),结束本次流程。
浏览器重复上述流程,直至网页解析布局完成或者发生用户中断操作等情况结束整个浏览网页操作。
当然,在浏览器计算下一次定时器周期,也可以采用系统当前定时器周期来代替初始定时器周期,即T=(T×X×t)÷(TA×x),从而进一步提高定时器周期取值的动态性,提高系统性能。
5、实施例4 如图4所示,是本发明提供的网页浏览器的结构图,其中 设定模块用于根据当时系统的性能、网页复杂度的不同而动态获取并设定浏览器进行解析布局的定时器周期,或,浏览器在定时器周期内读取的网页数据大小; 具体在网页解析布局过程中,当浏览器设定为动态设定进行解析布局的定时器周期时 定时器周期到来后,浏览器由下载模式转入解析模式,浏览器从网络协议中读取最大为X的网页数据,但由于网络数据还没有准备好等原因,实际读取的数据x应该会小于等于X,则设置x=实际读取数据的大小。
随后,浏览器第一次记录当时的系统时间Ta后即开始对下载的网页数据进行解析布局,完成后,浏览器再次记录当时的系统时间Tb,并根据两次记录的时间计算出本次解析布局大小为x的网页数据所耗的时间t; 解析布局操作完成后,浏览器中的设定模块计算下一次定时器周期T=(TS×X×t)÷(TA×x),并重新设置浏览器下一定时器。当然,作为一种替代方案,浏览器也可以采用系统当前定时器周期来代替初始定时器周期,即T=(T×X×t)÷(TA×x),从而进一步提高定时器周期取值的动态性,提高系统性能。
本次定时器到,本次解析布局操作流程结束。
浏览器重复上述流程,直至网页解析布局完成或者发生用户中断操作等情况结束整个浏览网页操作。
当浏览器设定为动态设定浏览器在定时器周期内读取的网页数据大小时 定时器周期到来后,浏览器首先计算本定时器周期需要读取的网页数据大小X=TA×(x÷t)。
随后,浏览器从网络协议中读取最大为X的网页数据,但由于网络数据还没有准备好等原因,实际读取的数据x应该会小于等于X,则设置x=实际读取数据的大小。
读取完成后,浏览器第一次记录当时的系统时间Ta后即开始对下载的网页数据进行解析布局,完成后,浏览器再次记录当时的系统时间Tb,并根据两次记录的时间计算出本次解析布局大小为x的网页数据所耗的时间t; 本次定时器到,本次解析布局操作流程结束。
浏览器重复上述流程,直至网页解析布局完成或者发生用户中断操作等情况结束整个浏览网页操作。
6、实施例5 一款手机,其中包含有网页浏览器,在其进行网页浏览时,当将其所包含的网页浏览器的状态设定为动态设定进行解析布局的定时器周期时 定时器周期到来后,手机中的浏览器由下载模式转入解析模式,浏览器从网络协议中读取最大为X的网页数据,但由于网络数据还没有准备好等原因,实际读取的数据x应该会小于等于X,则设置x=实际读取数据的大小。
随后,浏览器第一次记录当时的系统时间Ta后即开始对下载的网页数据进行解析布局,完成后,浏览器再次记录当时的系统时间Tb,并根据两次记录的时间计算出本次解析布局大小为x的网页数据所耗的时间t; 解析布局操作完成后,浏览器中的设定模块计算下一次定时器周期T=(TS×X×t)÷(TA×x),并重新设置浏览器下一定时器。当然,作为一种替代方案,浏览器也可以采用系统当前定时器周期来代替初始定时器周期,即T=(T×X×t)÷(TA×x),从而进一步提高定时器周期取值的动态性,提高系统性能。
本次定时器到,本次解析布局操作流程结束。
浏览器重复上述流程,直至网页解析布局完成或者发生用户中断操作等情况结束整个浏览网页操作。
当将其说所包含的网页浏览器的状态设定为动态设定浏览器在定时器周期内读取的网页数据大小时 定时器周期到来后,手机中的浏览器首先计算本定时器周期需要读取的网页数据大小X=TA×(x÷t)。
随后,浏览器从网络协议中读取最大为X的网页数据,但由于网络数据还没有准备好等原因,实际读取的数据x应该会小于等于X,则设置x=实际读取数据的大小。
读取完成后,浏览器第一次记录当时的系统时间Ta后即开始对下载的网页数据进行解析布局,完成后,浏览器再次记录当时的系统时间Tb,并根据两次记录的时间计算出本次解析布局大小为x的网页数据所耗的时间t; 本次定时器到,本次解析布局操作流程结束。
浏览器重复上述流程,直至网页解析布局完成或者发生用户中断操作等情况结束整个浏览网页操作。
我们知道,在嵌入式系统中影响系统性能的因素还有很多,如长时间使用CPU导致的温度升高,CPU效率降低;内存减少,或者内存碎片增加导致的内存申请释放时间的增加;无线网络复杂,网络数据需要多次重传才能完成数据的收发,导致网络协议占用较多的CPU资源;以及网页是否有CSS、Javascript等因素都会造成浏览器解析同样大小网页数据,耗的时间差异很大。因此,以上所述实施例仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1、一种嵌入式网页解析方法,其特征在于,浏览器进行解析布局的定时器周期不是固定的,或,浏览器在定时器周期内读取的网页数据大小不是固定的。
2、如权利要求1所述的方法,其特征在于,所述浏览器进行解析布局的定时器周期,或,所述浏览器在定时器周期内读取的网页数据大小是根据当时系统的性能、网页复杂度的不同而动态设定的。
3、如权利要求2所述的方法,其特征在于,所述浏览器进行解析布局的定时器周期为系统定时器周期÷当前系统性能。
4、如权利要求3所述的方法,其特征在于,所述系统定时器周期是当前定时器周期,或,初始定时器周期。
5、如权利要求3所述的方法,其特征在于,所述当前系统性能为
系统当前解析布局效率÷系统默认解析布局效率,
其中,所述解析布局效率为
所述浏览器解析网页数据的大小÷所述浏览器解析该大小的网页数据所需的时间。
6、如权利要求2所述的方法,其特征在于,所述浏览器在定时器周期内读取的网页数据大小为
系统默认读取的网页数据大小×(系统默认解析布局默认大小网页数据所需的时间÷上一定时器周期中解析布局所消耗的时间)。
7、一种网页浏览器,其特征在于,
包含设定模块,用于根据当时系统的性能、网页复杂度的不同而动态获取并设定浏览器进行解析布局的定时器周期,或,浏览器在定时器周期内读取的网页数据大小。
8、如权利要求7所述的网页浏览器,其特征在于,所述设定模块动态获取浏览器定时周期
系统定时器周期÷当前系统性能;
其中,
所述系统定时器周期是当前定时器周期,或,初始定时器周期;
所述当前系统性能为所述系统当前解析布局效率÷系统默认解析布局效率;所述解析布局效率为所述浏览器解析网页数据的大小÷所述浏览器解析该大小的网页数据所需的时间。
9、如权利要求7所述的网页浏览器,其特征在于,所述设定模块动态获取浏览器在定时器周期内读取的网页数据大小
系统默认读取的网页数据大小×(系统默认解析布局默认大小网页数据所需的时间÷上一定时器周期中解析布局所消耗的时间)。
10、一种终端设备,包含网页浏览器,其特征在于,所述网页浏览器根据当时系统的性能、网页复杂度的不同而动态获取并设定解析布局的定时器周期,或,所述定时器周期内读取的网页数据大小。
11、如权利要求10所述的终端设备,其特征在于,
所述网页浏览器动态获取定时器周期系统定时器周期÷当前系统性能;
其中,
所述系统定时器周期是当前定时器周期,或,初始定时器周期;
所述当前系统性能为所述系统当前解析布局效率÷系统默认解析布局效率;所述解析布局效率为所述浏览器解析网页数据的大小÷所述浏览器解析该大小的网页数据所需的时间;
所述网页浏览器动态获取在下一定时器周期内读取的网页数据大小
系统默认读取的网页数据大小×(系统默认解析布局默认大小网页数据所需的时间÷上一定时器周期中解析布局所消耗的时间)。
全文摘要
本发明公开了一种嵌入式网页解析方法及使用该方法的网页浏览器和终端设备,其进行解析布局的定时器周期不是固定的,或,浏览器在所述定时器周期内读取的网页数据大小不是固定的,从而克服了传统嵌入式网页解析方法中因浏览器进行解析布局的定时器周期,或,浏览器在所述定时器周期内读取的网页数据大小设定不合理而造成的系统资源浪费及各种错误情况的发生,从而提高了浏览器进行网页解析的效率,增强了用户通过移动终端访问因特网时的体验。
文档编号G06F17/30GK101609471SQ20091016097
公开日2009年12月23日 申请日期2009年7月24日 优先权日2009年7月24日
发明者敏 蒋, 丹 薛 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1