论文部分内容阅读
近年来,随着人们对消费电子产品的性能需求日益增强,嵌入式处理器也在飞速发展,多核处理器已经问世。但是嵌入式浏览器的排版布局引擎仍然是传统的单线程架构,在多核处理器上没有充分发挥多核架构的优势,性能上没有得到很大提高,因此,如何设计一款适合多核处理器的嵌入式浏览器排版布局引擎架构,提高嵌入式浏览器的用户响应速度和性能,是一个值得研究的课题。本文分析了传统嵌入式浏览器排版布局引擎的架构和工作流程,在此基础上针对多核处理器的特点,采用并行化的方式对嵌入式浏览器的排版布局引擎架构重新设计。该并行化架构主要包括样式匹配的数据并行化匹配、布局计算父子节点访问的并行化实现以及多线程实现的字体加载,并且还对临界资源的保护做了一套管理机制。对于样式匹配,首先把render树的生成过程独立出来,即把原来由一个dom节点生成一个render节点的方式改为生成完dom树之后再进行render树的整体生成,然后在render树的生成过程中采用多线程对数据并行化,即每个需要生成render节点的dom节点的生成过程由单独一个线程来实现。对于布局计算,由于父子节点的访问是独立的,因此把父子节点的访问划分到单独的线程里去实现。对于字体加载,按加载类型进行线程划分,即每种类型的字体加载都放在一个单独的线程去实现。最后完成了在特定平台下嵌入式浏览器排版布局引擎并行机制的实现,并进行了性能测试和功能测试,验证了该方法的可行性。