DBGMEM

Screenshot Software:
DBGMEM
Mga detalye ng Software:
Bersyon: 1.9.2
I-upload ang petsa: 3 Jun 15
Nag-develop: Moser Michael
Lisensya: Libre
Katanyagan: 21

Rating: nan/5 (Total Votes: 0)

Ito ay kasalukuyang gumagana para sa Linux lamang. DBGMEM ay inilabas sa ilalim ng mga tuntunin ng GNU Lesser General Public License
Tumutulong sa iyo na tool upang mahanap ang mga problema tulad ng
& Nbsp; 1. memory leaks
& Nbsp; 2. magbunton memory katiwalian
& Nbsp; 3. Maling paggamit, illegal argument sa napiling standard na function library.
& Nbsp; 4. stack ang katiwalian
& Nbsp; 5. Paggamit ng mga napalaya o un-initialize magbunton memory.
& Nbsp; 6. Nagbibigay-daan sa iyo upang pahabain ang tool, i-check arguments karagdagang API
Sinasapawan tool glibc memory function laang-gugulin, memory at string manipulasyon function upang magdagdag ng mga tampok nito.
DBGMEM ay hindi nangangailangan ng anumang mga pagbabago sa iyong mga programa, kahit na maaaring nais mong baguhin ang iyong mga programa upang gamitin ang ilang mga advanced na mga tampok.
DBGMEM ay isang open source memory debugger para sa C at C ++ programs at nagpapatakbo ng sa ilalim ng Linux operating system, at ito ay inilabas sa ilalim ng GNU Lesser General Public License. Nagdadagdag DBGMEM tseke debugging sa mga bahagi ng mga Glibc standard library; ito ay ipinatupad ng mga shared na mga aklatan na naka-load sa address space ng proseso debugged.
Tools
DBGMEM ay may ilang mga debugging tools memory, ang bawat isa ay maaaring load sa debugged program; Ang Simple tool Sinusubaybayan ng lahat ilalaan bloke ng memorya, at nagdadagdag ng impormasyong libro-iingat, tulad ng stack sa oras kapag ang mga bloke ay inilalaan, sa isang arena header na precedes ang inilalaan memory block; ito rin ay nagdadagdag ng isang bantay salita bago at matapos ang inilalaan block; Ang simpleng tool ay pinakamahusay na ginagamit para sa pagtuklas ng mga problema sa memory tumagas; bilang ang header arena maaaring makakuha ng masama sa pamamagitan ng programa na ay debugged. Ang pagsuri kinuha mapigil ang lahat ng mga impormasyon ng libro-iingat off ang stack sa isang hindi nagpapakilala Memory-nakamapang file; ito ay gumagawa ng mas mahusay na mga tool upang mapaglabanan memory patungan bugs. Ang checking tool din nagdadagdag ng kakayahan upang mabilis na maghanap ng impormasyon sa anumang magbunton block para sa isang halaga pointer na nilalaman sa loob na magbunton block; ang kasangkapan checking nagdadagdag validation ng mga parameter sa mga karaniwang string at manipulasyon memory function, at mga tseke para sa mga posibleng stack mapanira sa pamamagitan ng mga pag-andar.
Mode ng operasyon
Maaari kang magpatakbo ng karamihan sa mga programang sa debugger bilang ay; ay hindi nangangailangan ng debugged program ang tool upang ma-link sa anumang mga tiyak na aklatan; Ang tool ay isang shared library na ikinakarga sa address na espasyo ng isang proseso na ay naka-check sa pamamagitan ng mga pamamaraan ng DLL iniksyon. Ang LD_PRELOAD tampok ng Dynamic linker ay ginagamit upang i-load ang mga kasangkapan unang ibinahaging library, bago ng anumang iba pang mga library ay puno na; memory laang-gugulin at string manipulasyon function ay intercepted at unang tinawag mula sa tool library; Mga nagbibigay-daan sa ang tool upang magdagdag ng mga tseke nito. Sa panahon ng runtime ng proseso debugged isang raw na ulat ay nakasulat kung saan ay karagdagang-proseso matapos ang pagwawakas ng proseso debugged; ang pinalaking ulat nagdadagdag symbolic pangalan ng function na stack bakas na nakapaloob sa mga raw na ulat. Ang GDB debugger ay ginagamit upang buksan numeric addresses sa symbolic addresses sa panahon karagdagang pagproseso ng raw na ulat

