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

印刷ビューの終了

更新: 2014 年 9 月
 
 

close() エントリポイント (文字ドライバ)

close(9E) の構文は次のとおりです。

int xxclose(dev_t dev, int flag, int otyp, cred_t *credp);

close() は、マイナーデバイスの使用を完了するために必要なクリーンアップをすべて実行し、デバイス (およびドライバ) を次回のオープンのために準備します。たとえば、open ルーチンが、排他的アクセス (FEXCL) フラグを使用して呼び出されているとします。 close(9E) を呼び出すと、追加の open ルーチンを続行できるようになります。close (9E) が実行する可能性のあるほかの機能は次のとおりです。

  • 戻る前の、出力バッファーからの入出力の排出の待機

  • テープの巻き戻し (テープデバイス)

  • 電話回線の切断 (モデムデバイス)

入出力の排出を待機するドライバは、フロー制御などの外部条件のために排出が滞ると、永久に待機する可能性があります。この問題を回避する方法については、Threads Unable to Receive Signalsを参照してください。