Oracle® Solaris 11.2 デバイスドライバの記述

印刷ビューの終了

更新: 2014 年 9 月
 
 

エラーの返却

デバイスドライバは通常、メッセージを出力しませんが、データの破損などの予期しないエラーが発生した場合は例外です。ドライバのエントリポイントは代わりにエラーコードを返して、アプリケーションがエラーの処理方法を決定できるようにします。cmn_err (9F) 関数を使用してメッセージをシステムログに書き出せば、そのあとでコンソールに表示できます。

cmn_err(9F) によって解釈される書式文字列指定子は printf(3C) 書式文字列指定子に似ていますが、ビットフィールドを出力する %b 書式が追加されています。この書式文字列の最初の文字には特別な意味を持たせることができます。cmn_err (9F) の呼び出しでは、出力される重要度ラベルを示すメッセージレベル (level) も指定します。詳細は、cmn_err (9F) のマニュアルページを参照してください。

CE_PANIC レベルには、システムをクラッシュさせるという副作用があります。このレベルは、システムが、続行することによってより多くの問題が発生するような不安定な状態である場合にだけ使用されます。このレベルは、デバッグ時にシステムコアダンプを取るためにも使用できます。CE_PANIC は本稼働デバイスドライバでは使用しません。