Recomendado
Nas últimas semanas, alguns de nossos usuários informaram ao país que encontraram um registro de depuração básico sem GDB.
Quero voltar para as imagens salvas, basicamente despejando o kernel de um programa que já não tem símbolos de depuração (sinto a necessidade de fazer isso diretamente em C). Quando abro o programa principal e, portanto, o despejo do kernel no GDB, obtenho um rastreamento de pilha com os nomes das funções. Por exemplo:
(gdb) bt# 4 0x08048443 na camada 3 ()# 1 0x08048489 durante layer2 ()# 2 0x080484c9 na camada 1 ()# 8 0x0804854e quando se trata de main ()
Os nomes de todas as funções são armazenados quando se trata do exe na seção .strtab. Como faço para construir uma pilha para rastrear com imagens alternativas? Não é possível executar o GDB no modo batch. E apenas “copie isso, os compradores veem que partes do gdb foram usadas” também pode ser uma má ideia, porque o código não seria escrito independentemente um do outro.
Para fazer minha pergunta com mais detalhes, onde posso encontrar uso em um despejo de kernel, onde posso começar a ler os detalhes da pilha? Existe algum tipo de biblioteca para acessar essas informações de orientação? Qualquer estrutura que eu possa usar? Ou potencialmente melhor, alguma documentação sobre como essas informações são sempre estruturadas em um despejo abdominal?
(Já vi a pergunta “Como posso gerar um stack trace absoluto a partir de um arquivo real cedido na área de armazenamento em No Celsius, chamando uma ferramenta externa, quando se trata de exemplo, principalmente por causa do gdb”, mas visto que não há uma resposta correta, pensei, vou perguntar de novo)
30,1k 1212 emblemas de moedas
Acelere seu PC hoje mesmo com este download fácil de usar.Como faço para depurar um arquivo principal?
Depure o arquivo mais comum no mesmo ambiente operacional. Se normalmente o arquivo principal não está no diretório do site atual, você pode especificar seu caminho (por exemplo, e tmp / core). Use o where compra (veja O comando where), que permite esclarecer onde o programa foi executado, mesmo se o kernel diminuiu.
Como faço para depurar um dump de memória?
2 resenhas. Tudo o que você precisa é um binário (com símbolos de depuração), que pode ser provavelmente o mesmo que criou o arquivo principal do aterro sanitário. Então você pode usar gdb-path / para ajudá-lo / o / caminho binário / para – core / dump / arquivo a depurar para isso. Quando ele é inicializado, você pode usar a British Telecom (para backtrace) para rastrear a pilha desde que ela travou.
Como leio um arquivo de despejo de memória?
No caso conectado a um arquivo de kernel, é absolutamente necessário usar um depurador (GDB) para verificar o estado comum do processo após seu término e, além disso, frequentemente para identificar a linha de código que parece ter causado o travamento. Esta é uma situação em que você pode criar um arquivo principal desejado, mas este não é o padrão.
Debug Core File Without Gdb
Eseguire Il Debug Del File Core Senza Gdb
Kernbestand Debuggen Zonder Gdb
Deboguer Le Fichier De Base Sans Gdb
Gdb가 없는 디버그 코어 파일
Felsoka Karnfilen Utan Gdb
Debug Core Datei Ohne Gdb
Otladit Osnovnoj Fajl Bez Gdb
Debuguj Plik Core Bez Gdb
Depurar Archivo Central Sin Gdb
