安全C語言驗(yàn)證器的形狀系統(tǒng)的擴(kuò)展設(shè)計(jì)與實(shí)現(xiàn)
【學(xué)位授予單位】:中國科學(xué)技術(shù)大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2018
【分類號】:TP311.52
【圖文】:
形狀圖是對于程序執(zhí)行過程中易變數(shù)據(jù)結(jié)構(gòu)狀態(tài)的圖形化描述,它通過有逡逑向圖的形式描述程序中聲明的堆指針變量和堆內(nèi)存中數(shù)據(jù)結(jié)構(gòu)節(jié)點(diǎn)指針域的指逡逑向情況,但并不關(guān)心節(jié)點(diǎn)的數(shù)據(jù)域。如圖2.3所示,在形狀圖的表述中,存在6種逡逑不同類型的形狀圖節(jié)點(diǎn)[37]:聲明節(jié)點(diǎn)用于指代程序中聲明的堆指針變量,顯示逡逑為圓形節(jié)點(diǎn);NULL節(jié)點(diǎn)用于描述C語言中的NULL字面量,顯示為含N的虛逡逑線矩形,若存在指針指向NULL節(jié)點(diǎn),即該指針的值為NULL;懸空節(jié)點(diǎn)用于描逡逑述懸空的內(nèi)存塊,顯示為含D的虛線矩形,若存在指針指向懸空節(jié)點(diǎn),即該指逡逑針懸空;結(jié)構(gòu)節(jié)點(diǎn)用于指代動(dòng)態(tài)分配的結(jié)構(gòu)體內(nèi)存塊,顯示為實(shí)線矩形;濃縮節(jié)逡逑點(diǎn)用于描述指定數(shù)量的結(jié)構(gòu)節(jié)點(diǎn)的折疊,顯示為灰底實(shí)線矩形,其中e為描述數(shù)逡逑量的表達(dá)式,a為關(guān)于e的約束斷言,引入濃縮節(jié)點(diǎn)主要用以簡化形狀圖的表述逡逑(如減少節(jié)點(diǎn)的數(shù)量)并提升其抽象表述能力;謂詞節(jié)點(diǎn)用于指代具備特定謂詞逡逑性質(zhì)的內(nèi)存塊
限制程序能夠使用的易變數(shù)據(jù)結(jié)構(gòu)種類及相關(guān)操作的目的,當(dāng)前的形狀系統(tǒng)能逡逑夠支持5種形狀類別:單向鏈表、循環(huán)單向鏈表、雙向鏈表、循環(huán)雙向鏈表和二逡逑叉樹。形狀系統(tǒng)演算操作的主要對象即形狀圖,實(shí)現(xiàn)中通過如圖2.5所示的類繼逡逑承體系完成對于不同節(jié)點(diǎn)的表述,其中BaseNode是所有節(jié)點(diǎn)的抽象基類,包含逡逑適用于所有節(jié)點(diǎn)類型的操作接口,CondenseNode則是繼承自StructNode,其在后逡逑者的基礎(chǔ)上,還包含與長度信息相關(guān)的成員變量。逡逑BaseNode逡逑邐邐邐邋i邐1逡逑T邐丨DecKNode:聲明節(jié)點(diǎn)逡逑邐I邐1邐1邐|邋StmctNode:結(jié)構(gòu)節(jié)點(diǎn)邋;逡逑DeciNode邐StmctNode邐DangliugNode邋|邋C°ndeiiseNode:濃縮"p邋點(diǎn)邋|逡逑邐邋邐邋邐!邋PredicateNode:謂詞節(jié)點(diǎn)邐|逡逑S邐*NullNode:邋NULL節(jié)點(diǎn)逡逑邐J邐邐邐1邐.I邐邐邋;DaiiglingNode:懸空節(jié)點(diǎn)邋|逡逑PredicateNode邋CondenseNode邋NullNode邐!逡逑圖2.5形狀圖節(jié)點(diǎn)的類繼承體系逡逑原型形狀系統(tǒng)初步實(shí)現(xiàn)了形狀圖邏輯中所述的除函數(shù)調(diào)用之外的演算規(guī)則,逡逑但在實(shí)現(xiàn)層面上對于系統(tǒng)的子模塊并未作出明確的劃分。本研宄在實(shí)現(xiàn)過程中逡逑對形狀系統(tǒng)的實(shí)現(xiàn)做了重構(gòu)
【參考文獻(xiàn)】
相關(guān)期刊論文 前6條
1 宋艷輝;李兆鵬;陳意云;;指針類型遞歸函數(shù)前后形狀圖的自動(dòng)推斷[J];小型微型計(jì)算機(jī)系統(tǒng);2014年04期
2 李兆鵬;張昱;陳意云;;A Shape Graph Logic and A Shape System[J];Journal of Computer Science & Technology;2013年06期
3 張志天;李兆鵬;陳意云;劉剛;;一個(gè)程序驗(yàn)證器的設(shè)計(jì)和實(shí)現(xiàn)[J];計(jì)算機(jī)研究與發(fā)展;2013年05期
4 劉剛;陳意云;張志天;;循環(huán)不變形狀圖的自動(dòng)推斷[J];電子技術(shù);2011年08期
5 單錦輝,姜瑛,孫萍;軟件測試研究進(jìn)展[J];北京大學(xué)學(xué)報(bào)(自然科學(xué)版);2005年01期
6 陳火旺,王戟,董威;高可信軟件工程技術(shù)[J];電子學(xué)報(bào);2003年S1期
相關(guān)碩士學(xué)位論文 前4條
1 楊晨;安全C語言的驗(yàn)證條件證明器的設(shè)計(jì)與實(shí)現(xiàn)[D];中國科學(xué)技術(shù)大學(xué);2017年
2 李為勝;安全C語言的設(shè)計(jì)與實(shí)現(xiàn)[D];中國科學(xué)技術(shù)大學(xué);2016年
3 李云龍;安全C語言形狀系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D];中國科學(xué)技術(shù)大學(xué);2016年
4 馮峰;安全C語言的驗(yàn)證條件生成器的設(shè)計(jì)與實(shí)現(xiàn)[D];中國科學(xué)技術(shù)大學(xué);2016年
本文編號:2734670
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/2734670.html