コンテンツにスキップ

Windows User-Mode Driver Framework

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。Yt1217 (会話 | 投稿記録) による 2015年7月22日 (水) 06:58個人設定で未設定ならUTC)時点の版であり、現在の版とは大きく異なる場合があります。

User-Mode Driver Framework (UMDF)は、Microsoft の Windows Vista operating systemで初めて導入されたデバイスドライバの開発プラットフォームであり、またWindows XP向けにも利用可能である。これにより、デバイスの特定のクラスのドライバの作成が容易になる。

概要

標準のデバイスドライバは、特にマルチスレッドのソフトウェア環境では、システムおよびデバイスの状態の非常に広い範囲を処理する必要があるため、書き難いことが多い。 カーネルに直接アクセスする際、すべての標準ドライバは高い権限を持っているので、ひどい記述のデバイスドライバは、システムに重大な損傷を引き起こす可能性がある(例えば BSOD やデータ破損)。 割り込みやメモリ管理でのユーザーレベルにおいて専用の application programming interface でドライバの新しいクラスを提供するかわりに、ユーザーモードドライバーフレームワークは、ドライバーへの直接アクセスの問題からカーネルを絶縁する。 エラーが発生した場合、新しいフレームワークは、システムに影響を与えることなく、即座にドライバを再起動することができる。 これは、断続的にシステムに接続されたり、USB や Firewireなどのようなバス技術によるホットスワップをサポートしているデバイスで特に有用だ。

Microsoftによると、UMDFドライバーは、カーネルモードドライバよりも書いたりデバッグしたりが簡単とされている。[1] ただしUMDFは、パフォーマンスを徹底したデバイスや高度にステートフルなデバイスには使用されないであろう。

UMDFの最初のバージョンは2004年10月12日に Windows Media Player version 10の一部として出荷された。 コードネーム「クレセント」は、 Media Transfer Protocol をサポートするように設計され、一般向けのインターフェイスやドキュメントは提供されていなかった。 後に、マイクロソフトは、UMDFをデバイスドライバの開発プラットフォームに転換することを決定した。[2]

バージョン履歴

  • ユーザーモードドライバフレームワーク1.5から1.9は、 Windows XP およびそれ以降をサポートする。
  • ユーザーモードドライバーフレームワーク1.11は、Windows Vistaおよびそれ以降、そしてWindows Server 2008 以降をサポートする。[3]
  • ユーザーモードドライバフレームワーク2.0は、 Windows 8.1 およびそれ以降をサポートする。[4]

アーキテクチャ

UMDFドライバは、Microsoftの Component Object Model (COM)に基づいたDLLである。 ただし、UMDFはロード、アンロード、またはconcurrencyを制御するためのCOMを使用していない。 programming patternとしてのみCOMを使用している。例えば、COMの IUnknown の利用などである。 起動時に、UMDF ドライバーは DllGetClassObject を呼び出してインターフェイスへのポインタを取得し、その後 IClassFactory インタフェースの CreateInstance を使用して IClassFactory ドライバーのコールバックオブジェクトのインスタンスを作成する。

ドライバオブジェクトは、フレームワークが提供する IWDFDriver のインスタンスである。 ドライバは、 IDriverEntry COM インターフェイスを介して、コールバックのセットを提供する。これはドライバのカスタマイズのための主要なエントリポイントとなる。

関連項目

脚注

  1. ^ Advantages of Writing UMDF Drivers”. 2015年7月22日閲覧。
  2. ^ Charles Torre, Peter Wieland (2006年9月18日). “Peter Wieland: User Mode Driver Framework”. Channel 9. Microsoft. 2006年9月18日閲覧。
  3. ^ Microsoft Support. “User-Mode Driver Framework version 1.11 update for Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2”. Microsoft. 2012年12月1日閲覧。
  4. ^ User-Mode Driver Framework Frequently Asked Questions (Windows Drivers)”. Microsoft. 2014年6月4日閲覧。

外部リンク