999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

內存泄漏檢測方法研究綜述

2018-01-04 10:59:48汪明曄
電腦知識與技術 2018年28期
關鍵詞:程序檢測方法

汪明曄

摘要:內存泄漏是一個長期困擾軟件開發(fā)人員的問題,學術界針對該問題進行了長期的研究和討論。當前定位內存泄漏位置的方法主要有靜態(tài)檢測、動態(tài)檢測、靜態(tài)檢測和動態(tài)檢測相結合的三種方法。本文將介紹內存泄漏的原因,分別闡述上述三種內存泄漏檢測的原理和方法,分析它們各自的優(yōu)勢和不足,最后指明內存泄漏檢測技術未來的發(fā)展方向。

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2018)28-0276-01

內存泄漏問題的產生一般是由于軟件開發(fā)設計過程留下的代碼缺陷,導致程序向系統(tǒng)申請的堆區(qū)內存沒有被回收或者沒有被及時回收。內存泄漏的不斷積累通常會使程序的可用內存空間減少,執(zhí)行速度減慢,甚至發(fā)生無法挽回的系統(tǒng)故障[1]。同時,內存泄漏缺陷的存在還可能被一些針對軟件系統(tǒng)的攻擊行為(比如拒絕服務Denial of Service)所利用和放大,對軟件安全性產生十分不良的影響[2]。

為了解決內存泄漏問題,靜態(tài)檢測、動態(tài)檢測、靜態(tài)檢測和動態(tài)檢測相結合等方法被提出。通過這些檢測方法,軟件開發(fā)人員可以找到造成內存泄漏的代碼位置,修復造成內存泄漏的軟件缺陷。

本文將重點介紹內存泄漏檢測原理和方法,圍繞它們各自的優(yōu)勢和不足,分析每種方法的優(yōu)缺點,科學預測內存泄漏檢測技術未來的發(fā)展方向。

1 內存泄漏檢測原理和方法

靜態(tài)檢測方法是在目標程序運行前對程序源碼或目標代碼進行靜態(tài)分析,發(fā)現潛在的內存泄漏代碼缺陷;動態(tài)檢測方法是當目標程序運行時,收集程序內存操作信息,判斷是否發(fā)生內存泄漏;為了提高動態(tài)檢測方法的效率,也為了減少對目標程序運行的干擾,可以先對程序的源碼做靜態(tài)分析或者目標機器代碼反匯編并做靜態(tài)分析,預測可能發(fā)生泄漏的代碼段,當程序運行時,只在這些代碼段被執(zhí)行時跟蹤收集程序的內存操作信息,這便是靜態(tài)檢測和動態(tài)檢測相結合的方法。

1.1 內存泄漏靜態(tài)檢測

靜態(tài)檢測原理是通過對目標程序的源碼或者目標代碼進行詞法語法分析或解析,發(fā)現潛在的代碼缺陷,報告給軟件開發(fā)人員,其一般流程如圖1所示:

靜態(tài)檢測方法一般采用模式匹配預測可能發(fā)生內存泄漏的位置,具體使用哪種模式因程序的高級語言或者匯編指令而異,通過判斷堆指針是否被正確釋放檢測是否發(fā)生內存泄漏。

1.2 內存泄漏動態(tài)檢測

動態(tài)檢測原理一般是通過截獲目標程序的內存操作函數(如malloc、free等)獲取所申請的內存的信息,通過判斷動態(tài)申請的內存是否被釋放或者在預定時間內被釋放檢測是否發(fā)生內存泄漏。動態(tài)檢測方法的一般步驟如圖2所示:

1.3 內存泄漏靜態(tài)檢測和動態(tài)檢測相結合的方法

靜態(tài)檢測和動態(tài)檢測相結合的方法綜合了靜態(tài)檢測和動態(tài)檢測兩種方法,該方法首先使用靜態(tài)檢測方法確定程序可能發(fā)生內存泄漏的位置,當程序運行時,通過對這些潛在內存泄漏位置進行動態(tài)跟蹤檢測,該方法的一般步驟如圖3所示:

