2

私はWindowsで新しく、WDMドライバーを読んでいるときに、デバイスオブジェクト(PDOとFDO)について遭遇しました。ドライバーをロードした後、ADDDeviceルーチンでFDOを再度作成する理由として、2つの異なるデバイスオブジェクトが必要な理由を視覚化できません。同じデバイスを表すため、そこで PDO を使用できます。

4

1 に答える 1

3

PDO と FDO は異なるデバイス ドライバーを使用するため、別のオブジェクトである必要があります。たとえば、PCI NIC デバイスには、PCI バス用のデバイス ドライバーによって生成された PDO と、NIC 用のデバイス ドライバーによって生成された FDO があります。

場合によっては、バスとデバイスが同じドライバーを共有することがあります。その場合、FDO は必要ありません。PDO と FDO を 1 つのデバイス オブジェクトに結合する raw PDO を使用できます。

図については MSDN のWDM デバイス スタックの例を、簡単な説明についてはPDOs, part 1を参照してください。

于 2013-10-17T01:00:17.467 に答える