DBGMEM

Tela Software:
DBGMEM
Detalhes de Software:
Versão: 1.9.2
Data de upload: 3 Jun 15
Revelador: Moser Michael
Licença: Livre
Popularidade: 80

Rating: nan/5 (Total Votes: 0)

Ele atualmente trabalha apenas para Linux. DBGMEM é liberado sob os termos da GNU Lesser General Public License
A ferramenta ajuda você a encontrar problemas como
& Nbsp; 1. vazamentos de memória
& Nbsp; 2. corrupção de memória heap
& Nbsp; 3. Uso indevido, ilegal argumento para funções da biblioteca padrão selecionados.
& Nbsp; 4. empilhar corrupção
& Nbsp; 5. Uso de memória heap libertados ou un-inicializado.
& Nbsp; 6. Permite que você estenda a ferramenta, verifique os argumentos de API adicional
A ferramenta substitui funções de alocação de memória GLIBC, memória e funções de manipulação de cadeia, a fim de adicionar suas características.
Não DBGMEM não requerem quaisquer alterações ao seu programa, mas você pode desejar alterar o seu programa, a fim de usar alguns recursos avançados.
DBGMEM é um depurador de memória de código aberto para programas em C e C ++ e é executado sob o sistema operacional Linux, e é distribuído sob a GNU Lesser General Public License. DBGMEM adiciona verificações de depuração para partes da biblioteca padrão de Glibc; ele é implementado como bibliotecas compartilhadas que são carregados no espaço de endereço do processo depurado.
Ferramentas
DBGMEM tem várias ferramentas de depuração de memória, cada um pode ser carregados no programa depurado; A ferramenta simples mantém o controle de todos os blocos de memória alocados, e adiciona informações de contabilidade, tais como a pilha no momento em que o bloco foi alocado, em um cabeçalho arena que precede o bloco de memória alocada; ele também adiciona uma palavra guarda antes e depois do bloco alocado; A ferramenta simples é melhor usado para a detecção de problemas de vazamento de memória; como o cabeçalho Arena podem ser corrompidos pelo programa que está sendo depurado. A verificação levou mantém todas as informações de manutenção livro da pilha em um arquivo de memória mapeada anônimo; isso faz com que a ferramenta mais robusta para suportar memória substituindo bugs. A ferramenta de verificação também adiciona capacidade de rapidamente procurar informações sobre qualquer bloco heap para um valor de ponteiro contido dentro desse bloco heap; a ferramenta de verificação acrescenta validação de parâmetros para string comum e funções de manipulação de memória e verifica a existência de possível esmagamento pilha por essas funções.
Modo de operação
Você pode executar a maioria dos programas com o depurador como é; a ferramenta não requer o programa depurado para ser ligado com quaisquer bibliotecas específicas; A ferramenta é uma biblioteca compartilhada que é carregada no espaço de endereços de um processo que é verificada por meio da técnica de injecção de DLL. O recurso LD_PRELOAD do vinculador dinâmico é usado para carregar as ferramentas biblioteca compartilhada em primeiro lugar, antes de qualquer outra biblioteca é carregada; alocação de memória e função de manipulação de cadeia são interceptadas e primeira chamada a partir da biblioteca de ferramentas; isso permite que a ferramenta para adicionar seus controlos. Durante a execução do processo depurado um relatório cru está escrito que é ainda processado após o término do processo depurado; o relatório aumentada acrescenta os nomes das funções simbólicas de empilhar traços contidos no relatório crua. O depurador Gdb é usado para ligar endereços numéricos em endereços simbólicos durante o processamento de relatório bruto

Recursos :.

  • vazamentos de memória ; isto aplica-se tanto a ferramenta de verificação e ferramentas simples. A ferramenta rastreia cada bloco de pilha alocada juntamente com rastreamento de pilha tomada no momento em que o bloco foi atribuída; adicionalmente, um tag inteiro é mantido com cada atribuição, este valor controla um período lógica / `geração 'que caracteriza o momento em que o bloco foi alocado. Um relatório desta informação é sempre produzido no processo de saída, ou quando solicitado pelo usuário. Esta informação ajuda a encontrar casos e as causas de vazamentos de memória.
  • O uso de memória heap não inicializado ou memória heap libertado; isto aplica-se tanto a ferramenta de verificação e ferramentas simples. A ferramenta define toda a memória recém-alocado ao valor de byte 0xDD e toda a memória livre para o valor byte 0xEE; A utilização destes valores geralmente leva a erros de programa, se esta área de memória contém um apontador, então dereferencing de um ponteiro com valor 0xDDDDDDDD vai levar a um acidente.
  • corrupção de memória Heap; isto aplica-se tanto a ferramenta de verificação e ferramentas simples. A ferramenta verifica para memória substitui e subscreve, colocando um prefixo e sufixo de memória em cada bloco de pilha; Se o valor do sufixo é mudado então uma pilha de sobrescrita / subscrever é detectado.
  • Isto aplica-se à "verificação ferramenta '' '' 'somente; Desvio de funções de manipulação de seqüência de glibc e cópia de memória / funções de movimentação de GLIBC; corrupção de pilha por essas funções verificados A ferramenta recebe uma primeira passagem em funções da biblioteca padrão comuns, é verificado que a função não irá substituir um bloco argumento pilha existente; ele também é verificado que a pilha do segmento de chamada não será corrompido.

O que é novo nesta versão:

  • fazer agora recebe variável de ambiente CFLAGS
  • construir dbgmem biblioteca com opção -ldl
  • biblioteca compartilhada é agora colocada em lib / $ diretório (uname -r), como glibc é casado com a versão do kernel.
  • correção compilação em alguns sistemas (configure etapa)
  • adicionar opção para executar script (-m - gerar pilha traça apenas para algumas gerações)

O que é novo na versão 1.9.1:

  • fazer script atualizado, ele agora tenta detectar necessária configurações construída; ainda não agora como fazer automake embora
  • erro de compilação no modo C para gcc 2.9.6 fixo; gcc ainda falha com erro interno no C ++ modo construída
  • acrescentou -g opção (desativar verificação para o emparelhamento de malloc / new / new [] e livre / delete / delete [] no modo C ++)

O que é novo na versão 1.7:

  • opção -F siga chamadas fork e exec (como no agregado fork / exec)
  • Agora imprime a linha do processo depurado de comando no cabeçalho do arquivo de relatório.
  • mapa de nome de arquivo inclui agora pid.
  • excluir arquivos de relatório matérias por padrão; há muitos deles;
  • todas as utilizações de sprintf alterado para snprintf

Programas semelhantes

otrace
otrace

20 Feb 15

KDbg
KDbg

14 Apr 15

pyrasite
pyrasite

14 Apr 15

Comentário para DBGMEM

Comentários não encontrado
Adicionar comentário
Ligue imagens!