Líbia

Líbia é uma implementação de Malloc que empolda o rastreamento de vazamentos por alocações de auditoria.
Baixe Agora

Líbia Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Freely Distributable
  • Preço:
  • FREE
  • Nome do editor:
  • Venkatesha Murthy G
  • Site do editor:
  • http://personal.pavanashree.org/libyama/

Líbia Tag


Líbia Descrição

Líbia é uma implementação de Malloc que empolda o rastreamento de vazamentos por alocações de auditoria. A Líbia é uma implementação de Malloc que empolda o rastreamento de vazamentos por alocações de auditoria, detecção de gravação de matriz ligada, detecção de acesso à memória livre, livre / realloc em ponteiros inválidos. Cresceu fora de uma tentativa de construir a detecção de substituição de array em vazamento, um tracker de vazamento que eu escrevi anteriormente.síjo vazamento executou apenas a manutenção de livros e não qualquer alocação, não foi possível fazer com que o VAKTRAC detectou a gravação de matriz, daí um alocador que faz ; E também rastreia vazamentos. Você pode pensar nisso como mesclar o vazamento e o código que foi inspirado pela ElectricFence. Se você só quiser rastrear vazamentos, então o vazamento é exatamente o que você precisa. Se você quiser um alocador que permita que você depure também, então Yama é o único para você. Claro, existem outras coisas semelhantes no bloco - e é por isso que esta é outra alocação de memória.Aqui são algumas características importantes de "Líbia": · Fornece vazamentos de Malloc, Calloc, RealLoc e livres · Faixas e relatórios · Detecta os acessos além de Memória · Detecta acessos à memória livre · Detecta livre em ponteiros não-malloc'ed, ponteiros nulos · Detecta RealLoc em ponteiros financeiros não-mallocatlation: Atualmente, o Yama é escrito para Linux X86. Você precisará de um kernel que forneça o Mmap etc e o GCC que possam construir bibliotecas compartilhadas Elf. Você também precisa instalar binutils, se você ainda não tiver (muito improvável) e precisará do sistema de arquivos / proc. Para instalar o Yama descompactar o makfile do arquivo; As únicas coisas que você precisa mudar são installdir e bt. Faça lib para fazer a instalação para instalar. Você precisará de permissão de gravação no Installdir.Você pode precisar executar o LDConfigusage: Yama contém libyama.so, uma biblioteca compartilhada instalada no InstallDir por Make Install. A biblioteca fornece malloc, calloc, realloc e livre que pode ser usado como substituições às suas implementações libc. Um programa pode ser vinculado ao Líbyama na linha de comando (-lyama). Uma maneira mais interessante de usar Líbyama seria pretamente usando o LD_Preload. A linha de comando ld_preload = libyama.so faria com que todas as chamadas para Malloc, Calloc, RealLoc e gratuitas se originem do programa sendo executada para serem tratadas pela implementação do Yama. Se Libyama.So não aparecer no LDConfig -P ou não está no seu LD_LIBRAY_PATH, você precisa especificar o comprimento total do caminho. Quando o programa erra, acessando a memória em um limite de array, isto é, além da memória alocada usando Malloc / Calloc / RealLoc, recebe um SigSEGV. Um acesso à memória livre também resulta em um SigSEGV. Se você compilou seu programa usando -g, você pode localizar a instrução ofensora usando qualquer depurador no arquivo principal. Note que sobrescreve em matrizes estaticamente alocadas não são detectadas por Yama. Se o programa peforms um livre ou realloc inválido, um "alerta!" A mensagem é escrita para Stderr, junto com a cadeia de chamadas até o livre / realloc. A chamada falha.UPon Terminação Normal do Programa, O THRO 'EXITAÇÃO OU RETORNE DE PRINCIPAIS, um resumo dos vazamentos é impresso em Stderr. O tamanho de cada pedaço de memória que permanece sem liberdade no final do programa é relatado, juntamente com a cadeia de chamada até a alocação. O comportamento de Yama em Malloc (ou Calloc (X, 0)) é controlado pela variável de ambiente AllowMallocalzero. Se esta variável for definida como valores = 2, Yama retorna um ponteiro válido e nenhum aviso é impresso. Escreve para este ponteiro também, falhará. Se AllowMallocalzero não estiver definido, o comportamento é idêntico ao AllowMalloczero = 0. O que há de novo nesta versão: · Corrigido um bug no código de retrocesso de pilha que falha líbia. Compile o controle de tempo do retrocesso (eu achei útil às vezes não ter rastreamento).


Líbia Software Relacionado

Canal

Channel é uma instalação genérica / simples com a finalidade de fazer passe de mensagem e despacho de eventos. ...

204

Download

DemOkritos.

Demokritos é uma implementação do servidor do Protocolo de Publicação Atom. ...

130

Download