tracing

dma_debugを使用してDMAトランザクションを追跡する方法は?
tracing

dma_debugを使用してDMAトランザクションを追跡する方法は?

私は現在、特定の(GPUやNICなど)PCIカードからDMAトランザクショントレースを取得する必要がある一部のPCI-eデバイスで作業しています。ちょっとした研究の終わりに役立つことがわかりました。郵便はがきxealitsによって提供されますが、特定のDMAトランザクションで読み書きされたバイト数を知らせていないようです。それからdma_debug私が期待していたものとまったく一致するカーネルモジュールを見つけました。 設定オプションを使用してカーネルv6.7を再コンパイルしてみました。 CONFIG_DMA_API_DEBUG=y CONFIG_DEBUG...

Admin

traceそしてtrace_pipe
tracing

traceそしてtrace_pipe

bpf_printk()一部のBPFプログラムを追跡するために、カーネルデバッグにヘルパー印刷を使用しています。使用法は次のとおりです。 #include <stdio.h> #include <linux/bpf.h> #include <sys/socket.h> #include <bpf/bpf_helpers.h> char LICENSE[] SEC("license") = "GPL"; SEC("sk_msg") int http_state_machine(struct sk_msg_...

Admin

シェルに関係なく実行されたすべてのコマンドを記録しますか?
tracing

シェルに関係なく実行されたすべてのコマンドを記録しますか?

ユーザーが次のコマンドを実行すると仮定します。 zcat file.gz | grep something | gzip > grepped.gz execve私はすべてのsを記録し、stdins / stdoutsを一緒にリンクし、同様の形式に再構成してsyslogに入れるカーネル関数(おそらくBPFフィルタ?)を探しています。シェルと対話せずにこれを行う方法はありますか? ...

Admin

Systemtapは、モジュールをロードするとカーネルモジュールの機能を検出します。
tracing

Systemtapは、モジュールをロードするとカーネルモジュールの機能を検出します。

モジュールをロードするときにカーネルモジュール関数でSystemtapプローブを使用する方法。ロード中の特定のモジュールから呼び出される関数を印刷しようとしています。hello.koロードされていないカーネルモジュールがあるとしましょう。今hello_init()このモジュールの機能を追跡したいと思います。次のSystemtapスクリプトを試しましたが、うまくいきません。 注文する: stap test10.stp -c "modprobe hello"-->何も印刷されません。 システムタブスクリプト: #!/usr/bin/env stap gl...

Admin

Fedora Linuxシステムで迅速に作成/終了したプロセスを表示するには?
tracing

Fedora Linuxシステムで迅速に作成/終了したプロセスを表示するには?

sysinternals suiteWindowsには、ツールと呼ばれるプログラムの一部としてダウンロードできるプログラムがあります。このプログラムはProcess Explorer 64(ProcExp64とも呼ばれます)と呼ばれます。このプログラムは、コンピュータ上の潜在的なマルウェアを特定するのに役立ちます。マルウェアの一般的な動作は、一般的なプログラムおよび/または人間の目が認識/認識できるよりもはるかに速くプロセスを開始および終了することです。これはWindowsタスクマネージャを使用するときに問題になります。これは、マルウェアが迅速に実行され、サ...

Admin

DTraceでintを文字列に変換するには?
tracing

DTraceでintを文字列に変換するには?

たとえば、連結文字列と整数を使用できるようにしたいとしますstrjoin()。 strjoin("ada", args[1]->unit_number); しかし、これを行うには、まずintを文字列に変換する必要があります。 私はFreeBSD 13.1-RELEASEでDTraceを実行しています。 ...

Admin

システムコールとmmapを介して、1つまたはすべてのアプリケーションで実行されているすべてのファイルIOを追跡/書き込みできますか?
tracing

システムコールとmmapを介して、1つまたはすべてのアプリケーションで実行されているすべてのファイルIOを追跡/書き込みできますか?

私は、アプリケーションが存続期間中に実行するすべてのIO操作を追跡し、キャッシュ効果が妨げられないようにしたいと思います。シムを使用すると、アプリケーションのソースコードを変更することはできません。パフォーマンスは問題ではありません。何時間もかかっても、アプリケーションが何をしているのかを記録したいと思います。究極の目標は、トレースを使用してプリフェッチなどのファイルシステム関連の経験的な方法を改善することです。理想的には、出力は<filename、offset>に似ていますが、それだけで十分かもしれません。 これまでの私の考えとそれがうまくいか...

