3

まず、デバッガーが使えません[1]。しかし、プログラムのプログラムカウンターにアクセスでき、必要なすべてのフラグを使用してバイナリ(Cで記述)をコンパイルすることもできます。また、コードを変更することもできます(ただし、変更したくない場合もあります)。PCを考えると、どの行に対応しているかを知りたいです。

これを行うには、自動化された実用的で迅速な方法が必要だと確信しています。しかし、私は成功していません。

編集:言及するのを忘れた:Linuxシステム、バイナリはPPC、ホストはi386です。私はPPCハードウェアにアクセスできます。

[1]アプリケーションはエミュレートされており、クロスコンパイルされています。ホストエミュレーターにgdbがあります。しかし、エミュレートされたゲストアプリケーションにgdbserverを接続できません。そして、実際のハードウェアはオプションではありません。私はエミュレーターに基づいてシミュレーターを構築しようとしています。

4

1 に答える 1

2

If the binary is compiled with debugging information, then you can use the PC to find the right location in the source by groping through the ELF sections that contain the debug information. Automated, quick and practical aren't the terms that spring to mind for the process, though!

于 2012-06-03T20:42:01.210 に答える