2014-04-24 6 views
1

거대한 메모리 누수가 발생했으며 프로세스의 상주 메모리가 기하 급수적으로 증가하고 있습니다.linux pmap 특정 가상 주소 공간에서 실행중인 내용을 파악합니다.

7f4b03dfb000-7f4d5b146000 rw-p 00000000 00:00 0 
Size:   9817388 kB 
Rss:    8547272 kB 
Pss:    8547272 kB 
Shared_Clean:   0 kB 
Shared_Dirty:   0 kB 
Private_Clean:   0 kB 
Private_Dirty: 8547272 kB 
Referenced:  6971056 kB 
Anonymous:  8547272 kB 
AnonHugePages:   0 kB 
Swap:    80732 kB 
KernelPageSize:  4 kB 
이 곧이

유사 고양이/PROC // 현재 smaps 같은 것을 보여 주었다 누출에 대한 책임이다

... 
00007f4ad85cd000 10530276 9129608 9129608 rw--- [ anon ] 
.... 

:

에서 pmap -x 같은 것을 보여줍니다

지금 무엇? 무엇이 문제의 원인인지 파악하기 위해 다음에 무엇을 할 수 있습니까? 더 디버깅하는 방법? 실제로 오래된 코드는 없습니다. 아무도 로그를 추가 할 위치를 알지 못합니다.

어떻게 당신은 당신의 과정을 참조 7f4b03dfb000-7f4d5b146000

답변

1

에 기여하고 알아낼 않습니다. 이 프로그램은 작성한 프로그램입니까? 소스 코드를 제어하고 액세스 할 수 있습니까? 아니면이 제 3 자 제공 프로그램입니까?

일부 타사 프로그램 인 경우 버그를 신고 할 수밖에 없지만 해결할 수 있기를 바랍니다.

이 코드가 자신의 코드 인 경우 도구를 사용하여 메모리 누수를 디버깅해야합니다. 사용중인 프로그래밍 언어 및 라이브러리에 따라 다양한 도구를 사용할 수 있습니다.

이러한 도구 중 하나는 Valgrind입니다.