PASS(4) | FreeBSD Kernel Interfaces Manual | PASS(4) |
名称
pass — CAM アプリケーションのパススルードライバ書式
device pass解説
pass ドライバは、カーネルに CAM CCB を発行するためのユーザランドのアプリケーションのための方法を提供しています。pass ドライバによって、CAM サブシステムに直接アクセスできるので、システム管理者は、このドライバにアクセスを許可するとき、注意するべきです。不適切に使用されるなら、このドライバは、ユーザランドのアプリケーションがマシンを破壊するか、またはデータロスを引き起こすことできるようになります。
pass ドライバは、システムで見つけられたすべての SCSI デバイスにアタッチします。すべてのデバイスにするので、それは、 SCSI デバイスにアクセスする一般的な方法を提供し、ユーザがそれらに関連する "標準の"周辺機器ドライバがないデバイスにアクセスすることを可能にします。
カーネルの設定
単に、カーネルで 1 つの pass デバイスを設定することが必要です。 pass デバイスは、 SCSI デバイスが見つかるように自動的に割り付けられます。IOCTL
- CAMIOCOMMAND
- この ioctl は、ほとんどの種類の CAM CCB を解釈し、動作のための CAM 転送レイヤを通してそれらに渡します。いくつかの CCB タイプは、パススルーデバイス通して許可されず、代わりに xpt(4) デバイスを通して送信されなければならないことに注意してください。 xpt のみの CCB のいくつかの例は、XPT_SCAN_BUS、 XPT_DEV_MATCH、XPT_RESET_BUS、XPT_SCAN_LUN、XPT_ENG_INQ と XPT_ENG_EXEC です。これらの CCB タイプには、それを非論理的にするか、またはパススルーインタフェースを通して、それらのサービスを不可能にする様々な属性があります。
- CAMGETPASSTHRU
- この ioctl は、XPT_GDEVLIST CCB を解釈し、問題となっているデバイスに対応するパススルーデバイスデバイスを返します。この ioctl は、 pass ドライバを通して利用可能ですが、それらがこの ioctl を発行しているなら、問題になっているデバイスがパススルーデバイスであることを呼び出し側が既に知っていなければならないので、それは、あまり役に立たちません。 xpt(4) デバイスを通して、この ioctl を発行するのに、たぶんより役に立ちます。
関連ファイル
- /dev/pass n
- pass ドライバのためのキャラクタデバイスノード。 CAM サブシステムを通してアクセスされたデバイスごとにこれらのうちの 1 つであるべきです。
診断
なし。歴史
CAM パススルードライバは、 FreeBSD 3.0 ではじめて登場しました。作者
<ken@FreeBSD.org>バグ
パススルードライバを通して CCB に非同期に送信する方法があることはよいかもしれません。これは、たぶんある種の読み込み/書き込み (read/write) インタフェースまたは非同期 ioctl インタフェースを必要とします。October 10, 1998 | FreeBSD |