問題タブ [printk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
934 参照

linux - What is the similar to printk in user mode?

We can use printk to send debug message in kernel driver. I have a user mode AP that call kernel driver. I would like to output user mode AP debug message with kernel mode driver at the same time. How to do that?

0 投票する
5 に答える
1837 参照

multithreading - Linux カーネル モジュールでの printk の奇妙な動作

Linux カーネル モジュールのコードを書いていますが、奇妙な動作を経験しています。これが私のコードです:

基本的に、スレッドが終了するのを待ってから、その後何かを印刷しようとしていました。上記のコードはその目標を達成しますが、WITH"printk("debug\n");"はコメントされていません。コメントアウトしprintk("debug\n");てデバッグなしでコードを実行し、insmod コマンドを使用してモジュールをロードするとすぐに、モジュールがハングアップし、再帰で失われたように見えます。printk が私のコードにそれほど大きな影響を与えるのはなぜですか?

どんな助けでも大歓迎です。

よろしく。

0 投票する
7 に答える
47097 参照

linux - カーネルでの印刷の出力はどこに行きますか?

Linux用のドライバー(具体的にはubuntuサーバー9.04)をデバッグしていますが、コードにいくつかのprintfステートメントがあります。

これらのステートメントの出力はどこで確認できますか?

編集1:私がやろうとしているのは、procファイルシステムを使用してカーネルに書き込むことです。印刷コードは

kern.logで、ファイル/ proc / net / madwifi / ath1 / fractel_configを(もちろん時間の経過とともに)上書きしようとすると、次のメッセージが表示されます。

説明はありますか?

0 投票する
2 に答える
7868 参照

c - Linux カーネルのデバッグ出力?

Linux カーネルで出力をデバッグするより良い方法はありますか?

現在、コードを散らかしています:

これはあまりきれいではありません。

行全体を適切#ifdefな方法で :ed する方法が必要です。

0 投票する
2 に答える
6518 参照

makefile - pr_debug と printk の CFLAGS の設定

pr_debugLinux カーネル モジュールを理解しようとしており、およびの出力を確認したいと考えていますprintk。私はGNU Makeを使用しています。pr_debugメッセージ
を取得するには、 . DDEBUG

printkでは、ステートメントを有効にするにはどうすればよいですか?

ファイル名がkvm.c. これら2つの違いは何ですか:

このステートメントは何をしますか:

[編集]:
私の角括弧の使い方が混乱を招いているようです。実際、[ファイル名] とは、kvm.c などのファイルを意味していました。

0 投票する
2 に答える
847 参照

linux-kernel - printk 2 番目の出力

printk(KERN_INFO, ...) を実行すると、次のような結果が得られます。

<6>[116584.000183] ...

角かっこの間の数字は正確には何ですか?

0 投票する
1 に答える
399 参照

kernel - 次のログレベルは何ですか: printk ("initrd メモリの解放: %ldk 解放\n", (終了 - 開始) >> 10);

カーネル関数呼び出しで

カーネルのログレベルは言及されていません。では、デフォルトで取られるログレベルはどうなるでしょうか?

0 投票する
1 に答える
890 参照

linux - Linux での printk の実装

printk がカーネル空間からユーザー空間にデータを渡す方法を知りたいです。printkもrelayfsを使用しているか、独自の実装を持っているかに関係なく、大量のデータをカーネル空間からユーザー空間に転送するための効率的で統合されたファイルシステムを提供するrelayfsについて聞いたことがありますか??

0 投票する
2 に答える
2539 参照

c - Linuxカーネル:「open」syscallのprintkが機能しない

私は疑問を持っています。

カーネルを開き、ディレクトリlinux-3.1.1 / fs/open.cを変更しました

open.cのフォローコードを変更しました。

私はこの行だけを置きます:printk(KERN_EMERG "Testing");

そして私はライブラリを含めます:<linux/kernel.h>そして<linux/printk.h>

そこで、Linux(Ubuntu)をコンパイルして再起動しました。再起動中に、画面に多くの「テスト」が表示されました。だから今まではOKです。


しかし今、私は問題を抱えています。このプログラムはcで作成しました。

私はこのプログラムをコンパイルして実行し、うまく機能しました。しかし、なぜ「テスト」がシェルに表示されなかったのかわかりません。つまり、PCを再起動したときに「テスト中」という単語がたくさん表示された場合、上記のプログラムを実行したときにこの単語が表示されないのはなぜですか。追加するだけで、上記のコードにこのライブラリを含めます。

unistd.h、、、、fcntl.h_ stdio.h_stdlib.h

君たちありがとう。

0 投票する
2 に答える
16461 参照

c - 割り込みハンドラ内の printk 、それは本当に悪いですか?

割り込みハンドラはできるだけ短くする必要があることは誰もが知っています。また、割り込みハンドラ内でのデバッグなどの関数の追加printkは、行うべきではありません。実際、私が書いた割り込み駆動の char デバイスの Linux カーネルをデバッグしていたときに試してみたところ、ドライバーのタイミングが台無しになりました。

私が持っている質問は、なぜこれが起こっているのですか? printk関数はバッファリングされます! これは、データがキューに挿入され、後で処理されることを理解している限り、おそらく割り込みハンドラーが終了した後に処理されることを意味します。

では、なぜ機能しないのでしょうか。