0

Google のdump_symsプログラムでは、次のようなシンボリック ファイルを書き込むために、入力ファイルと出力ファイルが必要です。

$ dump_syms ./test.so > test.so.sym

test.soメモリ バッファにのバイナリがあります。最初にバイナリを一時ファイルに書き込み、それをフィードしてからdump_symsこの一時ソースを削除すると、パフォーマンスが低下します。

dump_symsファイル システムをバイパスするために、何らかの方法でバイナリ データを に直接パイプすることは可能ですか? これを行うには、おそらく Linux のネイティブ パイピングの観点からの方法が必要だと思います。

dump_symsがパイピングをサポートするのが最善の方法であることはわかっていますが、この機能はないと思います。これを考慮して、おそらくパイプを受け入れるようにdump_symsを変更するためのヒントがあれば、それも聞いてみたいです.

4

1 に答える 1

1

名前付きパイプ」を作成し、その名前 (ファイルシステム上のパスになります) を に渡すことができますdump_syms。パイプがサポートしないランダムアクセスが必要になる可能性があるため、まだ機能するかどうかdump_symsはわかりません。

または、最初にバッファーを格納するメモリ内の場所を制御できる場合はmmap、ファイルを作成し、そのメモリ領域を使用してデータを格納し、そのメモリ マップ ファイルの名前をdump_syms.

于 2014-11-10T07:18:03.390 に答える