LMDBG

Screenshot Λογισμικό:
LMDBG
Στοιχεία Λογισμικού:
Εκδοχή: 1.2.0
Ανεβάστε ημερομηνία: 20 Feb 15
Προγραμματιστής: Aleksey Cheusov
Άδεια: Δωρεάν
Δημοτικότητα: 68

Rating: 5.0/5 (Total Votes: 1)

LMDBG είναι μια εφαρμογή που επιτρέπει την ανίχνευση μνήμης leaksand διπλό ελευθερώνει & nbsp?. Ωστόσο, σε αντίθεση με άλλους, LMDBG παράγει * ΠΛΗΡΗΣ * stacktracesand χωρίζει την καταγραφή από την ανάλυση thusallowing να αναλύσει μια εφαρμογή στο ανά μονάδα βάσης.
- lmdbg-τρέξιμο είναι ένα κύριο πρόγραμμα lmdbg. Τρέχει αίτηση και δημιουργεί ένα αρχείο καταγραφής (ή FIFO), όπου όλοι καλούνται malloc / calloc / realloc / δωρεάν / memalign / posix_memalign επικλήσεις είναι εγγεγραμμένοι με την είσοδο τους (byte μετράνε, δείκτης), έξοδος (δείκτης) και (!!! uniques χαρακτηριστικό !!!) ΠΛΗΡΕΣ STACKTRACE (δείκτες).
Παράδειγμα:
& Nbsp? & Nbsp? & Nbsp? & Nbsp? Δοκιμές $ γάτα / 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 (Ρ2, 666)?
& Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? P2 = realloc (Ρ2, 777)?
& Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? P2 = realloc (Ρ2, 888)?
& Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? & Nbsp? return 0?
& Nbsp? & Nbsp? & Nbsp? & Nbsp? }
& Nbsp? & Nbsp? & Nbsp? & Nbsp? $ Gcc -g -o -O0 _test2 δοκιμές / test2.c
& Nbsp? & Nbsp? & Nbsp? & Nbsp? $ Lmdbg-τρέξιμο -o _Αρχείο καταγραφής ./_test2
& Nbsp? & Nbsp? & Nbsp? & Nbsp? $ Γάτα _Αρχείο καταγραφής
& 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? $
Σημείωση: Πλήρης stacktrace σας επιτρέπει να αναλύσει την αίτησή σας, δηλαδή μπορείτε να εντοπίσετε τι μπλοκ / εξαρτήματα απαιτούν περισσότερη μνήμη από τους άλλους και γιατί. lmdbg-SYM είναι ένα πολύ σημαντικό εργαλείο για αυτό, δείτε παρακάτω.
- lmdbg-διαρροές αναλύει ένα αρχείο καταγραφής που δημιουργούνται από lmdbg-τρέξιμο και εξόδου όσα βρεθούν διαρροές μνήμης
Παράδειγμα:
& Nbsp? & Nbsp? & Nbsp? & Nbsp? $ lmdbg-διαρροές _Αρχείο καταγραφής & 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 _Αρχείο καταγραφής
& 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 _Αρχείο καταγραφής
& 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 ή παραλείπει σύστημα διαρροές μνήμης βρέθηκε σε libc, libdl, C ++ STL κ.λπ. Βλέπε δοκιμές / lmdbg * .conf αρχεία. Τα αρχεία προεπιλεγμένων ρυθμίσεων είναι: ~ / .lmdbg.conf και /etc/lmdbg.conf
- lmdbg = lmdbg-τρέξιμο + lmdbg-διαρροές + lmdbg-SYM + lmdbg-sysleaks
Αυτό είναι lmdbg είναι υψηλότερο επίπεδο εργαλείο όλα-σε-ένα.
Παράδειγμα:
& Nbsp? & Nbsp? & Nbsp? & Nbsp? $ Lmdbg -v -o _Αρχείο καταγραφής ./_test2
& Nbsp? & Nbsp? & Nbsp? & Nbsp? Διαρροές μνήμης εντοπίστηκαν και αποθηκεύεται στο αρχείο "_Αρχείο καταγραφής»
& Nbsp? & Nbsp? & 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? δοκιμών / 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 πλέον segfaults λόγω προβλημάτων με stacktrace (3).
  • Μια πολύ απλούστερη και η σωστή μέθοδος μετατροπής διεύθυνση προστέθηκε.
  • Υπήρξαν σημαντικές βελτιώσεις στην ταχύτητα οφείλεται σε βελτιστοποιήσεις με τον GDB.
  • Σε lmdbg-τρέξιμο, glibc άγκιστρα malloc δεν χρησιμοποιούνται πλέον.
  • το δικό του κωδικό lmdbg δεν περιλαμβάνεται στο stacktraces.
  • Ένα νέο -Ν επιλογή προστέθηκε και η επιλογή -v έλαβε μια μικρή λύση.
  • lmdbg-STAT έλαβε διορθώσεις για ένα dereference NULL που εμφανίστηκε εάν μια δωρεάν (3) ή realloc (3) stacktrace ήταν χωρίς την κατάλληλη malloc / realloc (3) stacktrace.
  • Υπήρχαν και άλλες μικρές διορθώσεις και βελτιώσεις, οι βελτιώσεις στις δοκιμές παλινδρόμησης, καθώς και βελτιώσεις στην stacktrace (3).

