DEVICE_GET_STATE(9) FreeBSD カーネル開発者マニュアル DEVICE_GET_STATE(9)
名称
device_get_state, device_busy, device_unbusy, device_is_alive, device_is_attached − デバイス状態の操作 |
書式
#include <sys/param.h> device_state_t |
device_get_state(device_t dev); void |
device_busy(device_t dev); void |
device_unbusy(device_t dev); int |
device_is_alive(device_t dev); int |
device_is_attached(device_t dev); |
解説 |
デバイスの現在の状態は、 DS_NOTPRESENT, DS_ALIVE, DS_ATTACHED, DS_BUSY ( device(9) で説明されています) を返す device_get_state() の呼び出しによっ てアクセスされます。デバイスがうまくプローブされたことを確認するには、単 純に状態が DS_ALIVE 以上であるかどうかを返す device_is_alive() を呼び出し ます。デバイスがうまくアタッチされたことを確認するには、単純に状態が DS_ATTACHED 以上であるかどうかを返す device_is_attached() を呼び出しま す。 個々のデバイスは、 device_busy() が呼び出された時にインクリメントされ、 device_unbusy() が呼び出された時にデクリメントされるビジーカウントを持っ ています。どちらのルーチンもデバイスの状態が DS_ATTACHED より小さい場合に はエラーを返します。 デバイスが DS_ATTACHED 状態で device_busy() が呼び出された時には、デバイ スは DS_BUSY 状態に遷移します。 device_unbusy() が呼び出されでデクリメン トされた後にデバイスのビジーカウントが 0 ならば、デバイスは DS_ATTACHED 状態に遷移します。 |
関連項目
作者
このマニュアルページは Doug Rabson が書きました。 FreeBSD 10.0 June 16, 1998 FreeBSD 10.0 |