Pergunta

No Linux, FreeBSD e outros sistemas que eu valgrind para verificar se há erros de memória como inválido lê e similar. Eu realmente amo valgrind. Agora tenho de código de teste no Solaris / OpenSolaris e não pode encontrar uma maneira de obter informações sobre inválido lê / escreve em um de maneira agradável (ou melhor ;-)) como valgrind lá.

Ao procurar por isso nos Acho referências líquidas para libumem , mas eu obter apenas relatórios sobre vazamentos de memória lá, não acesso inválido. O que eu estou ausente?

Foi útil?

Solução

O dbx incluído com os compiladores do Sun Studio inclui acesso a verificação de memória de apoio em sua "Run Time Verificação" característica (o subcomando check). Veja:

O relacionados "Sun memória de erros Discovery Tool" também está disponível Erro http://cooltools.sunsource.net/ Descubra /

Outras dicas

watchmalloc é um biblioteca bastante útil que pode ser carregado dinamicamente para o seu programa (geralmente sem necessidade de recompilação) e em seguida, define watchpoints em todos os locais de memória geralmente problemáticas, como espaços libertos ou após um bloco de memória alocada. Se o seu programa acessa uma dessas áreas inválidos que recebe um sinal e você pode inspecioná-lo no depurador.

Dependendo da configuração áreas problemáticas podem ser vistos para gravações somente, ou também para lê.

Desde a versão 3.11.0, Valgrind é executado em Solaris. Consulte Release Notes e Plataformas suportadas .

Mais precisamente, x86 / Solaris e amd64 / Solaris é agora suportado. Suporte para SPARC / Solaris ainda está em obras.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top