天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

當(dāng)前位置:主頁(yè) > 科技論文 > 軟件論文 >

多線(xiàn)程程序并發(fā)錯(cuò)誤檢測(cè)與重放系統(tǒng)研究

發(fā)布時(shí)間:2020-05-14 14:36
【摘要】:當(dāng)下,計(jì)算機(jī)技術(shù)飛速發(fā)展,計(jì)算機(jī)并發(fā)體系結(jié)構(gòu)已成為主流。為使并發(fā)體系結(jié)構(gòu)的性能得到充分發(fā)揮,多線(xiàn)程編程思想應(yīng)運(yùn)而生。但是由于多線(xiàn)程程序運(yùn)行的不確定性,導(dǎo)致編程人員在編程和調(diào)試階段需要耗費(fèi)大量的時(shí)間和精力,嚴(yán)重制約了多線(xiàn)程編程技術(shù)的發(fā)展。因此,研究如何檢測(cè)并發(fā)錯(cuò)誤,研究高效、快速的應(yīng)用程序重放機(jī)制對(duì)多線(xiàn)程編程技術(shù)的發(fā)展有著重要的意義。在近些年,關(guān)于并發(fā)程序執(zhí)行不確定性的研究吸引了國(guó)內(nèi)外高校和研究機(jī)構(gòu)的眾多學(xué)者,在這方面也取得了許多成果。現(xiàn)有的研究主要體現(xiàn)在以下幾個(gè)層面:設(shè)計(jì)開(kāi)發(fā)并行編程語(yǔ)言,或?qū)ΜF(xiàn)有語(yǔ)言進(jìn)行擴(kuò)展,令其能夠確定性的執(zhí)行并發(fā)程序;使用確定性重放,使得程序能夠重現(xiàn)上次運(yùn)行的順序和結(jié)果;向計(jì)算機(jī)中增加額外的硬件或修改原有的體系結(jié)構(gòu),從底層硬件級(jí)別實(shí)現(xiàn)并發(fā)程序執(zhí)行的確定性。本文主要針對(duì)導(dǎo)致多線(xiàn)程程序執(zhí)行不確定性的主要因素--原子性違例,提出了一種基于線(xiàn)程交互不變量的原子性違例錯(cuò)誤并發(fā)檢測(cè)算法。該算法首先利用二進(jìn)制插樁平臺(tái)Pin提取程序的原始蹤跡并去除冗余,并利用基于無(wú)序映射的散列表對(duì)蹤跡進(jìn)行分類(lèi);然后用棧提取的線(xiàn)程交互不變量標(biāo)記線(xiàn)程交互,并利用多進(jìn)程技術(shù)實(shí)現(xiàn)算法的并發(fā);最后通過(guò)實(shí)驗(yàn),比較和分析了錯(cuò)誤檢測(cè)算法的效率和有效性。除了錯(cuò)誤檢測(cè)外,本文還實(shí)現(xiàn)了基于線(xiàn)程切換點(diǎn)的確定性重放系統(tǒng),用以解決多線(xiàn)程程序難以重現(xiàn)上次運(yùn)行順序和執(zhí)行結(jié)果的難題。與錯(cuò)誤檢測(cè)算法相配合,能夠有效避免錯(cuò)誤的發(fā)生。
【圖文】:

架構(gòu)圖,架構(gòu),插樁


