摘要 | 第3-5页 |
ABSTRACT | 第5-6页 |
目录 | 第7-9页 |
图目录 | 第9-10页 |
表目录 | 第10-11页 |
第一章 绪论 | 第11-16页 |
1.1 课题背景 | 第11页 |
1.2 研究现状 | 第11-14页 |
1.2.1 JavaScript 串行执行 | 第11-12页 |
1.2.2 目前常见的 JavaScript 并行机制 | 第12-13页 |
1.2.3 JavaScript 并行化的难点 | 第13-14页 |
1.3 论文主要内容及论文安排 | 第14-16页 |
第二章 相关技术研究 | 第16-26页 |
2.1 JavaScript 简介 | 第16-17页 |
2.2 浏览器基本原理 | 第17-18页 |
2.3 Chromium 浏览器体系结构 | 第18-22页 |
2.3.1 WebKit 引擎 | 第20页 |
2.3.2 WebKit IDL | 第20-21页 |
2.3.3 V8 引擎 | 第21-22页 |
2.4 并行化编程简介 | 第22-25页 |
2.4.1 多核处理器的发展 | 第22-23页 |
2.4.2 并行化编程概述 | 第23-24页 |
2.4.3 并行化编程现状 | 第24-25页 |
2.5 本章小结 | 第25-26页 |
第三章 基于 WebKit 的 JavaScript 并行扩展 | 第26-43页 |
3.1 并行接口设计 | 第26-28页 |
3.1.1 API 说明 | 第26-28页 |
3.2 系统整体设计 | 第28-29页 |
3.3 模块设计与实现 | 第29-35页 |
3.3.1 OpenCL 运行库 | 第29-30页 |
3.3.2 OpenCL 封装 | 第30-32页 |
3.3.3 IDL 绑定 | 第32-33页 |
3.3.4 并行扩展解析库 | 第33-35页 |
3.4 系统改进 | 第35-39页 |
3.4.1 安全性 | 第35-37页 |
3.4.2 兼容性 | 第37-38页 |
3.4.3 改进后的系统流程 | 第38-39页 |
3.5 系统测试 | 第39-41页 |
3.5.1 功能测试 | 第40页 |
3.5.2 兼容性测试 | 第40-41页 |
3.6 应用前景 | 第41-42页 |
3.7 本章小结 | 第42-43页 |
第四章 基于 V8 的 JavaScript 并行化探索 | 第43-55页 |
4.1 并行接口设计 | 第43-44页 |
4.2 系统整体设计 | 第44-45页 |
4.3 接口定义与数据分解 | 第45-48页 |
4.3.1 并行接口定义 | 第45-46页 |
4.3.2 输入数据分解 | 第46-48页 |
4.4 线程池设计与实现 | 第48-53页 |
4.4.1 V8 引擎多线程机制 | 第48-49页 |
4.4.2 总体设计 | 第49-51页 |
4.4.3 线程池管理器实现 | 第51-52页 |
4.4.4 工作线程实现 | 第52-53页 |
4.5 模块测试 | 第53-54页 |
4.6 应用前景 | 第54页 |
4.7 本章小结 | 第54-55页 |
第五章 性能测试与分析 | 第55-66页 |
5.1 并行效率理论分析 | 第55-56页 |
5.2 测试环境 | 第56-57页 |
5.3 测试程序 | 第57页 |
5.4 测试结果与分析 | 第57-63页 |
5.4.1 并行化性能提升 | 第58-59页 |
5.4.2 处理器核数 | 第59页 |
5.4.3 数据规模 | 第59-60页 |
5.4.4 运行次数 | 第60-63页 |
5.5 典型程序分析 | 第63-65页 |
5.6 本章小结 | 第65-66页 |
第六章 总结与展望 | 第66-68页 |
6.1 本文工作总结 | 第66页 |
6.2 研究展望 | 第66-68页 |
参考文献 | 第68-71页 |
致谢 | 第71-72页 |
攻读硕士学位期间已发表或录用的论文 | 第72-74页 |