Admin

生パケットからアプリケーション名を抽出する
tracing

生パケットからアプリケーション名を抽出する

愚かなことですが、パケット/ pcapからアプリケーション名を抽出できますか? たとえば、パケットの宛先がChromeプロセスの場合、パケットからその情報を抽出できますか? ...

Admin

ユーザーモードとカーネルモードで行われた仮想メモリアクセスを分析する方法は?
tracing

ユーザーモードとカーネルモードで行われた仮想メモリアクセスを分析する方法は?

特定のプログラムを実行した結果、ユーザーモードとカーネルモードで実行されたすべての仮想メモリアクセスのログを生成したいと思います。 メモリアクセス場所を収集するだけでなく、他のステータス情報(コマンドポインタ、スレッド識別子など)もキャプチャしたいと思います。基本ツールを使用しても、必要な統計をすべて収集することはできません。 この分析をオフラインで実行する予定なので、パフォーマンスへの影響は心配しません。実際に利用可能な項目によっては、どのツールがすべてのメモリアクセスを記録できるのか、どのツールがサンプリングのみできるかを知ることが役に立ちます。 私はも...

Admin

DMAを追跡する方法は?
tracing

DMAを追跡する方法は?

私は直接メモリアクセス(DMA)トランザクションを介してPCIカードと通信するソフトウェアを開発しています。私のプログラムは一連のドライバとライブラリを使ってDMAを処理します。すべてがRed Hat Linuxで実行されます。 私のプログラムのパフォーマンスをテストして測定するために、DMAトランザクションの開始と終了を追跡したいと思います。次に、ライブラリ内のいくつかの関数を見て、これを行います。 dma_from_hostdma_to_hostカードレジスタの値を設定し、名前付き1レジスタに書き込んで取引を開始します。DMA_DESC_ENABLE ...

Admin

Debian ブルスアイで root として実行される疑わしい pgrep
tracing

Debian ブルスアイで root として実行される疑わしい pgrep

コンピュータがアイドル状態であっても、私のラップトップにはファン活動がかなりあります。私のプロセスを見ると、topCPUを少し占めるプロセスが時々登場します。pgrepとして実行されますroot。これが何であるかを知っている人はいますか?これは知っておくべきことですか、それとも一般的なシステムルーチンですか? Operating System: Debian GNU/Linux bullseye/sid Kernel: Linux 5.6.0-2-686-pae Architecture: x86 ループを実行して...

Admin

マルチトラッキングイベントリーダー
tracing

マルチトラッキングイベントリーダー

質問 Linuxでイベントを追跡するためのトレースパイプラインは同時リーダーを許可しますか? コンテキスト RASいくつかのベンチマークの実行中にサブシステムからトレース情報を取得しようとしています。このサブシステムはトレースイベントを使用してハードウェアエラーイベントを報告します。 イベントの取得に使用するツールRASデーモンツール。私はこのツールがtracing_pipe_raw各CPUでFIFOを購読していることを知っています。また、ベンチマークはパフォーマンスイベントを購読します。私は信じる、また同じチャンネルを介して広告します。 tra...

Admin

straceは大丈夫ですが、
tracing

straceは大丈夫ですが、

ファイルを開く前にgvimプログラムが3秒間停止しました。この問題はgvimとは関係がなく、vimはうまく開いています。したがって、原因はvimではなくXまたは一部の関連サービスのどこかにある必要があります。 すべてのvimプラグインとvimrcファイルを無効にしてみました。 症状は次のとおりです。 $ time strace -o strace.gvim -f -yy -T gvim -c q time: Real 0m3.5s User 0m0.0s System 0m0.1s vimはうまく動作しますが: $ time strace ...

Admin

Bash機能をデバッグ/追跡する方法は?
tracing

Bash機能をデバッグ/追跡する方法は?

myscript.sh多くの機能を含むbashスクリプトがあります。関数を実行するには: source myscript.sh; myfunction これらの機能をデバッグする方法は? ...

Admin