2011-03-18 1 views
0

나는 this 페이지를 보았고 dbx를 사용하여 프로그램의 메모리 누수를 확인할 수 있음을 확인하면서 메모리 누수를 확인했습니다. 나는 실제적으로 그것을 한 적이 없지만 메모리 누출을 검사하는 것은 좋은 것으로 보입니다.dbx로 디버깅 rtcaudit.so

저는 HPUX 및 IBM AIX UNIX OS에서 작동하는데, GUI가없고 항상 명령 행에서 작동하는 데 사용됩니다. 런타임 검사를위한 라이브러리 rtcaudit.so는 Sun에서 제공합니다. 이 라이브러리는 sun solaris에서만 사용할 수 있습니까?

당신은 왜 나 자신을 시도 할 수 없는지 말할 수 있습니다.하지만 문제는 현재 유닉스에서는 작동하지 않지만 windows에서는입니다. 나는 HPUX 또는 IBM AIX에서 동일한 것을 사용할 수 있는지 여부를 알고 싶어합니다.

아무도 이것에 대해 알고 있나요? 경우에 그것을 공유하십시오 당신은

답변

3
  • rtcaudit.so (이전 썬 ​​스튜디오로 알려진) Oracle Solaris Studio의 일부입니다 알고 있습니다. 이름에도 불구하고 리눅스 x86에서도 실행됩니다. 따라서 리눅스 박스가 있고 얼마 동안 그것을 시도해 볼 수 있습니다. (그럴 경우 먼저 Valgrind를 시도해보고 Scotts의 대답을 참조하십시오.)

  • HP의 경우 Wildebeest Debugger (WDB) (수정 된 gdb)이 있습니다. WDB에는 메모리 누수를 찾기 위해 자체 확장이 있습니다. 이것들은 Sun dbx와는 다르지만, 여전히 시도해 볼 수 있습니다.

  • Visual Studio를 사용하는 경우 메모리 누수를 찾을 수있는 몇 가지 지원이 제공됩니다. MSDN의 Memory Leak Detection and Isolation을 참조하십시오.

  • 이러한 유형의 오류를 잡기위한 몇 가지 무료 라이브러리가 있습니다. Windows의 경우 예 : DUMA, Electric FenceVisual Leak Detector입니다. (내가 충분히 명성 포인트를 가지고 있지 않기 때문에 링크를 게시 할 수 없습니다.)

PS를 :이 같은 문제가 발생하면 내가하려고 제일 먼저 Valgrind의 (스콧 응답 참조). 그것은 어떤 상호 작용을 필요로하지 않지만 간단하게 많은 유용한 정보를 뱉어 낸다. 전체 디버거는 아니지만 오류를 수정하기위한 충분한 힌트를 제공합니다. 추천! Windows에서는 실행되지 않습니다.

question, questionquestion을 여기 (stackoverflow.com)에서 볼 수 있습니다.

3

오픈 소스 대안은 Valgrind입니다. 이것은 메모리 누수를 감지 할뿐만 아니라 다른 종류의 메모리 오류와 내가 사용 해본 적이없는 것들을 감지합니다. 현재 Linux, MacOS, FreeBSD 및 NetBSD에서만 실행되지만 프로그램이 플랫폼에 종속적이지 않으면 대상 플랫폼에서 실행하기 전에 하나의 플랫폼에서 개발 및 디버그 할 수 있습니다.