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: 5.0/5 (Total Votes: 1)

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

MBW
MBW

18 Feb 15

pytrace
pytrace

20 Feb 15

Frosted
Frosted

17 Feb 15

Más szoftver fejlesztő Aleksey Cheusov

runawk
runawk

19 Feb 15

paexec
paexec

20 Feb 15

DictEm
DictEm

20 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!