カーネルモジュールが画面に印刷できないのはなぜですか?

カーネルモジュールが画面に印刷できないのはなぜですか?

私はLinuxカーネルモジュールが画面に印刷できないことを読んだだけです。つまり、printf動作しません。割り込み処理に関連していますか?なぜこれが起こるのですか?

printfCとアセンブリ言語を扱った記憶がありますが、割り込みがオフになっていて使用できませんでした。

答え1

カーネルではprintf実装されていないので動作しません!あなたは使うprintk代わりに(または非常にearly_printk初期のコードではコンソールが設定される前)。printkどんな状況でもどこでも安全に呼び出すことができるように非常に注意深くコーディングされています(特にメモリ割り当ては必要ありません)。とほぼ同じAPIを実装し、printf印刷されるメッセージの重要性を示すログレベルとフォーマット指定子を追加します。カーネルに便利

関連情報