tail head cat sleep
QR code linking to this page

manページ  — DEVICE_GET_STATE

名称

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);

解説

デバイスの現在の状態は、 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 状態に遷移します。

関連項目

device(9)

作者

このマニュアルページは Doug Rabson が書きました。

DEVICE_GET_STATE (9) June 16, 1998

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.

LISP = Lots of Irritating Silly Parentheses