Sono nuovo nella programmazione incorporata ma devo eseguire il debug di un'applicazione abbastanza complessa in esecuzione su una piattaforma integrata. Io uso GDB attraverso un'interfaccia JTAG.Come eseguire il debug dei problemi di memoria nell'applicazione incorporata
Il mio programma si arresta in modo anomalo a un certo punto in modo inaspettato. Suppongo che ciò accada a causa di un problema relativo alla memoria. GDB mi consente di ispezionare la memoria dopo che il sistema si è bloccato, quindi non risponde affatto?
che tipo di processore stai usando? – TJD
È un processore a 32 bit chiamato icyflex1 (http://www.csem.ch/docs/Show.aspx/9224/docname/CSEM-STR08-Page%2023.pdf) e sto utilizzando una toolchain basata su GNU. – ricc
Sfortunatamente quel documento non menziona nulla sulle funzionalità della CPU per il debug. Come menziona Carl Norum, in genere si rileva un'eccezione, quindi si controlla lo stato della CPU. Ci sarà un modo specifico della CPU per determinare quale sia il PC quando si è verificata l'eccezione. Alcuni processori hanno registri di stato di debug/fault che ti diranno cose come l'indirizzo errato a cui è stato effettuato l'accesso e se si trattava di codice o bus dati. – TJD