Valgrind에서 Linux 전용임을 발견했을 때 C 코딩 / 디버깅을 개선하는 데 도움을 요청했습니다. OS를 Linux로 옮기는 데 다른 필요 나 관심이 없으므로 Windows 용으로도 좋은 프로그램이 있는지 궁금합니다.
답변
답변
jakobengblom2가 지적했듯이 valgrind에는 도구가 있습니다. 당신이 말하는 것에 따라 다른 창 카운터 부분이 있습니다. 여기서는 OSS 또는 무료 도구에 대해서만 언급 할 것입니다.
1. MemCheck :
닥터 메모리. 이 도구는 비교적 새로운 도구이며 Windows 7에서 매우 잘 작동합니다. 가장 좋아하는 기능은 보고서에서 동일한 누수 할당 스택을 그룹화한다는 것입니다.
http://code.google.com/p/drmemory/
또한 UMDH ( http://support.microsoft.com/kb/268343 )를 사용 했으며 조용하고 설치하기 쉬운 것이 었습니다. Win2000에서 Win7까지 작동합니다.
AppVerifier는 Windows 기본 코드 개발자를위한 스위스 나이프가 있어야합니다. “메모리”검사기는 유사한 작업을 수행합니다.
http://msdn.microsoft.com/en-us/library/dd371695%28v=vs.85%29.aspx
2. Callgrind :
내가 가장 좋아하는 것은 매우 졸리다 ( http://www.codersnotes.com/sleepy ) 작지만 매우 유용하고 사용하기 쉽다.
더 많은 기능이 필요한 경우 AMD CodeAnalyst ™ 성능 분석기는 무료입니다 :
http://developer.amd.com/documentation/videos/pages/introductiontoamdcodeanalystperformanceanalyzer.aspx
Windows 성능 분석 도구는 Microsoft에서 제공하지 않으므로 사용하기 쉽지는 않지만 시간을 할애하여 작업을 수행 할 수 있습니다. http://blogs.microsoft.co.il/blogs/sasha/archive/2008/03/15/xperf-windows-performance-toolkit.aspx
다운로드 :
http://msdn.microsoft.com/en-us/performance / cc752957
3. 대산 괴 :
Windows의 비슷한 (정확하지 않은) 무료 도구는 다음과 같습니다.
sysinternals의 VMMap : http://technet.microsoft.com/en-us/sysinternals/dd535533
windbg의! heap 명령 : http://hacksoflife.blogspot.com/2009/06/heap-debugging-memoryresource-leak-with.html
4. Cachegrind :
위에서 언급 한 Windows 성능 도구에는 일정 수준의 L2 캐시 미스 프로파일 링 기능이 있지만 Cachegrind만큼 사용하기 쉽지는 않습니다.
5. DRD :
Windows에서 무료로 강력한 것을 찾지 못했지만 Windows에서 유일하게 사용할 수있는 유일한 무료 도구는 AppVerifier의 “잠금”검사기입니다.
http://msdn.microsoft.com/en-us/library /dd371695%28v=vs.85%29.aspx
답변
Valgrind + Wine을 사용하여 Windows 앱을 디버깅하지 않겠습니까? http://wiki.winehq.org/Wine_and_Valgrind를 참조
하십시오
(Chromium은이를 사용하여 Windows 버전의 메모리 오류를 확인합니다. build.chromium.org를 참조하여 실험 또는 메모리 워터 폴을보고 와인을 검색하십시오.)
Dr. Memory도 있습니다. dynamorio.org/drmemory.html 참조
답변
Visual C ++의 경우 Visual Leak Detector를 사용해보십시오 . 그것을 사용할 때 new
호출 에서 메모리 누수가 감지되어 누수의 소스 코드에서 실제 줄을 반환했습니다. 최신 릴리스는 http://vld.codeplex.com/ 에서 찾을 수 있습니다 .