IOSCSIPeripheralDeviceType00
USB 接続の大容量記憶装置用のからサブクラス化された SCSI パススルー デバイス ドライバーを作成しています。デバイスは、ファームウェア内のいくつかのベンダー固有の SCSI コマンドをインターセプトし、適切に応答するだけでなく、「通常の」SCSI コマンドにも応答します。
私は、この Wagerlabs コードのスタイルによく似たドライブを実装しました。
およびメソッドは基本的に空でinit()
、probe()
ログを記録し、反復的なスーパークラス関数を呼び出すだけです。これらは正しく動作しているように見えます (ログは期待どおりに表示され、プラグインされたときにドライバーがデバイスに割り当てられます)。ただし、ドライバーのstart()
メソッドが呼び出されると、スーパークラスstart()
が最初に呼び出されますが、デバイスが取り外されるまで返されません。