2011-11-04 69 views
2

尋找可用於在HP-UX Itanium平臺上檢測靜態/運行時內存泄漏的各種工具(免費/商業)。用於HP-UX Itanium上的內存分析的工具

背景,我們: 使用HP-UX 11.31 ia64。但是,我們所有的應用程序仍然只有32位。 使用C/Pro * C/COBOL中的目標文件以及包含大量文件/程序的非常大的應用程序提供軟件。 C文件使用標準C編譯器(cc),Pro * C使用Oracle proc和COBOL使用Microfocus'cob進行編譯。最後,所有的目標文件都與cob鏈接器鏈接。 面對核心轉儲,由於內存泄漏/無效引用(大多是從C/PRO * C代碼)

什麼受審: 用gdb和RTC(HP RunTimeCheck內存分析),但由於COBOL的混合性質和C,該工具無法提供重要的線索。 計劃使用Insure ++,但發現它在HP-Itanium上不受支持。 目前,依靠靜態調試和手動打印,但正如你所看到的,非常緩慢和無效。

任何人都可以請建議工具/軟件可用於在這種情況下有效的內存泄漏檢測。

在此先感謝。

ps: 在網絡上搜索時,我遇到了一個商業工具,但從未使用它。 http://www.dynamic-memory.com/products_Overview_htm.php

回答

1

HP WDB由惠普爲這些目的認可:HP WDB

0

我們CheckPointer工具,發現在C程序的內存管理錯誤。如果你沒有做出任何這樣的錯誤,退出時它會告訴你未分配的內存在哪裏分配。

因爲它在源代碼上運行,所以它不是依賴於Itanium硬件,而是依賴於編譯器(處理GCC 3/4 + Microsoft C語言)。您將通過預處理ProC代碼生成C然後將Checkpointer應用於生成的C代碼來處理ProC。

您可能需要爲您的COBOL代碼構建一些包裝器(以驗證COBOL代碼不會對指針造成任何不良影響)。 COBOL並沒有真正做很多動態分配/指針解引用(注意CALL變量語句),因此這種包裝模型不應該很複雜。