LMDBG

소프트웨어 스크린 샷:
LMDBG
소프트웨어 정보:
버전: 1.2.0
업로드 날짜: 20 Feb 15
개발자: Aleksey Cheusov
라이센스: 무료
인기: 16

Rating: nan/5 (Total Votes: 0)

그러나, 다른 사람과는 달리, LMDBG은 * 전체 * stacktracesand가 당 모듈 기초에서 응용 프로그램을 분석하는 분석 thusallowing에서 로그인 분리한다 생성한다.

LMDBG 메모리 leaksand 두 번 자유로 & NBSP을 검출 할 수 있도록하는 응용 프로그램입니다.
- lmdbg-실행은 주요 lmdbg 유틸리티입니다. 이 응용 프로그램을 실행하고 로그 파일을 만듭니다 (또는 FIFO) 여기서 모든 호출의 malloc /은 calloc / realloc을 / 무료 / memalign / posix_memalign 호출 자신의 입력에 등록 된 (바이트 카운트, 포인터), 출력 (포인터)와 (! 유니크 기능!) FULL 스택 트레이스 (포인터).
예 :
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ 고양이 테스트 / test2.c
& NBSP; & NBSP; & nbsp; & nbsp; 확인 사용법 #include
& NBSP; & NBSP; & nbsp; & nbsp; 확인 ) (주 int로
& NBSP; & NBSP; & nbsp; & nbsp; 확인 {
& NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 무효 * P1 = NULL;
& NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 무효 * P2 = NULL;
& NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 P1 = malloc에​​ (555);
& NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 P2 = realloc을 (P2, 666);
& NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 P2 = realloc을 (P2, 777);
& NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 P2 = realloc을 (P2, 888);
& NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 0을 반환;
& NBSP; & NBSP; & nbsp; & nbsp; 확인 }
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ gcc가 -O0 -g -o _test2 테스트 / test2.c
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ lmdbg 운영하는 -o _log ./_test2
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ 고양이 _log
& NBSP; & NBSP; & nbsp; & nbsp; 확인 의 malloc (555) -> 0xbb901400
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5b03
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048738
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (NULL, 666) -> 0xbb901800
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x804874e
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (0xbb901800, 777) -> 0xbb901c00
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048764
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (0xbb901c00, 888) -> 0xbb901800
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x804877a
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $
참고 : 전체 스택 트레이스, 당신은 응용 프로그램을 분석 할 수는 블록 / 구성 요소가 다른 이유보다 더 많은 메모리를 필요로 무엇을 검색 할 수 있습니다 즉. lmdbg - SYM이 매우 중요한 도구이며, 아래를 참조하십시오.
- lmdbg-누출 lmdbg - 실행 및 출력 발견 된 모든 메모리 누수에 의해 생성 된 로그 파일을 분석
예 :
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ lmdbg-누출 _log & NBSP; & NBSP;
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (0xbb901c00, 888) -> 0xbb901800
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x804877a
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 의 malloc (555) -> 0xbb901400
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5b03
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048738
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $
- lmdbg - SYM은 source.c에 주소를 변환 : 999 가능한 경우
예 (GDB는 (1) 액션에) :
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ lmdbg - SYM ./_test2 _log
& NBSP; & NBSP; & nbsp; & nbsp; 확인 의 malloc (555) -> 0xbb901400
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5b03
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048738 & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 8 주
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (NULL, 666) -> 0xbb901800
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x804874e & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 9 주
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (0xbb901800, 777) -> 0xbb901c00
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048764 & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 10 & NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 주요
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (0xbb901c00, 888) -> 0xbb901800
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x804877a & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 11 & NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 주요
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $
예 (은 addr2line (1) 여기서 일) :
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ lmdbg - SYM -a ./_test2 _log
& NBSP; & NBSP; & nbsp; & nbsp; 확인 의 malloc (555) -> 0xbb901400
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5b03
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048738 & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (NULL, 666) -> 0xbb901800
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x804874e & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 9
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (0xbb901800, 777) -> 0xbb901c00
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048764 & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 10
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (0xbb901c00, 888) -> 0xbb901800
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x804877a & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 11
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $
- lmdbg-sysleaks - greps 또는 건너 뛰기 시스템 메모리 누수는 C ++ STL 등의 libc, libdl, 테스트 / lmdbg *의 .conf 파일을 참조하십시오에서 발견. 기본 설정 파일은 다음과 같습니다 ~ / .lmdbg.conf 및 /etc/lmdbg.conf
- lmdbg = lmdbg - 실행 + lmdbg-누출 + lmdbg-SYM + lmdbg-sysleaks
즉 lmdbg 모든 -에 - 하나의 높은 수준의 도구입니다.
예 :
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ lmdbg -v -o _log ./_test2
& NBSP; & NBSP; & nbsp; & nbsp; 확인 메모리 누수가 파일을 검출하고 저장된 '_log'
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $ 고양이 _log
& NBSP; & NBSP; & nbsp; & nbsp; 확인 realloc을 (0xbb901c00, 888) -> 0xbb901800
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5a37
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x804877a & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 11 & NBSP; & NBSP; & nbsp; & nbsp; 확인 & NBSP; & nbsp; & nbsp; 확인 주요
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 의 malloc (555) -> 0xbb901400
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe58e8
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0xbbbe5b03
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048738 & NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 테스트 / test2.c : 8 주
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x8048584
& NBSP; & NBSP; & NBSP; & nbsp; & nbsp; 확인 0x80484e7
& NBSP; & NBSP; & nbsp; & nbsp; 확인 $

이 릴리스의 새로운 기능입니다 :

이 lmdbg-SYM 더 이상 세그먼테이션 폴트 (segfault)로 인해 스택 트레이스와 문제 (3).
훨씬 더 간단하고 정확한 주소 변환 방법을 첨가 하였다.
때문에 GDB에 대한 최적화에 상당한 속도 향상이 있었다.
lmdbg - 실행에서 GLIBC의 malloc에​​ 후크가 더 이상 사용되지 않습니다.
lmdbg 자신의 코드가 스택 추적에 포함되지 않습니다.
새로운 -N 옵션을 첨가하고, -v 옵션 사소한 수정을 받았다.
lmdbg-STAT는 무료 (3)과 realloc (3) 스택 트레이스가 적절한의 malloc / realloc을 (3) 스택 트레이스 선수 경우 등장 NULL 역 참조에 대한 수정을 받았다.
다른 작은 수정 및 개선, 회귀 테스트의 개선, 그리고 스택 트레이스 (3)의 개선이 있었다.

1.1.0 버전의 새로운 기능 : 회귀 테스트에서

이 수정.
lmdbg - 실행 : 제로 주소의 glibc의 가방 (3)에 의해 생성 된 스택 추적에서 제거됩니다.
이 수정은 lmdbg-STAT (1)에서 주장한다.
더블 & quot; 0x로 & quot; 정보 섹션 명세서 및 첨부 된 청구의 범위에서 quot의 문제; 고정 된 (NetBSD의 볼).
역 추적 (3) libexecinfo에서 (사용 가능한 경우) 대신 내장 구현 사용됩니다.
lmdbg-SYM : 몇 가지 버그가 심볼 주소 변환에서 수정되었습니다.
lmdbg-STAT는 : 불완전 읽기 라인은 지금 무시, 그래서 더 이상 거기에 디버깅중인 응용 프로그램이 살해 될 때 (3)이야 주장한다.
AWK 작성된 다른 구현을 제거 하였다.

이 버전 0.17.0의 새로운 기능 :

이 버전은 개선 및 수정 사항 매뉴얼 페이지에서, lmdbg의 새로운 기능, lmdbg-실행하고 lmdbg - SYM 많이 추가 사소한 수정 lmdbg-STAT을합니다.
lmdbg 지금 바로 메모리 누수를 찾을 수 없습니다, 더 많은 일을 할 수있는 메타 도구입니다.

이 버전 0.15.1의 새로운 기능 :

은 calloc의 로깅 (3) 호출이 glibc에 기반 시스템 (리눅스, GNU / kFreeBSD, 아마 등)로 인해 비활성화되어 lmdbg - 빨리 그들에 실패합니다.
마이너 클린 업, 수정 및 개선. MK-구성된다 = 0.20 구축이 필요합니다.

이 버전 0.14.0의 새로운 기능 :

이 새로운 도구 : lmdbg-STAT, lmdbg-그렙 및 수집 및 메모리 할당에 대한 통계 정보를 분석 lmdbg-종류.
lmdbg - 실행 : 단축 스택 추적을 생성 -S와 -M : 새로운 lmdbg - 실행 옵션.
lmdbg-SYM : lmdbg - 실행의 출력에서​​ 프로그램 이름을 얻기위한 새로운 옵션 -p.
해결 : 'mkcmake 테스트는'임시 파일을 제거합니다.

유사한 소프트웨어

TOra
TOra

2 Jun 15

BuGLe
BuGLe

17 Feb 15

gDEBugger
gDEBugger

2 Jun 15

Fiddler for Mono
Fiddler for Mono

17 Feb 15

개발자의 기타 소프트웨어 Aleksey Cheusov

paexec
paexec

20 Feb 15

mk-configure
mk-configure

20 Feb 15

runawk
runawk

19 Feb 15

코멘트 LMDBG

댓글을 찾을 수 없습니다
코멘트를 추가
이미지를 켜십시오!