È menzionato in http://sourceware.org/ml/gdb/2007-06/msg00360.html prima.
Ma nessuno sembrava aver effettivamente implementato questo tipo di idea.
Esistono ostacoli per la realizzazione di questo?Qualcuno sa se qualcuno ha integrato libsegfault.so e gdbserver al fine di ottenere gdb collegato al volo ad un programma bloccato?
miei requisiti sono i seguenti: (. Es utilizzando LD_PRELOAD)
- Essere in grado di plugin per qualsiasi binario eseguibile elfo
- Il binario può essere un multithreading eseguibile
- Il binario può collegare a una libreria che contiene la funzione principale
- Questo dovrebbe funzionare in varie architetture cPU diversa x86 (MIPS, ARM, PPC almeno)
Quindi, se c'è già una soluzione come questa, volevo un collegamento, ma se non c'è ancora, volevo sapere perché non è già implementato come una ruota.
Potrebbe essere solo che nessuno non ne aveva bisogno ... ma penso che questo sia abbastanza utile da preparare come standard.
Qualsiasi problema tecnico o politico diverso dal semplice assemblaggio del codice è desiderato.
Se si dispone già di un file core segfault, è possibile collegare il gdb o gdbserver al file core e ottenere le informazioni di debug. Se non lo fai, ma sai come riprodurre l'incidente, puoi collegare il pid e guardarlo in modo predefinito. Come/cosa contribuirà al debugging? –
Suppongo che l'idea di non avere il sovraccarico di avere gdb [server] collegato fino a quando il programma non si blocca effettivamente, e che guardare un'immagine live può essere più illuminante di un semplice core dump. (Non sono d'accordo, ma posso capire il sentimento.) Più problematica, la ** domanda ** chiede "è possibile?" ma OP sembra ** aspettarsi ** una soluzione completa ... – ephemient