私はgdb内でpythonを使ってCをデバッグすることについてまだ学んでいます(私の場合はarm-none-eabi-gdb)。私はこの機能を使用して、ARM Cortex-M上で動作するリアルタイムOSのスレッド情報を取得しようとしています。いくつかのOS構造を読んで、私は OSのスレッド制御ブロックにアクセスできます。私は各スレッドのPCとSPを知っています。どうすればgdbのPythonを使ってスレッドのバックトレースをダンプすることができますか? PCとSPが与えられたときにスタックをトラバースできる汎用APIはありますか?gdbがOSに対応していないときにgdbのPythonを使用して異なるOSスレッドをバックトレースする
私はhttps://sourceware.org/gdb/current/onlinedocs/gdb/Unwinding-Frames-in-Python.html#Unwinding-Frames-in-Pythonを読みましたが、それを達成する方法があると感じていますが、私はいくつかの助けが必要です。
可能であれば、OSの異なるスレッドをgdbに認識させることはできますか?このリンク: https://sourceware.org/gdb/current/onlinedocs/gdb/Threads-In-Python.html#Threads-In-Pythonスレッドには触れますが、OS情報に依存します。これらは、それぞれの制御ブロックからの異なるOSスレッドについて私が知っているもので過負荷になる可能性がありますか?
ありがとうございます!