參數(shù)化運行時驗證研究與工具實現(xiàn).pdf_第1頁
已閱讀1頁,還剩79頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、隨著軟件規(guī)模的不斷增大,如何保證軟件可靠性和安全性成為學(xué)術(shù)界和工業(yè)界越來越關(guān)注的問題。目前,軟件測試、靜態(tài)分析和模型檢測是保證軟件質(zhì)量的常用方法,但它們都存在一定缺陷。靜態(tài)分析容易產(chǎn)生對錯誤的漏報和誤報,且很難處理指針和復(fù)雜數(shù)據(jù)結(jié)構(gòu)。模型檢測則可能導(dǎo)致狀態(tài)空間爆炸問題。而軟件測試需要手動生成測試用例,且無法驗證形式化規(guī)約。
  運行時驗證是一種新型的程序自動驗證技術(shù),它是一種在程序運行過程中驗證系統(tǒng)是否滿足或違背給定性質(zhì)的方法。在

2、運行時驗證中,使用監(jiān)控器來對系統(tǒng)進行驗證。監(jiān)控器從給定性質(zhì)中產(chǎn)生。在程序執(zhí)行時,監(jiān)控器通過不斷檢測程序的執(zhí)行情況來判斷它是否滿足給定的性質(zhì)。C語言是一種重要的編程語言,使用C語言編寫的程序具有執(zhí)行效率高、可移植性強等優(yōu)點。當前針對C程序的運行時驗證工具較少。JavaMOP(Monitoring-Oriented Programming)是一個針對Java程序的運行時驗證工具,但它無法對C程序進行驗證。
  本文設(shè)計了一種針對C程序

3、的監(jiān)控器規(guī)約語言,用于描述針對C程序的形式化規(guī)約。該語言借鑒了面對方面編程的思想,可以支持基于有限狀態(tài)自動機、正則表達式和線性時序邏輯的參數(shù)化運行時驗證。本文設(shè)計了支持該語言的參數(shù)化運行時驗證方法。為了對運行時產(chǎn)生的大量監(jiān)控器進行索引,我們提出并實現(xiàn)了一種層次哈希森林的數(shù)據(jù)結(jié)構(gòu)。在此基礎(chǔ)上,本文利用C++語言和開源工具flex、bison實現(xiàn)了原型工具MOVEC(MOnitoring,VErification and Control)。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論