嵌入式浏览器并行化的研究与设计
发布时间:2018-11-23 17:59
【摘要】:随着移动互联网技术和嵌入式技术的飞速发展,大量消费类多核嵌入式设备,如智能手机、平板电脑、智能电视,已应用到人们生活的方方面面。人们浏览网页的习惯已开始从桌面电脑向这些移动终端转变。然而,现有主流嵌入式浏览器基本采用原先单核处理器上的设计架构——串行架构,直接运行在多核嵌入式设备中并未充分发挥多核处理器并行处理能力,使得浏览器性能仍未得到多大提升,并不能满足用户快速浏览网页的需求。为此针对多核平台并行执行能力,本文重构了浏览器串行架构,提出了适应多核平台的并行化架构。本文首先在研究传统串行浏览器架构和网页处理流程的基础上,采用并行化思想将浏览器重构成五个子系统:用户界面子系统、资源管理子系统、DOM子系统、CSS子系统、和Rendering子系统。各子系统之间通过消息进行通信,众消息由消息管理器统一管理,采用优先级调度策略进行分发处理。在各子系统内部也采用一些并行化设计,如多线程图片解码、DOM并行样式化和并行化渲染。对于图片解码,采用线程池解码策略,每加载一个图片就从线程池中分配一个线程负责解码,进而降低了因图片解码引起的延时;对于DOM样式化,将节点的样式化分成两个任务——规则匹配任务和样式应用任务,各节点规则匹配任务的并行执行加快了DOM树的样式化过程;对于渲染,将Render树划分成若干子树,给每个子树分配一个渲染线程,各子树可同时渲染降低了整颗Render树渲染时间。最后,在特定平台上实现和测试该并行化设计并与原始串行浏览器做了性能对比与分析。
[Abstract]:With the rapid development of mobile Internet technology and embedded technology, a large number of consumer multi-core embedded devices, such as smart phones, tablets, intelligent television, have been applied to all aspects of people's lives. The habit of browsing the web has begun to shift from desktop computers to these mobile terminals. However, the existing mainstream embedded browsers basically adopt the design architecture of the original single-core processor-serial architecture, and run directly in multi-core embedded devices without giving full play to the parallel processing ability of multi-core processors. So that the browser performance has not been greatly improved, and can not meet the needs of users to quickly browse the web. Aiming at the parallel execution ability of multi-core platform, this paper reconstructs the browser serial architecture and proposes a parallel architecture suitable for multi-core platform. On the basis of studying the traditional serial browser architecture and web page processing flow, this paper reconstructs the browser into five subsystems: user interface subsystem, resource management subsystem, DOM subsystem and CSS subsystem. And Rendering subsystem. Each subsystem communicates through messages, and the message is managed uniformly by the message manager, and the priority scheduling policy is used to distribute the messages. Some parallel designs are also used in each subsystem, such as multithread picture decoding, DOM parallel styling and parallel rendering. For picture decoding, a thread pool decoding strategy is adopted, and a thread is allocated from the thread pool to decode each picture, which reduces the delay caused by picture decoding. For DOM styling, the node styling is divided into two tasks: rule matching task and style application task. The parallel execution of each node rule matching task speeds up the styling process of DOM tree. For rendering, the Render tree is divided into several subtrees, each subtree is assigned a rendering thread, and each subtree can be rendered simultaneously to reduce the rendering time of the whole Render tree. Finally, the parallel design is implemented and tested on a specific platform, and the performance of the parallel design is compared and analyzed with the original serial browser.
【学位授予单位】:电子科技大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP393.092
本文编号:2352311
[Abstract]:With the rapid development of mobile Internet technology and embedded technology, a large number of consumer multi-core embedded devices, such as smart phones, tablets, intelligent television, have been applied to all aspects of people's lives. The habit of browsing the web has begun to shift from desktop computers to these mobile terminals. However, the existing mainstream embedded browsers basically adopt the design architecture of the original single-core processor-serial architecture, and run directly in multi-core embedded devices without giving full play to the parallel processing ability of multi-core processors. So that the browser performance has not been greatly improved, and can not meet the needs of users to quickly browse the web. Aiming at the parallel execution ability of multi-core platform, this paper reconstructs the browser serial architecture and proposes a parallel architecture suitable for multi-core platform. On the basis of studying the traditional serial browser architecture and web page processing flow, this paper reconstructs the browser into five subsystems: user interface subsystem, resource management subsystem, DOM subsystem and CSS subsystem. And Rendering subsystem. Each subsystem communicates through messages, and the message is managed uniformly by the message manager, and the priority scheduling policy is used to distribute the messages. Some parallel designs are also used in each subsystem, such as multithread picture decoding, DOM parallel styling and parallel rendering. For picture decoding, a thread pool decoding strategy is adopted, and a thread is allocated from the thread pool to decode each picture, which reduces the delay caused by picture decoding. For DOM styling, the node styling is divided into two tasks: rule matching task and style application task. The parallel execution of each node rule matching task speeds up the styling process of DOM tree. For rendering, the Render tree is divided into several subtrees, each subtree is assigned a rendering thread, and each subtree can be rendered simultaneously to reduce the rendering time of the whole Render tree. Finally, the parallel design is implemented and tested on a specific platform, and the performance of the parallel design is compared and analyzed with the original serial browser.
【学位授予单位】:电子科技大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP393.092
【参考文献】
相关硕士学位论文 前1条
1 孙玮;嵌入式浏览器解析与排版布局引擎的研究优化[D];电子科技大学;2012年
,本文编号:2352311
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2352311.html