6

デバイス用にカスタマイズされた情報を追加するために、systrace ツールの拡張に取り組んでいます。私たちは、Android が TRACE 生成をどのようにサポートしているかを知りたいと思っています。イベントのトレース、zigote、ファインダー、jvm の開始、Android の開始、Linux 呼び出し、ハードウェア呼び出しなどに関与するアーキテクチャとメカニズムは何ですか?

この情報に関するリンクやマニュアルを教えてください。

adb atrace ツールおよびその他の関連モジュールの技術文書を特に高く評価します。

トレース ファイル形式の情報も重要です。このトレース ファイルはどこにありますか。また、それらを拡張して情報を追加するにはどうすればよいでしょうか。

詳細 :

systrace.pyの 81 行目に次の内容があります。

atrace_args = ['adb', 'shell', 'atrace', '-z']

これにより、 /sys/kernel/debug/tracing/にいくつかのトレース ファイルが生成されることがわかっています。

私たちの主な関心は、これらのファイルがどこで、いつ、どのように生成されるかを知ることです。

どうもありがとうございました !

4

3 に答える 3

5

あなたがatraceを使用していると述べたように、私はsystraceで調査を行いました。Atrace は内部で ftrace を使用します。したがって、カーネル イベントを理解するには、ftrace について読んでください。そこで、Android フレームワークのタグを理解して、Android フレームワークに手動でタグを追加しました。トレースが役立つと感じた場所です。

これらを参照して、より明確にすることができます

http://androidxref.com/4.1.1/xref/system/extras/atrace/atrace.c

http://androidxref.com/4.1.1/xref/frameworks/native/libs/utils/Trace.cpp

于 2012-11-28T06:32:53.723 に答える
1

Grepcode はあなたの友達です。良い出発点はデバッグクラスだと思います: http://www.grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.1.1_r1/android/os/Debug .java?av=f

デバッグ プロパティのリストを説明する興味深い部分があります。

1085            final String TAG = "DebugProperties";
1086            final String[] files = { "/system/debug.prop", "/debug.prop", "/data/debug.prop" };

各プロパティは、特定の注釈で宣言する必要があります。

android.os.Debug.DebugProperty

ただし、プラットフォーム開発者のみが利用できるようです。

于 2012-11-22T09:43:02.067 に答える