基于IE内核的多进程浏览器设计与实现
发布时间:2021-10-17 13:15
随着互联网的发展和普及,浏览器作为上网的必备工具,稳定性,安全性是浏览器是否好用易用的重要指标。在浏览器刚被设计出来的时候,那时的网页非常的简单,几乎没有动态的代码。然而在今天我们看到大量网页转而使用动态网页,从含有大量javascript和flash的网页到像完全成熟的网络应用,这些应用的很大一部分是在浏览器中运行的,就像运行在操作系统之上的应用程序一样。同时,渲染引擎会经常性的在网络上遇到不可信、甚至是恶意的代码,它们会利用这些漏洞在你的电脑上安装恶意的软件,仅仅一个页面就可以利用渲染引擎的某个漏洞获得对整台计算机的控制权。本课题主要对IE内核进行封装,并设计和实现一个多进程架构的浏览器,解决在浏览网页时遇到的稳定性问题,运行在Windows环境下,采用C++语言开发。采用多进程机制,根据功能将浏览器划分为浏览器进程和渲染进程。采用了Windows下命名管道进行进程间通信,命名管道是Windows操作系统支持的一种进程间通信(IPC)机制,利用Win32API文件处理函数读取数据,支持同一台计算机进程间或是网络中不同计算机进程间互相通信。使用完成端口机制保证进程间通信效率,通过自定...
【文章来源】:哈尔滨工业大学黑龙江省 211工程院校 985工程院校
【文章页数】:69 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第1章 绪论
1.1 课题背景
1.2 浏览器架构发展现状
1.2.1 松耦合 IE 架构
1.2.2 Chrome 多进程架构
1.2.3 WebKit2 多进程架构
1.3 本课题研究的主要内容
第2章 多进程浏览器分析
2.1 浏览器需求分析
2.2 浏览器高层结构分析
2.2.1 用户界面
2.2.2 浏览器引擎
2.2.3 渲染引擎
2.2.4 网络模块
2.2.5 JavaScript 脚本引擎
2.2.6 XML 解析器
2.2.7 图形显示
2.2.8 数据持久层
2.3 多进程软件模型分析
2.3.1 线程和进程
2.3.2 多进程模型的优势
2.4 IE 浏览器相关技术
2.4.1 组件对象模型
2.4.2 IE 浏览器体系结构
2.5 本章小结
第3章 多进程浏览器设计
3.1 浏览器模块结构
3.2 浏览器多进程架构
3.2.1 架构设计
3.2.2 进程模型
3.3 浏览器中的线程及其通信
3.3.1 Command 设计模式
3.3.2 浏览器中的多线程模型
3.4 浏览器显示网页过程
3.5 本章小结
第4章 多进程浏览器架构实现
4.1 命名管道
4.1.1 命名管道基本概念
4.1.2 命名管道服务端
4.1.3 命名管道客户端
4.2 完成端口
4.2.1 完成端口的使用方法
4.2.2 完成端口的内部机制
4.3 线程消息循环实现
4.4 进程间通信实现
4.4.1 进程间通信机制
4.4.2 IPC 消息格式和序列化
4.5 本章小结
第5章 IE 内核封装实现及浏览器测试
5.1 自定义浏览器控件
5.1.1 集成浏览器控件
5.1.2 浏览器控件功能控制
5.1.3 控制导航,下载和执行
5.1.4 控制新的窗口
5.2 IE 内核代码封装实现
5.3 浏览器测试及分析
5.3.1 测试的目的
5.3.2 测试环境
5.3.3 进程间通信测试
5.3.4 功能测试和稳定性测试
5.3.5 结果分析
5.4 本章小结
结论
参考文献
致谢
个人简历
本文编号:3441824
【文章来源】:哈尔滨工业大学黑龙江省 211工程院校 985工程院校
【文章页数】:69 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第1章 绪论
1.1 课题背景
1.2 浏览器架构发展现状
1.2.1 松耦合 IE 架构
1.2.2 Chrome 多进程架构
1.2.3 WebKit2 多进程架构
1.3 本课题研究的主要内容
第2章 多进程浏览器分析
2.1 浏览器需求分析
2.2 浏览器高层结构分析
2.2.1 用户界面
2.2.2 浏览器引擎
2.2.3 渲染引擎
2.2.4 网络模块
2.2.5 JavaScript 脚本引擎
2.2.6 XML 解析器
2.2.7 图形显示
2.2.8 数据持久层
2.3 多进程软件模型分析
2.3.1 线程和进程
2.3.2 多进程模型的优势
2.4 IE 浏览器相关技术
2.4.1 组件对象模型
2.4.2 IE 浏览器体系结构
2.5 本章小结
第3章 多进程浏览器设计
3.1 浏览器模块结构
3.2 浏览器多进程架构
3.2.1 架构设计
3.2.2 进程模型
3.3 浏览器中的线程及其通信
3.3.1 Command 设计模式
3.3.2 浏览器中的多线程模型
3.4 浏览器显示网页过程
3.5 本章小结
第4章 多进程浏览器架构实现
4.1 命名管道
4.1.1 命名管道基本概念
4.1.2 命名管道服务端
4.1.3 命名管道客户端
4.2 完成端口
4.2.1 完成端口的使用方法
4.2.2 完成端口的内部机制
4.3 线程消息循环实现
4.4 进程间通信实现
4.4.1 进程间通信机制
4.4.2 IPC 消息格式和序列化
4.5 本章小结
第5章 IE 内核封装实现及浏览器测试
5.1 自定义浏览器控件
5.1.1 集成浏览器控件
5.1.2 浏览器控件功能控制
5.1.3 控制导航,下载和执行
5.1.4 控制新的窗口
5.2 IE 内核代码封装实现
5.3 浏览器测试及分析
5.3.1 测试的目的
5.3.2 测试环境
5.3.3 进程间通信测试
5.3.4 功能测试和稳定性测试
5.3.5 结果分析
5.4 本章小结
结论
参考文献
致谢
个人简历
本文编号:3441824
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/3441824.html