基于IE內(nèi)核的多進(jìn)程瀏覽器設(shè)計(jì)與實(shí)現(xiàn)
發(fā)布時(shí)間:2021-10-17 13:15
隨著互聯(lián)網(wǎng)的發(fā)展和普及,瀏覽器作為上網(wǎng)的必備工具,穩(wěn)定性,安全性是瀏覽器是否好用易用的重要指標(biāo)。在瀏覽器剛被設(shè)計(jì)出來(lái)的時(shí)候,那時(shí)的網(wǎng)頁(yè)非常的簡(jiǎn)單,幾乎沒(méi)有動(dòng)態(tài)的代碼。然而在今天我們看到大量網(wǎng)頁(yè)轉(zhuǎn)而使用動(dòng)態(tài)網(wǎng)頁(yè),從含有大量javascript和flash的網(wǎng)頁(yè)到像完全成熟的網(wǎng)絡(luò)應(yīng)用,這些應(yīng)用的很大一部分是在瀏覽器中運(yùn)行的,就像運(yùn)行在操作系統(tǒng)之上的應(yīng)用程序一樣。同時(shí),渲染引擎會(huì)經(jīng)常性的在網(wǎng)絡(luò)上遇到不可信、甚至是惡意的代碼,它們會(huì)利用這些漏洞在你的電腦上安裝惡意的軟件,僅僅一個(gè)頁(yè)面就可以利用渲染引擎的某個(gè)漏洞獲得對(duì)整臺(tái)計(jì)算機(jī)的控制權(quán)。本課題主要對(duì)IE內(nèi)核進(jìn)行封裝,并設(shè)計(jì)和實(shí)現(xiàn)一個(gè)多進(jìn)程架構(gòu)的瀏覽器,解決在瀏覽網(wǎng)頁(yè)時(shí)遇到的穩(wěn)定性問(wèn)題,運(yùn)行在Windows環(huán)境下,采用C++語(yǔ)言開發(fā)。采用多進(jìn)程機(jī)制,根據(jù)功能將瀏覽器劃分為瀏覽器進(jìn)程和渲染進(jìn)程。采用了Windows下命名管道進(jìn)行進(jìn)程間通信,命名管道是Windows操作系統(tǒng)支持的一種進(jìn)程間通信(IPC)機(jī)制,利用Win32API文件處理函數(shù)讀取數(shù)據(jù),支持同一臺(tái)計(jì)算機(jī)進(jìn)程間或是網(wǎng)絡(luò)中不同計(jì)算機(jī)進(jìn)程間互相通信。使用完成端口機(jī)制保證進(jìn)程間通信效率,通過(guò)自定...
【文章來(lái)源】:哈爾濱工業(yè)大學(xué)黑龍江省 211工程院校 985工程院校
【文章頁(yè)數(shù)】:69 頁(yè)
【學(xué)位級(jí)別】:碩士
【文章目錄】:
摘要
Abstract
第1章 緒論
1.1 課題背景
1.2 瀏覽器架構(gòu)發(fā)展現(xiàn)狀
1.2.1 松耦合 IE 架構(gòu)
1.2.2 Chrome 多進(jìn)程架構(gòu)
1.2.3 WebKit2 多進(jìn)程架構(gòu)
1.3 本課題研究的主要內(nèi)容
第2章 多進(jìn)程瀏覽器分析
2.1 瀏覽器需求分析
2.2 瀏覽器高層結(jié)構(gòu)分析
2.2.1 用戶界面
2.2.2 瀏覽器引擎
2.2.3 渲染引擎
2.2.4 網(wǎng)絡(luò)模塊
2.2.5 JavaScript 腳本引擎
2.2.6 XML 解析器
2.2.7 圖形顯示
2.2.8 數(shù)據(jù)持久層
2.3 多進(jìn)程軟件模型分析
2.3.1 線程和進(jìn)程
2.3.2 多進(jìn)程模型的優(yōu)勢(shì)
2.4 IE 瀏覽器相關(guān)技術(shù)
2.4.1 組件對(duì)象模型
2.4.2 IE 瀏覽器體系結(jié)構(gòu)
2.5 本章小結(jié)
第3章 多進(jìn)程瀏覽器設(shè)計(jì)
3.1 瀏覽器模塊結(jié)構(gòu)
3.2 瀏覽器多進(jìn)程架構(gòu)
3.2.1 架構(gòu)設(shè)計(jì)
3.2.2 進(jìn)程模型
3.3 瀏覽器中的線程及其通信
3.3.1 Command 設(shè)計(jì)模式
3.3.2 瀏覽器中的多線程模型
3.4 瀏覽器顯示網(wǎng)頁(yè)過(guò)程
3.5 本章小結(jié)
第4章 多進(jìn)程瀏覽器架構(gòu)實(shí)現(xiàn)
4.1 命名管道
4.1.1 命名管道基本概念
4.1.2 命名管道服務(wù)端
4.1.3 命名管道客戶端
4.2 完成端口
4.2.1 完成端口的使用方法
4.2.2 完成端口的內(nèi)部機(jī)制
4.3 線程消息循環(huán)實(shí)現(xiàn)
4.4 進(jìn)程間通信實(shí)現(xiàn)
4.4.1 進(jìn)程間通信機(jī)制
4.4.2 IPC 消息格式和序列化
4.5 本章小結(jié)
第5章 IE 內(nèi)核封裝實(shí)現(xiàn)及瀏覽器測(cè)試
5.1 自定義瀏覽器控件
5.1.1 集成瀏覽器控件
5.1.2 瀏覽器控件功能控制
5.1.3 控制導(dǎo)航,下載和執(zhí)行
5.1.4 控制新的窗口
5.2 IE 內(nèi)核代碼封裝實(shí)現(xiàn)
5.3 瀏覽器測(cè)試及分析
5.3.1 測(cè)試的目的
5.3.2 測(cè)試環(huán)境
5.3.3 進(jìn)程間通信測(cè)試
5.3.4 功能測(cè)試和穩(wěn)定性測(cè)試
5.3.5 結(jié)果分析
5.4 本章小結(jié)
結(jié)論
參考文獻(xiàn)
致謝
個(gè)人簡(jiǎn)歷
本文編號(hào):3441824
【文章來(lái)源】:哈爾濱工業(yè)大學(xué)黑龍江省 211工程院校 985工程院校
【文章頁(yè)數(shù)】:69 頁(yè)
【學(xué)位級(jí)別】:碩士
【文章目錄】:
摘要
Abstract
第1章 緒論
1.1 課題背景
1.2 瀏覽器架構(gòu)發(fā)展現(xiàn)狀
1.2.1 松耦合 IE 架構(gòu)
1.2.2 Chrome 多進(jìn)程架構(gòu)
1.2.3 WebKit2 多進(jìn)程架構(gòu)
1.3 本課題研究的主要內(nèi)容
第2章 多進(jìn)程瀏覽器分析
2.1 瀏覽器需求分析
2.2 瀏覽器高層結(jié)構(gòu)分析
2.2.1 用戶界面
2.2.2 瀏覽器引擎
2.2.3 渲染引擎
2.2.4 網(wǎng)絡(luò)模塊
2.2.5 JavaScript 腳本引擎
2.2.6 XML 解析器
2.2.7 圖形顯示
2.2.8 數(shù)據(jù)持久層
2.3 多進(jìn)程軟件模型分析
2.3.1 線程和進(jìn)程
2.3.2 多進(jìn)程模型的優(yōu)勢(shì)
2.4 IE 瀏覽器相關(guān)技術(shù)
2.4.1 組件對(duì)象模型
2.4.2 IE 瀏覽器體系結(jié)構(gòu)
2.5 本章小結(jié)
第3章 多進(jìn)程瀏覽器設(shè)計(jì)
3.1 瀏覽器模塊結(jié)構(gòu)
3.2 瀏覽器多進(jìn)程架構(gòu)
3.2.1 架構(gòu)設(shè)計(jì)
3.2.2 進(jìn)程模型
3.3 瀏覽器中的線程及其通信
3.3.1 Command 設(shè)計(jì)模式
3.3.2 瀏覽器中的多線程模型
3.4 瀏覽器顯示網(wǎng)頁(yè)過(guò)程
3.5 本章小結(jié)
第4章 多進(jìn)程瀏覽器架構(gòu)實(shí)現(xiàn)
4.1 命名管道
4.1.1 命名管道基本概念
4.1.2 命名管道服務(wù)端
4.1.3 命名管道客戶端
4.2 完成端口
4.2.1 完成端口的使用方法
4.2.2 完成端口的內(nèi)部機(jī)制
4.3 線程消息循環(huán)實(shí)現(xiàn)
4.4 進(jìn)程間通信實(shí)現(xiàn)
4.4.1 進(jìn)程間通信機(jī)制
4.4.2 IPC 消息格式和序列化
4.5 本章小結(jié)
第5章 IE 內(nèi)核封裝實(shí)現(xiàn)及瀏覽器測(cè)試
5.1 自定義瀏覽器控件
5.1.1 集成瀏覽器控件
5.1.2 瀏覽器控件功能控制
5.1.3 控制導(dǎo)航,下載和執(zhí)行
5.1.4 控制新的窗口
5.2 IE 內(nèi)核代碼封裝實(shí)現(xiàn)
5.3 瀏覽器測(cè)試及分析
5.3.1 測(cè)試的目的
5.3.2 測(cè)試環(huán)境
5.3.3 進(jìn)程間通信測(cè)試
5.3.4 功能測(cè)試和穩(wěn)定性測(cè)試
5.3.5 結(jié)果分析
5.4 本章小結(jié)
結(jié)論
參考文獻(xiàn)
致謝
個(gè)人簡(jiǎn)歷
本文編號(hào):3441824
本文鏈接:http://sikaile.net/guanlilunwen/ydhl/3441824.html
最近更新
教材專著