基于分層過濾的動態(tài)數(shù)據(jù)競爭并發(fā)檢測與驗證
發(fā)布時間:2023-02-26 17:29
當(dāng)前,隨著多核系統(tǒng)的廣泛應(yīng)用,多線程正成為一種必不可少的編程技術(shù),通常用于從操作系統(tǒng)到智能多媒體應(yīng)用程序,來提高特定程序的性能或響應(yīng)性。但是,由于并發(fā)線程執(zhí)行的不確定性,編寫正確執(zhí)行的多線程程序要比編寫正確執(zhí)行的順序程序困難得多。當(dāng)線程未正確同步時,非確定性線程交織可能對于同一輸入會產(chǎn)生非確定性的輸出。當(dāng)這種不確定的線程行為導(dǎo)致系統(tǒng)故障或結(jié)果不正確時,它被稱為并發(fā)錯誤。數(shù)據(jù)競爭就是多線程并發(fā)程序中最復(fù)雜的并發(fā)錯誤之一。并發(fā)線程執(zhí)行調(diào)度的隨機(jī)性和對共享存儲空間訪問的隱蔽性,造成了數(shù)據(jù)競爭的檢測變得及其困難。動態(tài)數(shù)據(jù)競爭檢測需要監(jiān)視所有執(zhí)行并分析多線程程序中的每個沖突的內(nèi)存操作,導(dǎo)致大量的運(yùn)行時開銷。如何在有限的時間內(nèi)檢測和驗證數(shù)據(jù)競爭成為提高軟件可靠性和安全性的迫切問題。本文主要針對現(xiàn)有的動態(tài)數(shù)據(jù)競爭檢測中產(chǎn)生的大量額外開銷,且不能準(zhǔn)確地找到有害競爭等問題,提出了一種分層過濾的方法來減少動態(tài)監(jiān)視程序執(zhí)行行為的高性能開銷,并且通過兩種并發(fā)策略高效地檢測多線程程序中的數(shù)據(jù)競爭和驗證有害競爭。首先,該算法利用動態(tài)二進(jìn)制插樁工具Pin分別從Image級別(IML)、Section級別(SEL),...
【文章頁數(shù)】:63 頁
【學(xué)位級別】:碩士
【文章目錄】:
摘要
Abstract
第1章 緒論
1.1 課題研究的背景和意義
1.1.1 并發(fā)程序的發(fā)展歷程
1.1.2 并發(fā)程序中的多線程問題
1.2 國內(nèi)外數(shù)據(jù)競爭檢測與驗證研究現(xiàn)狀
1.2.1 國外數(shù)據(jù)競爭檢測與驗證研究現(xiàn)狀
1.2.2 國內(nèi)數(shù)據(jù)競爭檢測和驗證研究現(xiàn)狀
1.2.3 國內(nèi)外數(shù)據(jù)競爭檢測和驗證研究現(xiàn)狀分析
1.3 課題的來源
1.4 課題研究的主要內(nèi)容及章節(jié)安排
第2章 數(shù)據(jù)競爭理論基礎(chǔ)和檢測工具
2.1 數(shù)據(jù)競爭的基礎(chǔ)知識
2.1.1 多線程程序中的數(shù)據(jù)競爭
2.1.2 Lockset算法
2.1.3 Happens-before關(guān)系
2.2 動態(tài)二進(jìn)制插樁和檢測工具
2.2.1 動態(tài)二進(jìn)制插樁
2.2.2 Intel Pin平臺
2.3 本章小結(jié)
第3章 基于分層過濾的動態(tài)數(shù)據(jù)競爭并發(fā)檢測
3.1 并發(fā)檢測數(shù)據(jù)競爭算法概述
3.2 多線程程序中的分層過濾技術(shù)
3.3 多線程程序中原始蹤跡的提取與分類
3.3.1 原始蹤跡的提取
3.3.2 原始蹤跡的分類
3.4 并發(fā)檢測多線程程序中的數(shù)據(jù)競爭
3.5 實驗評估
3.5.1 實驗環(huán)境
3.5.2 基準(zhǔn)程序簡介
3.5.3 實驗方法和評價指標(biāo)
3.5.4 實驗結(jié)果分析
3.6 本章小結(jié)
第4章 并發(fā)驗證有害數(shù)據(jù)競爭
4.1 并發(fā)驗證有害競爭算法概述
4.2 劃分?jǐn)?shù)據(jù)競爭
4.3 并發(fā)驗證數(shù)據(jù)競爭中的有害競爭
4.4 實驗評估
4.4.1 實驗方法和評價指標(biāo)
4.4.2 有害競爭驗證結(jié)果
4.4.3 性能分析
4.5 本章小結(jié)
結(jié)論
參考文獻(xiàn)
攻讀碩士學(xué)位期間所發(fā)表的學(xué)術(shù)論文
致謝
本文編號:3750595
【文章頁數(shù)】:63 頁
【學(xué)位級別】:碩士
【文章目錄】:
摘要
Abstract
第1章 緒論
1.1 課題研究的背景和意義
1.1.1 并發(fā)程序的發(fā)展歷程
1.1.2 并發(fā)程序中的多線程問題
1.2 國內(nèi)外數(shù)據(jù)競爭檢測與驗證研究現(xiàn)狀
1.2.1 國外數(shù)據(jù)競爭檢測與驗證研究現(xiàn)狀
1.2.2 國內(nèi)數(shù)據(jù)競爭檢測和驗證研究現(xiàn)狀
1.2.3 國內(nèi)外數(shù)據(jù)競爭檢測和驗證研究現(xiàn)狀分析
1.3 課題的來源
1.4 課題研究的主要內(nèi)容及章節(jié)安排
第2章 數(shù)據(jù)競爭理論基礎(chǔ)和檢測工具
2.1 數(shù)據(jù)競爭的基礎(chǔ)知識
2.1.1 多線程程序中的數(shù)據(jù)競爭
2.1.2 Lockset算法
2.1.3 Happens-before關(guān)系
2.2 動態(tài)二進(jìn)制插樁和檢測工具
2.2.1 動態(tài)二進(jìn)制插樁
2.2.2 Intel Pin平臺
2.3 本章小結(jié)
第3章 基于分層過濾的動態(tài)數(shù)據(jù)競爭并發(fā)檢測
3.1 并發(fā)檢測數(shù)據(jù)競爭算法概述
3.2 多線程程序中的分層過濾技術(shù)
3.3 多線程程序中原始蹤跡的提取與分類
3.3.1 原始蹤跡的提取
3.3.2 原始蹤跡的分類
3.4 并發(fā)檢測多線程程序中的數(shù)據(jù)競爭
3.5 實驗評估
3.5.1 實驗環(huán)境
3.5.2 基準(zhǔn)程序簡介
3.5.3 實驗方法和評價指標(biāo)
3.5.4 實驗結(jié)果分析
3.6 本章小結(jié)
第4章 并發(fā)驗證有害數(shù)據(jù)競爭
4.1 并發(fā)驗證有害競爭算法概述
4.2 劃分?jǐn)?shù)據(jù)競爭
4.3 并發(fā)驗證數(shù)據(jù)競爭中的有害競爭
4.4 實驗評估
4.4.1 實驗方法和評價指標(biāo)
4.4.2 有害競爭驗證結(jié)果
4.4.3 性能分析
4.5 本章小結(jié)
結(jié)論
參考文獻(xiàn)
攻讀碩士學(xué)位期間所發(fā)表的學(xué)術(shù)論文
致謝
本文編號:3750595
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3750595.html
最近更新
教材專著