2011-11-04 4 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 with Microfocus 'cob로 컴파일됩니다. 마지막으로, 모든 오브젝트 파일은 cob 링커와 링크됩니다. 직면 코어 인한 메모리 누수에, 덤프/유효하지 않은 참조 (대부분의 C/프로 * C 코드) 시도 된 어떤

: 사용 GDB와 RTC (HP RunTimeCheck 메모리 분석을 위해), 그러나 때문에 COBOL의 혼합 특성으로 C는 도구가 중요한 단서를 제공 할 수 없습니다. Insure ++ 사용을 계획했지만 HP-Itanium에서 지원되지 않습니다. 현재 정적 디버깅 및 수동 인쇄에 의존하고 있지만 알 수 있듯이 매우 느리고 효과가 없습니다.

누구든지이 시나리오에서 효과적인 메모리 누수 탐지를 수행 할 수있는 도구/소프트웨어를 제안 할 수 있습니까?

미리 감사드립니다.

ps : 웹에서 검색하는 동안 하나의 상용 도구가 있지만 사용하지는 못했습니다. http://www.dynamic-memory.com/products_Overview_htm.php

답변

1

HP WDB는 이러한 목적을 위해 HP 인식 : C 프로그램에서 메모리 관리 실수를 발견 HP WDB

0

우리 CheckPointer 도구를. 이러한 오류를 만들지 않았다면 종료 할 때 할당되지 않은 메모리가 할당 된 위치를 알려줍니다.

소스 코드에서 작동하기 때문에 특별히 Itanium 하드웨어에 종속되지는 않지만 컴파일러에 따라 다릅니다 (GCC 3/4 + Microsoft C 언어 처리). ProC 코드를 전처리하여 C를 생성 한 다음 Checkpointer를 생성 된 C 코드에 적용하여 처리 할 ProC.

COBOL 코드에 대한 래퍼를 만들어야합니다 (COBOL 코드가 포인터로 문제가 없는지 확인). COBOL은 실제로 동적 할당/포인터 역 참조 (CALL 변수 문에주의하지 않음)를 수행하지 않으므로 그러한 래퍼 모델은 복잡하지 않아야합니다.