2 三種內存泄漏方法的比較結論

靜態(tài)檢測方法對程序的運行沒有影響,但是僅通過對程序靜態(tài)分析產生內存泄漏警報存在誤報的情況;動態(tài)檢測方法通過跟蹤進程的內存操作確認內存泄漏的結果是否準確,但是會影響到程序的運行,而且存在漏報情況;靜態(tài)和動態(tài)檢測相結合的方法,通過靜態(tài)檢測減少了漏報的情況和對程序運行的干擾,通過動態(tài)檢測使檢測的結果更加可靠,是一種折中的方法,也是未來內存泄漏檢測技術研究的發(fā)展趨勢。

參考文獻:

[1] 王喆. C/C++代碼內存泄漏缺陷檢測方法研究[D].大連理工大學, 2012.

[2] 李孟宸. 面向C語言程序內存泄漏的動態(tài)確認技術[D].南京大學, 2014.

【通聯(lián)編輯:梁書】

猜你喜歡
程序檢測方法
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
可能是方法不對
小波變換在PCB缺陷檢測中的應用
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
創(chuàng)衛(wèi)暗訪程序有待改進
主站蜘蛛池模板: 欧美在线国产| 国产精品成人啪精品视频| 欧美成人午夜在线全部免费| 人人妻人人澡人人爽欧美一区| 亚亚洲乱码一二三四区| 欧美日韩导航| 色屁屁一区二区三区视频国产| 久久中文电影| 国产在线小视频| 亚洲国产中文欧美在线人成大黄瓜 | 91福利国产成人精品导航| 激情无码字幕综合| AV熟女乱| 伊人成色综合网| 国产精品无码制服丝袜| 亚洲精品va| 国产成人一区| 久久婷婷五月综合色一区二区| 激情综合网址| 亚洲无码在线午夜电影| 无码福利视频| 国产福利免费视频| 国产成人精品午夜视频'| 无码中文字幕乱码免费2| 欧美成人精品一区二区| 国产精品三级av及在线观看| 久久精品一品道久久精品| 国产不卡网| 色偷偷一区二区三区| 精品国产一区91在线| 国产一级做美女做受视频| 热99精品视频| 中文字幕在线免费看| 毛片国产精品完整版| 怡春院欧美一区二区三区免费| 久久黄色视频影| 国产黄色视频综合| 免费 国产 无码久久久| 欧美亚洲欧美区| 综合天天色| 99久久精品免费看国产免费软件 | 日本不卡免费高清视频| 国产午夜在线观看视频| 成人精品在线观看| 久久网欧美| 一级做a爰片久久免费| 毛片免费在线视频| 黄色网站不卡无码| 亚洲国产成人精品一二区| 久久永久免费人妻精品| 亚洲欧美色中文字幕| 一区二区三区国产精品视频| 99热国产这里只有精品无卡顿"| 国产精品va免费视频| 欧美成人手机在线观看网址| 久久影院一区二区h| 色综合色国产热无码一| 免费毛片视频| 国产微拍一区二区三区四区| 国内毛片视频| 伊人久久大香线蕉aⅴ色| 夜夜拍夜夜爽| 亚洲三级片在线看| 中文字幕天无码久久精品视频免费 | 99久久精品国产麻豆婷婷| 99精品在线看| 国产午夜福利在线小视频| 欧美三級片黃色三級片黃色1| 欧美亚洲日韩不卡在线在线观看| 无码日韩精品91超碰| 久久这里只精品国产99热8| 尤物在线观看乱码| 伊人成人在线| 国产丝袜啪啪| 中文无码日韩精品| 国产欧美综合在线观看第七页| 日本伊人色综合网| 亚洲精品国产自在现线最新| 亚洲中文精品人人永久免费| 男女男免费视频网站国产| 日韩AV手机在线观看蜜芽| 亚洲av中文无码乱人伦在线r|