LMDBG

Programinė įranga Screenshot:
LMDBG
Programinė detalės:
Versija: 1.2.0
Įkėlimo datą: 20 Feb 15
Kūrėjas: Aleksey Cheusov
Licencija: Nemokamai
Populiarumas: 16

Rating: nan/5 (Total Votes: 0)

LMDBG yra programa, kuri leidžia aptikti atminties leaksand dviviečiai išlaisvina & nbsp;. Tačiau, skirtingai nuo kitų, LMDBG generuoja * PILNAS * stacktracesand atskiria prisijungti iš analizės thusallowing analizuoti įtakos vienam modulyje taikymą.
- lmdbg-Run " yra pagrindinė lmdbg naudingumas. Jis veikia paraišką ir sukuria failą (ar FIFO) jeigu visi vadinamas malloc / calloc / realloc / nemokamai / memalign / posix_memalign Modły yra registruoti jų indėlį (baitų skaičius, žymeklis), produkcijos (žymeklis) ir (!!! unikalių funkcija !!!) PILNAS stacktrace (rodyklės).
Pavyzdys:
& Nbsp; & nbsp; & nbsp; & nbsp; $ Cat testai / test2.c
& Nbsp; & nbsp; & nbsp; & nbsp; #include
& Nbsp; & nbsp; & nbsp; & nbsp; int main ()
& Nbsp; & nbsp; & nbsp; & nbsp; {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; negaliojančiu * p1 = NULL;
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; negaliojančiu * 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; grįžti 0;
& Nbsp; & nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; & nbsp; $ Gcc -O0 -g -o _test2 testai / test2.c
& Nbsp; & nbsp; & nbsp; & nbsp; $ Lmdbg-run -o _log ./_test2
& Nbsp; & nbsp; & nbsp; & nbsp; $ Katė _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; $
Pastaba: Visas stacktrace leidžia jums analizuoti savo paraišką, ty galite aptikti ką blokai / Komponentai reikalauja daugiau atminties nei kiti, ir kodėl. lmdbg-SYM yra labai svarbi priemonė, už tai, žr.
- lmdbg-nuotėkis , analizuoja failą generuoja lmdbg perspektyvoje ir išvesties visos surastos atminties nutekėjimas
Pavyzdys:
& Nbsp; & nbsp; & nbsp; & nbsp; $ lmdbg-nutekėjimas _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 , konvertuoja adresus source.c: 999, jei tai įmanoma
Pavyzdys (gdb (1) yra veiksmo):
& 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; testai / test2.c: 8 Pagrindinis
& 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; testai / test2.c: 9 Pagrindinis
& 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; testai / test2.c: 10 & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; pagrindinis
& 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; testai / test2.c: 11 & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; pagrindinis
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x8048584
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x80484e7
& Nbsp; & nbsp; & nbsp; & nbsp; $
Pavyzdys (addr2line (1) čia dirba):
& 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; testai / 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; testai / 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; testai / 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; testai / test2.c: 11
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x8048584
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x80484e7
& Nbsp; & nbsp; & nbsp; & nbsp; $
- lmdbg-sysleaks - greps ar praleidžia sistemos Atminties nutekėjimas rasti libc, libdl C ++ stl ir tt Žr testų / lmdbg * .conf failus. Numatytieji konfigūracijos failai: ~ / .lmdbg.conf ir /etc/lmdbg.conf
- lmdbg = lmdbg-Run + lmdbg-nutekėjimas + lmdbg-Sym + lmdbg-sysleaks
Tai lmdbg yra All-in-One "aukštesnio lygio įrankis.
Pavyzdys:
& Nbsp; & nbsp; & nbsp; & nbsp; $ Lmdbg -v -o _log ./_test2
& Nbsp; & nbsp; & nbsp; & nbsp; Atminties nutekėjimas buvo aptikta ir išsaugoti į failą "_log"
& Nbsp; & nbsp; & nbsp; & nbsp; $ Katė _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; testai / test2.c: 11 & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; pagrindinis
& 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; testai / test2.c: 8 Pagrindinis
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x8048584
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x80484e7
& Nbsp; & nbsp; & nbsp; & nbsp; $

Kas naujo , šioje laidoje:

  • lmdbg-SYM nebėra segfaults dėl problemų su stacktrace (3).
  • daug paprastesnis ir teisinga adresas konversijos metodas buvo pridėta.
  • Nebuvo reikšmingų speedups dėl optimizavimu gdb.
  • Be lmdbg perspektyvoje, glibc malloc kabliukai nebenaudojami.
  • lmdbg savo kodas nėra įtrauktas į stacktraces.
  • Naujas -N galimybė buvo įtraukta ir -v variantas gavo nedidelį pakeitimą.
  • lmdbg-stat gavo pataisymai NULL dereference, kad pasirodė, jei nemokamai (3) arba realloc (3) stacktrace buvo be tinkamo malloc / realloc (3) stacktrace.
  • Nebuvo kitų nedidelių pataisymų ir patobulinimų, patobulinimai regresijos bandymų ir patobulinimai stacktrace (3).

Kas naujo versijos 1.1.0:.

  • pagal regresijos bandymų nustatyti
  • lmdbg-run: nulis adresai pašalinami iš stacktraces generuojamų glibc anketa pėdsakas (3)
  • .
  • Tai nustato tvirtina, lmdbg-Stat (1).
  • Dvivietis & quot; 0x & quot; klausimai & quot; informacijos skyriuje & quot; buvo fiksuotas (matyti NetBSD).
  • pėdsakas (3) nuo libexecinfo (jei yra) naudojamas vietoj built-in įgyvendinti.
  • lmdbg-Sym:. Keletas klaidų buvo nustatyta konvertavimo adresų simbolių
  • lmdbg-stat: nepilnai skaityti linijos dabar ignoruojami, todėl yra ne daugiau teigti (3) ai, kai prašymas gali būti debugged žūsta .
  • alternatyva įgyvendinimo parašyta awk buvo pašalintas.

Kas naujo versija 0.17.0:

  • Ši versija prideda patobulinimų ir pataisų daug į man puslapiai, nauji pajėgumai lmdbg, lmdbg perspektyvoje, ir lmdbg-SYM ir nedideli pataisymai ir lmdbg-stat.
  • lmdbg dabar meta įrankis, kuris gali padaryti daug daugiau dalykų, o ne tiesiog rasti Atminties nutekėjimas.

Kas naujo versija 0.15.1:

  • registravimas calloc (3) Modły išjungtas glibc paremtos sistemos (Linux GNU / kFreeBSD, o gal kiti), nes lmdbg-paleisti nepavyksta ant jų.
  • Nedideli švarios-ups, pataisymai ir patobulinimai. MK-configure & gt;. = 0,20 reikalingas pastato

Kas naujo versija 0.14.0:

  • Nauji įrankiai: lmdbg-stat, lmdbg-grep ir lmdbg rūšiuoti rinkti ir analizuoti statistinę informaciją apie atminties paskirstymą.
  • lmdbg-run: naujos galimybės lmdbg perspektyvoje:. -S -M Ir generuoti sutrumpintas stacktraces
  • lmdbg-Sym:. Nauja galimybė -p už programos pavadinimą gauti iš lmdbg paleisti produkcijos
  • nustatyti: "mkcmake testas" pašalina savo laikinuosius failus
  • .

Panaši programinė įranga

python-ptrace
python-ptrace

11 May 15

rpcpdb
rpcpdb

20 Feb 15

Accerciser
Accerciser

31 Oct 16

glibc-audit
glibc-audit

3 Jun 15

Kita programinė įranga kūrėjas Aleksey Cheusov

DictEm
DictEm

20 Feb 15

mk-configure
mk-configure

20 Feb 15

paexec
paexec

20 Feb 15

Komentarai LMDBG

Komentarai nerastas
Pridėti komentarą
Pasukite ant paveikslėlio!