DBGMEM

Szoftver screenshot:
DBGMEM
Szoftver adatai:
Változat: 1.9.2
Feltöltés dátuma: 3 Jun 15
Fejlesztő: Moser Michael
Engedély: Ingyenes
Népszerűség: 21

Rating: nan/5 (Total Votes: 0)

Jelenleg dolgozik csak Linux. DBGMEM alatt kiadott GNU Lesser General Public License
Az eszköz segít megtalálni a problémákat, mint a
& Nbsp; 1. memóriavesztés
& Nbsp; 2. kupacmemóriája korrupció
& Nbsp; 3. A helytelen, illegális érv a kiválasztott szabvány könyvtári funkciókat.
& Nbsp; 4. verem a korrupció
& Nbsp; 5. Használja a felszabadult, vagy un-inicializált kupacmemóriája.
& Nbsp; 6. Lehetővé teszi, hogy kiterjeszti az eszközt, ellenőrizze a további API érveit
Az eszköz felülírja glibc memóriafoglalási funkciók, a memória és a húr képességeivel, hogy hozzá jellemzői.
DBGMEM nem igényel változtatásokat a programot, de érdemes lehet megváltoztatni a programot annak érdekében, hogy néhány fejlett funkciókat.
DBGMEM egy nyílt forráskódú memória debugger C és C ++ programok és fut a Linux operációs rendszer, és a GNU Lesser General Public License. DBGMEM hozzáteszi hibakeresés ellenőrzések részein a glibc standard könyvtár; megvalósítást a megosztott könyvtárakat, hogy betöltődnek a címtartomány a hibakeresés folyamat.

DBGMEM több memóriát hibakereső eszközök, egyes tölthető be a hibakeresést programot; Az egyszerű eszköz nyilvántartja a kiosztott memória blokkok, és hozzáteszi, könyvelési adatokat, mint például a verem, amikor a blokk osztottak, egy arénában fejléc, amely megelőzi a lefoglalt memória blokk; azt is hozzáteszi, egy őr szó előtt és után a kijelölt blokk; Az egyszerű eszköz a legjobb használt kimutatására memóriavesztés problémák; mint az arénában fejléc megsérülnek a program, amelyet a hibakeresést. Az ellenőrzés vette tartja az összes könyvviteli információk a veremből egy névtelen memórialeképezésesek file; Ezáltal a készülék erőteljesebb ellenállni memória felülírás hibákat. Az ellenőrzés eszköze is hozzáteszi, hogy gyorsan felnéz információ bármely kupac blokk egy pointer értéket szerepelnek abban az kupac blokk; Az ellenőrző eszköz hozzáteszi érvényesítése paraméterek közös húr és a memória képességeivel, és ellenőrzi a lehetséges verem szétzúzták az ezeket a funkciókat.
Üzemmód
Meg lehet futtatni a legtöbb program a debugger mint; Az eszköz nem igényel a hibakeresést program kapcsolódik semmilyen konkrét könyvtárak; Az eszköz egy megosztott könyvtár betöltődik a címtartomány egy olyan folyamat, amely segítségével ellenőrizhető a technika DLL Injection. A LD_PRELOAD jellemzője a dinamikus linker betöltéséhez használt eszközöket megosztott könyvtár első, mielőtt bármilyen más könyvtár betöltése; memória kiosztása és RSTART funkció elfogott és először az úgynevezett az eszköz könyvtár; ez lehetővé teszi az eszköz hozzá annak ellenőrzését. Futás közben a hibakeresés folyamat a nyers jelentést írt a további feldolgozásnak megszűnése után a hibakeresés folyamat; A kiegészített jelentést hozzáteszi szimbolikus funkciója neveket verem nyomait tartalmazza a nyers jelentést. GDB debugger használják viszont a numerikus címeket szimbolikus címeket további feldolgozás során a nyers jelentést.

Tulajdonságok :

  • memóriavesztés ; ez vonatkozik mind a ellenőrző eszköz és egyszerű eszközökkel. Az eszköz követi minden kiosztott halom blokk együtt stack trace venni akkor, amikor a blokk osztották; Továbbá egy egész szám kulcsszó tartjuk minden egyes allokációs, ez az érték pályák logikai időszak / `generációs", amely jellemzi az idő, amikor a blokk osztották. A jelentés ezen információk mindig termelt folyamat kilépési, vagy ha a felhasználó által kért. Ez az információ segít megtalálni a példányok és okainak memóriavesztés.
  • használata nem törlődnek kupacmemóriája vagy felszabadított kupacmemóriája; ez vonatkozik mind a ellenőrző eszköz és egyszerű eszközökkel. Az eszköz meghatározza az összes újonnan lefoglalt memória byte értéke 0xDD és minden felszabadított memóriát, hogy bájtérték 0xEE; használata ezeket az értékeket általában vezet programozni hibák, ha ez a memória terület tartalmaz egy mutatót, majd dereferencing egy pointer értéket 0xDDDDDDDD vezet az összeomlás.
  • halom memória korrupció; ez vonatkozik mind a ellenőrző eszköz és egyszerű eszközökkel. Az eszköz ellenőrzi a memóriát felülírja és köt azáltal, hogy a memória előtag és az utótag minden kupac blokk; ha az érték az utótag megváltozik majd egy halom felülírás / elvállalja észlel.
  • Ez vonatkozik a '' 'ellenőrző eszköz' '' csak; Visszaélés a húr képességeivel glibc és memória másolás / áthelyezés funkciót glibc; verem a korrupció azok ellenőrzött funkciók Az eszköz kap egy első lépés a közös szabvány könyvtári funkciót, ellenőrizzük, hogy a funkció nem írja felül a meglévő érv kupac blokk; azt is ellenőrizte, hogy a köteg a hívó szál nem sérült.

Mi az új ebben a kiadásban:

  • hogy most jelentkeznek CFLAGS környezeti változó
  • építeni dbgmem könyvtár -ldl lehetőség
  • megosztott könyvtár ma helyezik lib / $ (uname -r) könyvtár, a glibc felesége a kernel verziója.
  • fix összeállítás egyes rendszerek (configure lépés)
  • opció hozzáadása fut script (-m - generál stack nyomok csak néhány generáció)

Mi az új verzióban 1.9.1:

  • hogy script frissítve, most megpróbálja felismerni szükséges épített beállításokat; Még mindig nem most, hogyan kell csinálni automake bár
  • fordítási hibát C módban a gcc 2.9.6 rögzített; gcc mindig összeomlik belső hibája C ++ mód beépített
  • hozzáadott választás -g (tiltsa csekket párosítás a malloc / new / new [] és ingyenes / Törlés / [] C ++ módban)

Mi az új a 1.7-es verzió:

  • hozzáadott -f kövesse villa és exec hívások (mint a villa / exec)
  • Most kiírja a parancssorban a hibakeresés folyamat fejlécében jelentést fájlt.
  • map fájl neve már tartalmazza a pid.
  • törölni nyers jelentést fájlok alapértelmezés szerint; túl sok közülük;
  • minden felhasználási sprintf változott snprintf

Hasonló program

UpStare
UpStare

20 Feb 15

rpdb
rpdb

14 Apr 15

gDEBugger
gDEBugger

2 Jun 15

interruptingcow
interruptingcow

14 Apr 15

Hozzászólások a DBGMEM

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