printk - コンソールログにメッセージを表示する
#include <linux/kernel.h> int printk(const char*fmt, ...)
フォーマットされたメッセージをカーネルコンソールに表示する。 標準入出力ライブラリの printf 関数とよく似ている。 通常メッセージはコンピュータの物理コンソールデバイスに 書かれるが、この振る舞いは register_console 関数で変更 することができる。メッセージはメッセージ・ログブック (message log book)にも格納される。
生成された文字列は、メッセージの優先度を決めるためのメッセージ 優先度コードで始まっている場合もある。優先度コード文字列は <n> という書式を持つ。ここで、nは0から7までの数値である。 以下のマクロが<linux/kernel.h>ヘッダファイルで定義 されている。
期待された動作をする。
kernel/printk.c
float および double フォーマットはサポートされていない。 これらは、カーネル内部では絶対に使われるべきではない。 (Floats and doubles do not belong inside the kernel anyhow.)
printk の実装では割り込みを受け付けないようになっているので、 原則として割り込みハンドラ内やクリティカル・セクション内部 でも使用できる。しかしながら、登録されたコンソール関数に ついては保証されない。(However, there are no guarantees about the console function that is registered.)