리눅스에서 malloc 으로 할당한 총 메모리 크기를 알수 있는 방법이 있는데
아직 모르시는 분들을 위해서 끄적끄적 적어봅니다.
물론 hook 을 통해서도 할수 있고 mcheck 를 통해서도 방법이 있는데
아래의 방법이 매우 편한것 같네요.
설명은 다 생략하고 예제 한번 보여드립니다.
아직 모르시는 분들을 위해서 끄적끄적 적어봅니다.
물론 hook 을 통해서도 할수 있고 mcheck 를 통해서도 방법이 있는데
아래의 방법이 매우 편한것 같네요.
설명은 다 생략하고 예제 한번 보여드립니다.
| 코드: |
|
/* Copyright (c) Information Equipment co.,LTD. All right reserved Code by JaeHyuk Cho <mailto:minzkn@infoeq.com> CVSTAG="$Header$" */ #include <malloc.h> int main(int s_argc, char **s_argv); int main(int s_argc, char **s_argv) { struct mallinfo s_m; void *s_p; #define mm() do{s_m = mallinfo(); fprintf(stdout, "%d/%d --\n", s_m.arena, s_m.uordblks);}while(0) mm(); s_p = malloc(100); mm(); free(s_p); mm(); s_p = malloc(10000); mm(); free(s_p); mm(); return(0); } /* End of source */ |




댓글을 달아 주세요
오오 디버깅용도로 사용하면 편하겠네요.
어찌 이리 좋은 정보들을 많이 잘 올리시는지. ^^
team blog를 계속 보고 있는데 경이롭습니다~~
오늘 낮에 길 걷다가 문득 알아내는 방법이 없을까?..
라고 생각했던 건데....
잊고있다가 무심코 이 글을 보게될줄이야..+_+
좋은 정보 감사합니다.