基本介紹
- 外文名:Insure++
- 針對: C/C++套用
- 暗影:運行時錯誤自動檢測工具
- 包括:清楚地指示那些代碼已經測試過。
特性,好處,用途,工具,專利和關鍵技術,支持平台,
特性
1. 檢測眾多不同類型的難以捉摸的錯誤,如記憶體破壞、記憶體泄露、記憶體分配錯誤、變
2. 精確定位引起記憶體泄露的代碼位置,不僅是泄露的記憶體位置
3. 支持所有流行的編譯器,如 VC、CC、GCC 和 ACC等等
4. 能夠檢查第三方庫和函式以及非 C 語言所寫的模組接口
5. 允許您在快速有選擇的檢查和完全插樁檢查之間進行切換
6. 發現大量的 C++錯誤。
好處
1. 大量減少調試時間
3. 降低維護和支持成本
4. 經常使用能夠幫助您排除算法錯誤
5. 支持多平台和跨平台開發
6. 能夠與您的開發生命周期無縫集成
用途
Insure++™能夠發現 C/C++套用中很多難以捉摸的錯誤,大致可以分成三大類:
1. 記憶體引用錯誤:
● 記憶體破壞
● 指針錯誤
● 記憶體泄漏
● 動態記憶體問題
● 字元串問題
● 其他
2. 編程和第三方庫接口錯誤:
● 數據表示問題
● 變數說明問題
2/3 ● I/O 語句問題
● 不匹配的參數
● 系統調用中的無效參數
● 系統調用中的意外錯誤
● 其他
3. C++有關的錯誤:
● Delete 操作的使用不一致
● 記憶體分配衝突
● 其他
4. 動態記憶體錯誤檢測
● 多次釋放同一記憶體塊
● 試圖刪除或釋放靜態分配的記憶體
● 傳遞給 delete/free的指針沒有指向一記憶體塊的起點
● 用 NULL 或未初始化指針調用 delete/free
● new[ ]和 delete[ ]調用不匹配
● malloc/new/free/delete 混合調用不匹配
● 過度的 new/delete 調用引起的問題
● 其他
工具
1. Insra:
圖形化顯示靜態和動態檢測時檢測到的錯誤,並指出發生錯誤的準確位置。
2. Inuse:
實時記憶體可視化工具,幫助您理解記憶體使用模式並最佳化其行為。
3. TCA:
測試覆蓋性分析,告訴您那些代碼已經被實際測試過。
4. Threads++(Linux, Unix):
專利和關鍵技術
Insure++™利用源碼插樁(SCI,ParaSoft 專利技術,#5581696)和運行時指針跟蹤
(RPT,ParaSoft 專利技術,# 5842019)技術。
1. 源碼插樁:
和接口等。
3/3 2. 運行時指針跟蹤:
使用一個有關指針和記憶體塊的綜合資料庫檢查對記憶體的每一次讀寫操作。
支持平台
1. Microsoft Windows 2000/XP/2003/7/8,Insure++™ works as a plug-in for Visual C++
* Microsoft Visual C++ 6.0
* Microsoft Visual C++ .NET
* Microsoft Visual C++ .NET 2003
* Microsoft Visual C++ 2005
*Microsoft Visual C++ 2008
*Microsoft Visual C++ 2010
*Microsoft Visual C++ 2012
2. Linux for x86 processors 32 bits (all distributions)
* GNU gcc/g++ 2.95.x, 3.2.x, 3.3.x, 3.4.x, 4.0
* Intel ICC 8.0, 8.1, 9.0
3. Linux for AMD64 and Intel EM64T 64 bits (all distributions)
* GNU gcc/g++ 3.2.x, 3.3.x, 3.4.x, 4.0
* Intel ICC 8.1, 9.0
4. Solaris 7, 8, 9, 10 UltraSparc Processor
* Forte Developer 6 Update 2 (6.2) / Sun CC 5.3
* Sun ONE Studio 7/ Sun CC 5.4
* Sun ONE Studio 8/ Sun CC 5.5
* Sun Studio 9/ Sun CC 5.6
* Sun Studio 10/ Sun CC 5.7
* GNU gcc/g++ 2.95.x, 3.2.x, 3.3.x, 3.4.x
5. IBM AIX 5.1, 5.2, 5.3, PowerPC Processor 32 and 64 bits