運(yùn)行代碼(Runtime code),即它能夠模擬運(yùn)行程序,并允許用戶(hù)的任意語(yǔ)句進(jìn)行控制或修改[42]。DynamoRIO 可以運(yùn)行在 Wind 操作系統(tǒng)上。如圖 2-6 所示為 DynamoRIO 的設(shè)計(jì)架構(gòu)。in 是 Intel 開(kāi)發(fā)的二進(jìn)制程序插樁工具,如圖 2-7 所示為 Intel Pin Android,LinuxOSX 和 Windows 操作系統(tǒng),并可以在 IA-32,Inl(R)多核架構(gòu)上運(yùn)行。由 Pin 編寫(xiě)的插樁工具在可執(zhí)行文件中的任意代碼(C 或 C++)。它支持可執(zhí)行文件運(yùn)行時(shí)代碼動(dòng)態(tài)添加。以附加到已運(yùn)行的進(jìn)程上。Pin 提供了豐富的 API 接口,并且包含插樁工具的源代碼,可以很容易地以此為模板,開(kāi)發(fā)符合自己要工具[43]。in 使用動(dòng)態(tài)編譯的方法插入探測(cè)代碼,配合使用函數(shù)內(nèi)聯(lián)、寄存器度等優(yōu)化方法,使得基于 Pin 開(kāi)發(fā)的動(dòng)態(tài)二進(jìn)制插樁工具具有較。例如,統(tǒng)計(jì)程序執(zhí)行的基本塊數(shù)量時(shí),使用 Pin 平臺(tái)的速度比 倍,比 DynamoRIO 快 2 倍; Pin 開(kāi)發(fā)的動(dòng)態(tài)二進(jìn)制分析插件(p樁操作時(shí)不會(huì)影響被分析程序的內(nèi)存和寄存器狀態(tài)以及程序的執(zhí)析程序來(lái)說(shuō)具有透明性[41]。

架構(gòu)圖,架構(gòu),確定性,階段


圖2-7 Intel Pin工具的架構(gòu)Fig. 2-7 The architecture of Pin tools.以上特點(diǎn),本文最終選擇使用了 DBI 技術(shù)的 Pin 二進(jìn)制插樁制分析的基礎(chǔ)平臺(tái)。線(xiàn)程程序確定性重放技術(shù)于多線(xiàn)程程序在運(yùn)行時(shí)具有不確定性,,其不確定性主要體現(xiàn)在確定性。程序員在編寫(xiě)多線(xiàn)程程序編程時(shí),可能出現(xiàn)的 bug 數(shù)的增加而增加,這將給程序員進(jìn)行并發(fā)程序的編寫(xiě)和調(diào)試工困難。因此,研究并實(shí)現(xiàn)多核程序的確定性重放(deterministi重要的現(xiàn)實(shí)意義。定性重放系統(tǒng)按照重放的方式分為兩種,分別是在線(xiàn)(on-linene)兩種。當(dāng)記錄階段與重放階段同時(shí)執(zhí)行時(shí),就是在線(xiàn)方式,理方面。當(dāng)先由記錄階段記錄日志,然后重放階段根據(jù)日志重方式,主要針對(duì)于對(duì)應(yīng)用程序的糾錯(cuò)和調(diào)試方面。確定性重放
【學(xué)位授予單位】:哈爾濱理工大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2018
【分類(lèi)號(hào)】:TP311.1

【參考文獻(xiàn)】

相關(guān)期刊論文 前6條

1 蘇小紅;禹振;王甜甜;馬培軍;;并發(fā)缺陷暴露、檢測(cè)與規(guī)避研究綜述[J];計(jì)算機(jī)學(xué)報(bào);2015年11期

2 朱素霞;季振洲;李東;;面向多核處理器的內(nèi)存競(jìng)爭(zhēng)記錄研究綜述[J];智能計(jì)算機(jī)與應(yīng)用;2013年03期

3 胡敏;陳雨亭;;基于距離挖掘的多變量原子性違例檢測(cè)[J];計(jì)算機(jī)工程;2012年13期

4 楊振興;劉久富;孫琳;;不變量的程序潛在錯(cuò)誤預(yù)測(cè)[J];智能系統(tǒng)學(xué)報(bào);2010年04期

5 何永君;舒輝;熊小兵;;基于動(dòng)態(tài)二進(jìn)制分析的網(wǎng)絡(luò)協(xié)議逆向解析[J];計(jì)算機(jī)工程;2010年09期

6 馬如林;蔣華;張慶霞;;一種哈希表快速查找的改進(jìn)方法[J];計(jì)算機(jī)工程與科學(xué);2008年09期

相關(guān)博士學(xué)位論文 前1條

1 陳宇飛;可伸縮的確定性重放技術(shù)研究[D];復(fù)旦大學(xué);2014年

相關(guān)碩士學(xué)位論文 前2條

1 王乾;基于動(dòng)態(tài)二進(jìn)制分析的關(guān)鍵函數(shù)定位技術(shù)研究[D];解放軍信息工程大學(xué);2012年

2 胡敏;對(duì)涉及到多變量的原子性違例錯(cuò)誤的動(dòng)態(tài)檢測(cè)[D];上海交通大學(xué);2012年



本文編號(hào):2663498

資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/2663498.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶(hù)1c96f***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com