この記事は更新が必要とされています。 この記事には古い情報が掲載されています。編集の際に新しい情報を記事に反映させてください。反映後、このタグは除去してください。(2015年12月) |
| 開発元 | マイクロソフト |
|---|---|
| 最新版 | 1.7 |
| リポジトリ | |
| 対応OS | Windows |
| ライセンス | MITライセンス |
| 公式サイト | learn |
| テンプレートを表示 | |
Windows Driver Frameworks(WDF)はMicrosoft Windows 用デバイスドライバ開発に用いられるマイクロソフト製のフレームワークである。
Windows Driver Frameworks (WDF) はWindowsデバイスドライバの標準インターフェースであるWindows Driver Model (WDM) をラップ・抽象化し、よりシンプルで高機能な上位インターフェースとライブラリを提供するフレームワークである[1]。WDF を構成する主要ツールはKernel-Mode Driver Framework (KMDF) とUser-Mode Driver Framework (UMDF) である。これらのツールキットは、Windows のドライバ開発のための新しいオブジェクト指向プログラミングモデルを提供する。フレームワークの主要な目標は "Conceptual Scalability"(概念的スケーラビリティ)であり、ドライバ開発者が少数の単純な概念を学ぶだけで簡単なドライバを書けるようになり、さらに学ぶに従ってより複雑な機能のドライバを書けるようになることを意味する。これは、単純なドライバを書く場合にも複雑な技術的詳細に精通している必要があるWindows Driver Model (WDM) とは著しく異なる。
Conceptual Scalability を実現する鍵の一部は、KMDF と UMDF が "opt-in" モデルだという点にある。このモデルでは、模範的なドライバのデフォルトの動作を拡張したり、オーバーライドすることが可能である。これは、WDM でドライバの動作のあらゆる面を開発者が書いて実装する必要があったのとは対照的である。
Windows 2000 で登場し、以降の Windows 向けのデバイスドライバ開発のために用いられている。かつてはWindows Driver Foundation (おなじくWDF) という名称であった。
このフレームワークには2つのバリエーションがある。
基盤となるプログラミングモデルは共通である。しかし、カーネルモードのフレームワークはC言語のインタフェースを使い、ユーザーモードのフレームワークはC++のインタフェースに基づき、COMの軽量版に基づいている。
WDF にはドライバ開発者用の静的検証ツールも含まれている。これらツールは、よくあるコード上の問題やテストでは検出が難しいコード上の問題を特定することができる。
マイクロソフトのAPIとフレームワーク | |
|---|---|
| グラフィック | |
| オーディオ | |
| マルチメディア | |
| ウェブ | |
| データアクセス | |
| ネットワーク | |
| コミュニケーション | |
| 管理 | |
| コンポーネントモデル | |
| ライブラリ | |
| デバイスドライバ | |
| セキュリティ | |
| .NET | |
| ソフトウェアファクトリー | |
| IPC | |
| アクセシビリティ | |
テキストと多言語 サポート | |
| 人工知能 | |