o que 'manipula o SIG33 nostop noprint' quando usado no gdb

0

No gdb, as instruções usuais para depuração são: -

gdb $package

set logging on

set pagination 0

handle SIG33 pass nostop noprint

run

e, claro, do que colecionar backtraces e tudo. Do acima, o que faz

handle SIG33 pass nostop noprint

e onde deve ser usado e onde não?

    
por shirish 16.07.2017 / 19:25

1 resposta

3
handle SIG33

informa ao gdb como lidar com o sinal 33; na versão que você dá, pass significa passar o sinal, nostop diz ao depurador para não parar quando o sinal é emitido, e noprint para não imprimir nada.

Esse tipo de diretiva é útil ao depurar tempos de execução que usam sinais internamente. O sinal 33 é usado no Android, pela Bionic (para back-traces); se você não ignorar, vai acabar parando o tempo todo. Você verá instruções semelhantes com o Flash (com os sinais 32 e 33 pelo menos, IIRC).

    
por 16.07.2017 / 20:00