1

Android フレームワークのソースとカーネルをいじろうとしています。各 Zygote フォークの後にプロセス スタックなどにアクセスしたい場合は、どのように行うのが最善でしょうか? Loadable Kernel Module を使用してカーネル レベルでそれを実行しようとしましたが、フォークのたびにそのモジュールを実行するにはどうすればよいですか? フレームワークソースからカーネルで定義された関数を呼び出す方法はありますか (例: dalvik/vm/native/dalvik_system_Zygote.c )? これは素朴に思えるかもしれませんが、誰かが私を正しい方向に導くことができれば幸いです.

4

1 に答える 1

1

わかりました、私はちょっとそれを理解しました。私がしたことは、カーネル elf ライブラリで新しいシステム コールを定義することでした。そうすれば、STACK_TOP からスタック アドレスを取得できます。システム コールは fork の後に呼び出され、単にスタック アドレス値を返します。

于 2013-11-17T16:08:09.747 に答える