A pilha de chamadas é o componente de estrutura de dados de um programa de computador que mantém o controle de todas as sub-rotinas em execução. Uma sub-rotina é uma parte de um pedaço maior de software que executa uma tarefa altamente especializada . Sub-rotinas eventualmente concluir a sua tarefa , e que pilha de chamadas mantém o controle de sub-rotinas que terminar e quais ainda estão ativos. Usando o Gnu Debugger ( GDB) , você pode ver a pilha de chamadas para um programa em execução. Isso é útil para quando o programa tem um bug , e você precisa ir mais fundo no ambiente de tempo de execução para ver o que está acontecendo de errado . Coisas que você precisa
Linux Computador com gdb instalado
Show Mais instruções
1
Comece " gdb " para o programa que você deseja ver a pilha de chamadas de . Por exemplo, para iniciar a depuração do programa " exemplo ", você deve digitar o seguinte no prompt de comando do Linux:
gdb exemplo
2
Execute um rastreamento sobre o programa. Isso exibe uma lista de chamadas de funções ativas na linha do programa. Esta é a pilha de chamadas , mas não há mais você pode fazer do que apenas vê-lo . Digite o seguinte para iniciar o backtrace :
backtrace
3
Observe a lista de chamadas de funções ativas. Cada um é precedido pelo sinal de libra "#" e um número. Você pode acessar seus quadros de pilha através deste número.
4
Observe o quadro de pilha de uma chamada de função ativa. Por exemplo, para ver o quadro de pilha para a função chamada de 3 , escreva o seguinte :
frame 3
5
Lista de todas as informações contidas neste quadro. Isso lhe dá informações sobre a sub-rotina , o que pode ajudá-lo a depurar o programa .