EHDD テスト
このテストでは、暗号化されたハード ドライブが Microsoft と業界の仕様に準拠していることを確認します。
テストの詳細
仕様 |
|
プラットフォーム |
|
サポートされているリリース |
|
予想される実行時間 (分) | 30 |
カテゴリ | 互換性 |
タイムアウト (分) | 1800 |
再起動が必要です | false |
特別な構成が必要です | false |
Type | automatic |
その他のドキュメント
この機能領域のテストには、前提条件、セットアップ、トラブルシューティング情報など、次のトピックに記載されている追加のドキュメントが含まれている場合があります。
テストの実行
テストを実行する前に、テスト要件: ハード ディスク ドライブのテストの前提条件に従って、テストのセットアップを完了してください。
EHDD デバイスは、適切なコントローラーに接続されている必要があります。 テストに合ったパーティションとフォーマットが設定されたディスクがジョブによって準備されます。 このテストは破壊的であるため、ブート ディスクを対象ディスクにすることはできません。 ロゴ テスト以外でドライブ上で発生するアクティビティの量を最小限に抑えることが重要です。 このテストにはパフォーマンス要素があるため、外部アクティビティが結果に影響を与える可能性があります。 実行時にドライブの PSID を入力する必要があります。この値はプログラムで取得できないためです。
トラブルシューティング
HLK テスト エラーの一般的なトラブルシューティングについては、「Windows HLK テストのエラーのトラブルシューティング」を参照してください。
WTT トレースの確認:
EHDD テスト実行のタスク ログを表示します。
ログファイル EHDDLogoTest.wtl を開きます。
問題を解決する可能性のあるメッセージがないか確認します。
TCG コマンド トレースの確認と再生:
ドライバーに送信されたコマンドはすべて、エラーに備えてログに記録されます。 エラーが発生すると、前の復帰以降のトレースが、.error 拡張子が付けられて、テストが実行されたフォルダーに保存されます。
数値が最も大きい FullCommandoutput#.txt.error をテキスト エディターで開きます。
エラーの理由を探します。
SerializedCommands#.error ファイルを再生することにより、観察されたエラーを再現できます。
エラー ファイルを再生して、これが一貫性のある再現であるかどうかを判断します。 例: EhddLogoTest.exe /DeviceID "\\.\physicaldrive1" /PSID "G98D72LDPW2DF9HDN30HG0G30H409HG4" /Playback SerializedCommands1.error
EhstorTCGDrvTrace のログを開始できない:
前のテスト実行が途中で中断された場合は、バイナリの存続期間を超えてトレース ログが残る可能性があります。
次のエラーが表示されます。
Executing "cmd.exe /c logman.exe start EhstorTcgDrvTrace -ets -p {aa3aa23b-bb6d-425a-b58c-1d7e37f5d02a} -ft 1 -rt -o perflog.etl"Command execution exited with code: -2144337737 Could not start logging for EhstorTcgDrvTrace
管理者特権のコマンド ウィンドウを開き、cmd.exe (C:\Windows\System32\cmd.exe) を右クリックして、[管理者として実行] を選択します。
logman -query -ets を実行します
logman -stop -ets EhstorTcgDrvTrace を実行します
トラブルシューティングの情報については、「Device.Storage テストのトラブルシューティング」を参照してください。
詳細情報
このジョブは、テスト対象のデバイスのデバイス インスタンス ID と、デバイスの PSID を受け取ります。 ジョブは、デバイス インスタンス ID を物理ドライブ番号に変換することで、そのデバイスに対してテストを実行します。 ジョブは、ドライブをテストに必要な構成にするために、ドライブをパーティション分割してフォーマットします。 EhddLogoTest は、要件の項目にそれぞれマップされる一連のテスト ケースを使用して実行されます。 テスト ケースは自己完結型であり、ドライブは各テスト ケース間で復帰してアクティブ化されるため、1 つのテスト ケースの結果は他のテスト ケースに影響しません。 テスト ケースの一覧を次に示します。
ATA Identify
Band
Com Packet Size
Encryption Mode
Fixed ACL Mode
Fuzz
Key Length
メタデータ
Modifiable Common Name
Opal Version
Query Silo
Range Crossing
Secret Protect
SID Disable
TCG Stack Reset
TPer Reset
Unauthenticated Erase
さらにテストやデバッグを行う場合、これらの各テスト ケースは、スタンドアロン モードでテストを使用して、コマンド ラインで実行できます。 Fuzz テスト ケースには、テストをスタンドアロンで実行する場合の Fuzz イテレーションの数に関する省略可能な引数があります。
テスト中は、ドライブに送信されるコマンドがログに記録され、エラーが発生すると、このログはプレーンテキスト (FullCommandoutput#.txt.error) と再生ファイル (SerializedCommands#.error) の両方に保存されます。 コマンドとして復帰が行われるたびにログがリセットされます。エラーを再現するには最後の復帰で十分だからです。 playback 引数を指定してテストを開始することで、エラーにつながる一連のコマンドを再生できます。
コマンド構文
パラメーター | 説明 |
---|---|
EhddLogoTest |
テスト対象のバイナリ。 |
/DeviceID |
EHDD デバイスのドライブ文字。 例: /DeviceID \\\\.\\PhysicalDrive1 |
/PSID |
デバイスの PSID。 例: /PSID VUTSRQPONMLKJIHGFEDCBA9876543210 |
/Seed |
ランダムなテスト データを生成するためのシード値。 例: /Seed 1000 |
/RunTestCaseType |
指定したカテゴリ (デバイス、プロファイル、またはシナリオ) のテスト ケースのみを実行します。 例: /RunTestCaseTypes device |
/RunTestCase |
指定したテスト ケース (ATAIdentify、Band、ComPacketSize、EncryptionMode、FixedACLMode、Fuzz、KeyLength、Metadata、ModifiableCommonName、OpalVersion、QuerySilo、RangeCrossing、SecretProtect、SIDDisable、TCGStackReset、TPerReset、または UnauthenticatedErase) のみを実行します。 例: /RunTestCase Band |
/FuzzIterations |
Fuzz シナリオを実行するイテレーション数。 Fuzz シナリオを実行する場合のみ有効です。 例: /FuzzIterations 1000 |
/SkipManualTestCases |
手動による操作が必要なテスト ケースをスキップします。 例: /SkipManualTestCases |
/Debugger |
デバッガーのアタッチを求めるメッセージを表示して、プログラムをさらに実行する前に、デバッガーをアタッチできる時間を提供します。 例: /Debugger |
/Verbosity |
ログ記録の詳細度。 ログ記録の詳細度レベル: Minimal、Default、または Verbose。 例: /Verbosity Verbose |
/Playback |
前に記録されたコマンド ログ ファイルを再生します。 例: /Playback RecordedCommand.err |
/Log |
ログ名 既定値: LogoTest.wtl 例: /Log mytestlog.wtl |
/cmdPerfTraceAnalysis |
コマンド パフォーマンス分析を実行します: Never、OnPassed、または Always。 例: /cmdPerfTraceAnalysis Always |
/cmdPerfTraceLogFile |
パフォーマンス出力トレース ログ commandText。 既定値: perf-tracelog.etl 例: /cmdPerfTraceLogFile perf-tracelog.etl |
コマンドの使用方法
コマンド | 説明 |
---|---|
EhddLogoTest.exe /DeviceID "[DiskDeviceObjLink]" /PSID "[PSID]" |
指定したデバイス インスタンス ID と PSID のテストを実行します。 |
Note
このテスト バイナリのコマンド ライン ヘルプを表示するには、「/?」と入力します。
ファイル一覧
ファイル | 場所 |
---|---|
EhddFuzzer.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddInterop.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddLogoTest.exe |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddModularTestCase.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddTestCases.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddTestHarness.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddTestLib.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
EhddTraceLib.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
Tcglibutil.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
StorageDevices.dll |
<[testbinroot]>\nttest\driverstest\storage\wdk\ehdd |
パラメーター
パラメーター名 | パラメーターの説明 |
---|---|
LLU_LclAdminUsr | テストを実行するためのユーザー アカウント。 |
LLU_NetAccessOnly | テスト ファイル共有にアクセスするためのユーザー アカウントです。 |
WDKDeviceID | テストするデバイスのインスタンス パス。 |
DiskDeviceObjLink | Create Storage Parameters によって割り当てられます。 |
PSID | デバイスの PSID |
Destructive | (0、1) 0 = パッシブ、1 = 破壊的 |