Τι είναι καινούργιο στην έκδοση 1.1.0:.

  • Μια σταθερή σε δοκιμές παλινδρόμησης
  • lmdbg-τρέξιμο: Οι μηδενικές διευθύνσεις αφαιρούνται από stacktraces δημιουργούνται από backtrace glibc του (3)
  • .
  • Αυτή η έκδοση διορθώνει ισχυρίζεται σε lmdbg-stat (1).
  • Διπλή & quot? 0x & quot? θέματα στο & quot? πληροφορίες ενότητα & quot? καθορίστηκαν (δει στο NetBSD).
  • backtrace (3) από libexecinfo (αν υπάρχει) χρησιμοποιείται αντί της ενσωματωμένης εφαρμογής.
  • lmdbg-SYM:. Μερικά σφάλματα που καθορίζονται στην μετατροπή των διευθύνσεων στα σύμβολα
  • lmdbg-stat: ατελώς διαβάσει τις γραμμές τώρα αγνοούνται, οπότε εκεί δεν είναι τίποτα περισσότερο διεκδικούν (3) s όταν μια εφαρμογή που debugged σκοτώνεται
  • .
  • Μια εναλλακτική εφαρμογή γραμμένη σε awk αφαιρέθηκε.

Τι είναι καινούργιο στην έκδοση 0.17.0:

  • Αυτή η έκδοση προσθέτει πολλές βελτιώσεις και διορθώσεις σε σελίδες manual, νέες δυνατότητες σε lmdbg, lmdbg-τρέξιμο, και lmdbg-SYM, και μικρές διορθώσεις για lmdbg-stat.
  • lmdbg είναι τώρα μια μετα-εργαλείο, το οποίο είναι σε θέση να κάνει πολλά περισσότερα πράγματα, όχι απλά να βρείτε διαρροές μνήμης.

Τι είναι καινούργιο στην έκδοση 0.15.1:

  • Η καταγραφή της calloc (3) επικλήσεις είναι απενεργοποιημένη σε Συστήματα glibc-based (Linux, το GNU / kFreeBSD, και ίσως και άλλοι), γιατί lmdbg επιχείρηση αποτυγχάνει σε αυτούς.
  • Μικρά καθαρό-ups, διορθώσεις και βελτιώσεις. mk-Ρύθμιση & gt?. = 0,20 απαιτείται για την κατασκευή

Τι είναι καινούργιο στην έκδοση 0.14.0:

  • Νέα εργαλεία: lmdbg-stat, lmdbg-grep και lmdbg-ταξινόμησης για τη συλλογή και την ανάλυση των στατιστικών πληροφοριών σχετικά με τις κατανομές μνήμης.
  • lmdbg επιχείρηση: νέες δυνατότητες για lmdbg-τρέξιμο:. -S Και -Μ για τη δημιουργία μειωθεί stacktraces
  • lmdbg-SYM:. Νέα επιλογή-p για την απόκτηση όνομα του προγράμματος από την έξοδο lmdbg επιχείρηση του
  • fix: «δοκιμή mkcmake» καταργεί τα προσωρινά αρχεία του
  • .

Παρόμοια λογισμικά

PuDB
PuDB

20 Feb 15

ngrep
ngrep

2 Jun 15

VimPdb
VimPdb

11 May 15

Linaro GDB
Linaro GDB

20 Feb 15

Άλλο λογισμικό του προγραμματιστή Aleksey Cheusov

paexec
paexec

20 Feb 15

runawk
runawk

19 Feb 15

mk-configure
mk-configure

20 Feb 15

Σχόλια για LMDBG

Τα σχόλια δεν βρέθηκε
προσθήκη σχολίου
Ενεργοποιήστε τις εικόνες!