LMDBG

Szoftver screenshot:
LMDBG
Szoftver adatai:
Változat: 1.2.0
Feltöltés dátuma: 20 Feb 15
Fejlesztő: Aleksey Cheusov
Engedély: Ingyenes
Népszerűség: 16

Rating: nan/5 (Total Votes: 0)

LMDBG egy olyan alkalmazás, amely lehetővé teszi kimutatására memória leaksand dupla felszabadítja. & Nbsp; Azonban, ellentétben másokkal, LMDBG generál * FULL * stacktracesand elválasztást naplózása elemzés thusallowing elemzi a kérelmet, a per-modul alapján.
- lmdbg-run egy fő lmdbg segédprogramot. Ez fut egy alkalmazás, és létrehoz egy log fájlt (vagy FIFO), ahol minden nevezett malloc / calloc / realloc / ingyen / memalign / posix_memalign könyörgések regisztrált a bemeneti (bájt, pointer), output (pointer) és (!!! uniques funkció !!!) FULL STACKTRACE (pointerek).
Például:
& Nbsp; & nbsp; & nbsp; & nbsp; $ Cat tesztek / test2.c
& Nbsp; & nbsp; & nbsp; & nbsp; #include
& Nbsp; & nbsp; & nbsp; & nbsp; int main ()
& Nbsp; & nbsp; & nbsp; & nbsp; {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; void * p1 = NULL;
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; void * 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; return 0;
& Nbsp; & nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; & nbsp; $ Gcc -O0 -g -o _test2 tesztek / test2.c
& Nbsp; & nbsp; & nbsp; & nbsp; $ Lmdbg-run -o _log ./_test2
& Nbsp; & nbsp; & nbsp; & nbsp; $ Cat _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; $
Megjegyzés: Teljes stacktrace lehetővé teszi, hogy elemezze az alkalmazás, vagyis képes lesz észlelni, milyen blokkok / komponensek több memóriát igényelnek, mint mások, és miért. lmdbg-SYM egy nagyon fontos eszköz erre, lásd alább.
- lmdbg-szivárgás elemzi a log fájl által generált lmdbg-run és kimeneti mind megtalálhatók a memóriavesztés
Példa:
& Nbsp; & nbsp; & nbsp; & nbsp; $ Lmdbg-szivárgás _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-szim alakítja címeket source.c: 999, ha ez lehetséges
Például (gdb (1) az akcióban):
& Nbsp; & nbsp; & nbsp; & nbsp; $ Lmdbg-szim ./_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; tesztek / test2.c: 8 fő
& 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; tesztek / test2.c: 9 fő
& 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; tesztek / test2.c: 10 & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; legfontosabb
& 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; tesztek / test2.c: 11 & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; legfontosabb
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x8048584
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x80484e7
& Nbsp; & nbsp; & nbsp; & nbsp; $
Például (addr2line (1) itt dolgozik):
& Nbsp; & nbsp; & nbsp; & nbsp; $ Lmdbg-szim -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; tesztek / 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; tesztek / 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; tesztek / 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; tesztek / test2.c: 11
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x8048584
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x80484e7
& Nbsp; & nbsp; & nbsp; & nbsp; $
- lmdbg-sysleaks - greps vagy kihagyja rendszer memória szivárgás találtak libc-, libdl, C ++ STL stb lásd Vizsgálatok / lmdbg * .conf fájlok. Az alapértelmezett config fájlok: ~ / .lmdbg.conf és /etc/lmdbg.conf
- lmdbg = lmdbg-run + lmdbg-szivárgás + lmdbg-SYM + lmdbg-sysleaks
Azaz lmdbg az all-in-one magasabb szintű eszköz.
Például:
& Nbsp; & nbsp; & nbsp; & nbsp; $ Lmdbg -v -o _log ./_test2
& Nbsp; & nbsp; & nbsp; & nbsp; Memória szivárgás észlelése és fájlba mentése "_log"
& Nbsp; & nbsp; & nbsp; & nbsp; $ Cat _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; tesztek / test2.c: 11 & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; legfontosabb
& 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; tesztek / test2.c: 8 fő
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x8048584
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 0x80484e7
& Nbsp; & nbsp; & nbsp; & nbsp; $

Mi az új ebben a kiadásban:

  • lmdbg-szim már nem lefagyásokra problémák miatt stacktrace (3).
  • Egy sokkal egyszerűbb és pontos címe átváltási módszert adtunk.
  • Nem volt jelentős sebességnövekedést miatt optimalizációknak gdb.
  • A lmdbg-run, glibc malloc horgok már nem használják.
  • lmdbg saját kódot nem tartalmazza stacktraces.
  • Egy új N opciót adták hozzá, és a -v kapott egy kisebb javítást.
  • lmdbg-stat kapott javítások egy NULL feloldási megjelent, ha a szabad (3) és realloc (3) stacktrace nélkül volt megfelelő malloc / realloc (3) stacktrace.
  • Voltak más kisebb javítások és fejlesztések, fejlesztések regressziós tesztek, valamint fejlesztések stacktrace (3).

Mi az új a 1.1.0 verzió:

  • A javítás a regressziós tesztek.
  • lmdbg-run: nulla címeket eltávolítják stacktraces által generált glibc visszakövetést (3).
  • Ez rögzíti azt állítja, a lmdbg-stat (1).
  • Double & quot; 0x & quot; kérdések a & quot; info & quot; rögzítették (látható NetBSD).
  • visszakövetést (3) a libexecinfo (ha van) helyett a beépített végrehajtását.
  • lmdbg-szim: néhány hibák kerültek rögzítésre átalakításából címeket szimbólumok.
  • lmdbg-stat: nem teljesen olvasható sorok most figyelmen kívül hagyja, így nincs több érvényesíteni (3) s amikor egy alkalmazás hibakeresést meghal.
  • Egy alternatív megvalósítás írt awk eltávolították.

Mi az új verzióban 0.17.0:

  • Ez a verzió hozzáteszi a sok fejlesztést és javításokon man oldalakat, új képességek lmdbg, lmdbg-run, és lmdbg-szim, és kisebb javításokat lmdbg-stat.
  • lmdbg most egy meta eszköz, amely képes arra, hogy nem sok minden mást is, nem csak megtalálni a memóriavesztés.

Mi az új verzióban 0.15.1:

  • naplózása calloc (3) könyörgések van tiltva glibc-alapú rendszerek (Linux, GNU / kFreeBSD, és talán mások), mert lmdbg-run nem rájuk.
  • Minor kármentesítés, javítások és fejlesztések. mk-configure & gt; = 0,20 szükséges épületet.

Mi az új verzióban 0.14.0:

  • Az új eszközök: lmdbg-stat, lmdbg-grep és lmdbg-sort összegyűjtésére és elemzésére statisztikai információkat memóriafoglalásban.
  • lmdbg-run: új lehetőségek lmdbg-run: -S és -M generáló rövidíteni stacktraces.
  • lmdbg-szim: új lehetőség -p megszerzéséhez műsor címét lmdbg-run kimenetét.
  • fix: "mkcmake teszt" eltávolítja a ideiglenes fájlokat.

Hasonló program

Kodos
Kodos

3 Jun 15

LDasm
LDasm

3 Jun 15

Profiler4j
Profiler4j

3 Jun 15

termdebug
termdebug

20 Feb 15

Más szoftver fejlesztő Aleksey Cheusov

DictEm
DictEm

20 Feb 15

runawk
runawk

19 Feb 15

mk-configure
mk-configure

20 Feb 15

Hozzászólások a LMDBG

Hozzászólás nem található
Megjegyzés hozzáadása
Kapcsolja be a képeket!