Conosco strace e ltrace, ma questo mi dice solo quali chiamate di sistema e chiamate di libreria vengono eseguite rispettivamente da un processo. Vorrei sapere esattamente quali istruzioni sta eseguendo un processo. O assemblaggio o una sorta di via di mezzo tra C e assemblaggio, se possibile. Supponendo che il binario non sia stato compilato con simboli di debug, quindi inclinarsi verso la prima opzione come più probabile.
Caso d'uso: il processo sembra essere bloccato, nessun output da strace o ltrace. Determina se il processo sta facendo "qualcosa". Mi rendo conto che potrebbe essere difficile da determinare, poiché immagino che ciò sia analogo alla soluzione del problema di arresto. Tuttavia, potrebbe essere possibile raccogliere dati utili.
Secondo caso d'uso: curiosità. Sarebbe interessante scaricare l'intero elenco di istruzioni di assemblaggio in un elenco di testo.
La mia ipotesi è che posso usare gdb per fare questo, ma non so come, poiché si tratta meno del debug di un programma che ho scritto e di più sull'uso di gdb per verificare lo stato di un processo in esecuzione.
Il sistema operativo è CentOS 6.
gdb
oddd
. Anche in assembly e senza simboli di debug.