どういう仕組みで動くのか?(1/2) usb snoopyで解析(後述) V4Lドライバを流用 USBカメラとのやりとりは次の4つの関数 usb_control_msg() usb_set_interface() usb_set_configuration() usb_bulk_msg() これらを*BSD上ではugen(4)に対して行うラッパーを作成 デバイス初期化コードはそのまま流用 V4Lとproc filesystemの部分を削除 あとはendpointをopen(2)/read(2) つまりugen(4)を経由したユーザランドプログラムとして動作