EN JA
DEVICE_GET_STATE(9)
DEVICE_GET_STATE(9) FreeBSD Kernel Developer's Manual DEVICE_GET_STATE(9)

名称

device_get_state, device_busy, device_unbusy, device_is_alive, device_is_attachedデバイス状態を操作する

書式

#include < sys/param.h>
#include < sys/bus.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);

解説

デバイスの現在の状態は、 ( device(9) に記述されている) DS_NOTPRESENT, DS_ALIVE, DS_ATTACHED または DS_BUSY を返す device_get_state() を呼び出すことによってアクセスされます。デバイスがプローブを成功したかどうか確かめるテストするためには、状態が DS_ALIVE 以上であるなら、単に返る device_is_alive() を呼び出します。デバイスがアタッチを成功したかどうか確かめるテストするためには、状態が DS_ATTACHED 以上であるなら、単に返る device_is_attached() を呼び出します。

各デバイスには、 device_busy() が呼び出されるときに増加され、 device_unbusy() が呼び出されるときに減少される、ビジーカウント (busy count) があります。両方のルーチンは、デバイスの状態が DS_ATTACHED 未満であるなら、エラーを返します。

device_busy() が DS_ATTACHED 状態のデバイスで呼び出されるとき、デバイスは、 DS_BUSY 状態に変わります。 device_unbusy() が呼び出され、減少された後にデバイスのためのビジーカウントが 0 であるなら、デバイスは、 DS_ATTACHED 状態に変わります。

関連項目

device(9)

作者

このマニュアルページは、 Doug Rabson によって書かれました。
June 16, 1998 FreeBSD