USBStress パッケージ

USBStress は、ユーザー モード アプリケーション (usbstress.exe) とカーネル モード ドライバー用ドライバー インストール パッケージ (usbstress.sys) を組み合わせたものです。

これらのファイルは MUTT ソフトウェア パッケージに含まれています。

USBStress

USBStress は、USB ドライバー スタック全体、USB 汎用親ドライバー (Usbccgp.sys)、コントローラーとそのアップストリーム ハブに焦点を当てた一連のテストです。 USBStress はテストをランダムに選択し、接続されたテスト デバイスを構成します。 テストがランダムであることから、より多くのテストの組み合わせを可能にするために、24 時間にわたって USBStress を実行することをお勧めします。

このツールは、制御、バルク、アイソクロナス、さまざまな転送長のデータ転送をテスト デバイスとの間で実行します。 SuperMUTT デバイスの場合、USBTCD はバルク エンドポイントでサポートされているストリームにデータを転送します。

USBStress ドライバーは主に自己駆動型であり、ほとんどの I/O 要求はアプリケーションではなくドライバーによって生成されます。 ドライバーはタイマーとワーク アイテムを使用して I/O の生成やその他の操作を実行します。 ドライバーはレジストリをチェックして、テストを実行する必要があるかどうかを判断します。 外部プログラムがそのレジストリ キーを設定します。 このドライバーの目的は、さまざまな操作間で可能な限り多くの並行処理を作り出し、競合状態と同期問題を解消することです。

次の一覧は、USBStress が実行するテストをまとめたものです。

  • リモート ウェイクアップによるセレクティブ サスペンド。
  • バルク、割り込み、およびアイソクロナス エンドポイントでの同時読み取り/書き込み要求とキャンセル。
  • 同時文字列転送要求とキャンセル。
  • バルク エンドポイントでの同時中止パイプとキャンセル。
  • ランダム リセットによる予期しない取り外しと再列挙。
  • ランダム リセットによるデバイスの予期しない取り外し、再列挙、再列挙失敗。
  • 使用可能な代替インターフェイスのランダム選択。
  • n 回に 1 回、コントロール転送を停止するようにデバイスにランダムに指示。
  • 公開されたダウンストリーム ポートから VBUS を切断するように MUTT Pack (接続されている場合) にランダムに指示。
  • 公開されたダウンストリーム ポートで過電流状態をシミュレートするように MUTT Pack (接続されている場合) にランダムに指示。
  • ハブに対してハードウェア リセットを実行するように MUTT Pack (接続されている場合) にランダムに指示。

MUTT デバイスの usbstress.sys ドライバーをインストールするには、-UpdateDriver オプションを指定して MuttUtil を使用します。

c:\Program Files (x86)\USBTest\x64>MuttUtil.exe -UpdateDriver usbstress.inf
Return value: 0


c:\Program Files (x86)\USBTest\x64>MuttUtil.exe -list
       :    : HARDWARE ID                    :  PROBLEM CODE  : DRIVER
DEVICE :  0 : USB\VID_045E&PID_078E&REV_8011 :             0  : USBSTRESS
Return value: 1

MUTT ソフトウェア パッケージに含まれるツール
Microsoft USB テスト ツール (MUTT) デバイス