私はしばしば、正確な実装がどこにあるかを見つけるために多くの時間を費やします。カーネルのどこかに行き着く可能性のある低レベルのコードを扱うときは、非常にイライラします。
私は通常、場所やメソッド名をググるか、推測しようとしますが、常に非常に効果的であるとは限りません。
フローを実装まで追跡する方法はありますか? 皆さんは普段どのようにしていますか?
私はしばしば、正確な実装がどこにあるかを見つけるために多くの時間を費やします。カーネルのどこかに行き着く可能性のある低レベルのコードを扱うときは、非常にイライラします。
私は通常、場所やメソッド名をググるか、推測しようとしますが、常に非常に効果的であるとは限りません。
フローを実装まで追跡する方法はありますか? 皆さんは普段どのようにしていますか?
関連する依存関係を含むコード全体をグラフィカル IDE にロードします (たとえば、NetBeans で実行できます)。これにより、グラフ、宣言 - 定義のジャンプなどを呼び出すことができます。または、選択したテキスト エディターに LibClang とそのラッパーを使用できます。索引付けも非常に得意です。最後に、定義ポイントと宣言ポイントをリンクできるクラシック、ctags を検討できます。
まさにそれを行うctraceプログラムが以前はありましたが、積極的に維持されているとは思いません。
最終的には、何を達成しようとしているのかによって異なります。実際には、特定の関数をトレースするのではなく、検索したいようです。その場合は、 etagsからcscope、OpenGrokまで、ある種のソース ブラウザの使用を検討してください。