Features .

  • memory leaks ; ito ay sumasaklaw sa parehong mga checking tool at simpleng kasangkapan. Ang tool ay sumusubaybay sa bawat inilalaan magbunton block kasama na kinuha sa panahon kapag ang mga bloke ay inilalaan stack trace; Karagdagan isang integer tag ay iningatan sa bawat paglalaan, ang halaga na sumusubaybay sa isang lohikal na panahon / `henerasyon 'na characterizes ang oras kapag ang mga bloke ay inilalaan. Ang isang ulat ng impormasyong ito ay palaging ginawa sa prosesong exit, o kapag hiniling ng user. Nakakatulong ang impormasyong ito upang mahanap ang mga pagkakataon at dahilan ng memory leaks.
  • Ang paggamit ng mga hindi initialize magbunton memorya o napalaya magbunton memorya; ito ay sumasaklaw sa parehong mga checking tool at simpleng kasangkapan. Ang tool ay nagtatakda ng lahat bagong inilalaan memory sa byte halaga 0xDD at lahat napalaya memorya upang byte halaga 0xEE; paggamit ng mga halagang ito ay kadalasang humahantong sa mga error sa programa, kung ang lugar na ito memory ay naglalaman ng isang pointer, pagkatapos dereferencing ng isang pointer sa halaga 0xDDDDDDDD ay humahantong sa isang crash.
  • magbunton memory katiwalian; ito ay sumasaklaw sa parehong mga checking tool at simpleng kasangkapan. Ang mga tseke na tool para sa memory overwrites at underwrites pamamagitan ng paglalagay ng prefix na memorya at suffix sa bawat bloke magbunton; kung ang halaga ng mga panlapi ay pagkatapos ay nagbago ng isang magbunton patungan / arian ay nakita.
  • Ito ay sumasaklaw sa mga '' 'checking tool' '' lamang; Maling paggamit ng mga string manipulasyon function ng glibc at memory kopyahin / ilipat function ng glibc; stack ang katiwalian sa pamamagitan ng mga naka-check function tool ay makakakuha ng isang unang pumasa sa mga karaniwang standard library function, ito ay naka-check na ang function ay hindi papatungan ng isang umiiral na bloke argument magbunton; ito ay naka-check din na ang mga stack ng thread na pagtawag ay hindi maaaring masira.

Ano ang bago sa release na ito:

  • gumawa ngayon ay makakakuha CFLAGS environment variable
  • bumuo dbgmem library na may -ldl option
  • shared library ay nakalagay ngayon sa lib / $ (uname-r) na direktoryo, pati na glibc ay kasal sa bersyon kernel.
  • fix compilation sa ilang mga sistema (hakbang configure)
  • magdagdag ng opsyon na tumakbo script (m - bumuo ng stack bakas lamang para sa ilang henerasyon)

Ano ang bago sa bersyon 1.9.1:

  • gumawa update script, sumusubok na ito ngayon upang tuklasin ang kinakailangan built settings; hindi pa rin ngayon kung paano gawin automake kahit
  • compilation error sa C mode para gcc 2.9.6 nakatakda; gcc-crash pa rin na may panloob na error sa C ++ built mode
  • idinagdag opsyon g (huwag paganahin tseke para sa pagpapares ng malloc / bagong / bagong [] at libre / tanggalin / tanggalin [] sa C ++ mode)

Ano ang bago sa bersyon 1.7:

  • idinagdag opsyon -F sundin tinidor at exec tawag (tulad ng sa tinidor / exec)
  • kopya ngayon ang command line ng proseso debugged sa header ng ulat na file.
  • file name map ngayon kasama pid.
  • tanggalin raw file ulat sa pamamagitan ng default; may masyadong maraming ng mga ito;
  • sa lahat ng gumagamit ng sprintf nagbago na snprintf

Katulad na software

Electric Fence
Electric Fence

3 Jun 15

PyChecker
PyChecker

11 May 15

BuGLe
BuGLe

17 Feb 15

Mga komento sa DBGMEM

Mga Komento hindi natagpuan
Magdagdag ng komento
I-sa mga imahe!