ア | イ | ウ | エ | オ |
カ | キ | ク | ケ | コ |
サ | シ | ス | セ | ソ |
タ | チ | ツ | テ | ト |
ナ | ニ | ヌ | ネ | ノ |
ハ | ヒ | フ | ヘ | ホ |
マ | ミ | ム | メ | モ |
ヤ | ユ | ヨ | ||
ラ | リ | ル | レ | ロ |
ワ | ヰ | ヴ | ヱ | ヲ |
ン |
A | B | C | D | E |
F | G | H | I | J |
K | L | M | N | O |
P | Q | R | S | T |
U | V | W | X | Y |
Z | 数字 | 記号 |
Microsoft Windowsで使われるデバイスドライバーの規格。
元々はWindows 98とWindows 2000以降で搭載される、Win32用デバイスドライバーの統一規格のことを指した。
Windows 95 OSR2で、Windows 98に先立って実装されている。
Windows 95は、DOS用ドライバー、Windows 3.1用ドライバー (拡張子.386)に加え、VxDと呼ばれるWindows 95用のドライバー(拡張子.vxd)をサポートしている。これらはWindows 3.1からの継承品でモノリシックドライバーであった。
これらはWindows NT系列のマイクロカーネル思想からは相容れない構造である。周辺機器の高度化、Windowsの機能強化に伴いドライバーの開発そのものが難しくなってきていた。
また、新たに登場したUSBやIEEE 1394をサポートするにあたって、そのコントローラーを担当するドライバーと、それに接続される周辺機器に対するドライバーに分離して開発する必要があったが、モノリシックドライバーではそのようなサポートは不可能だった。Windows 95でUSBやIEEE 1394のサポートがすぐに実現できなかった理由もここにある。
Microsoftは将来的にWindowsのメインストリームをNT系列とすることを決定していたが、当時はパソコンの能力不足からそれは叶わず、信頼性を落とす代わりにパフォーマンスアップを図り、Windows 3.1とある程度の互換性があるWindows 95をメインストリームとしていた。
しかし、前述したとおりWindows 95ではドライバーの構造に難があり、同じものをWindows NTで使うことは出来ない(Windows NTのドライバーは最初から階層構造である)。
そのため、周辺機器メーカーはメインストリームであるWindows 95用ドライバーの開発に注力し、Windows NTのドライバーの開発は停滞してしまう、結果としてNTは普及しない、というジレンマを抱えていた。
そこでMicrosoftは、Windows 2000のドライバーモデルを開発するにあたって、次のような野心的な(しかし無謀な)プランを立てた。
これにより、ドライバーモデルは近代的なものになり、Windows 2000における周辺機器のサポートも充実するという一石二鳥の効果が狙えると考えられた。
Microsoftの掲げた理想は高かったが、現実問題としてWindows 98とWindows 2000との間で完全に同じドライバーを使いまわすことはできなかった。オペレーティングシステム(OS)の構造があまりにも違いすぎたのである。
それでも、Windowsのドライバーモデルのほとんどが共通化されたという点で大きな進歩であり、これ以降Windows 2000のドライバーも数多く出回るようになった。これが、Windows 98からWindows 2000へユーザーを移行させる大きな力ともなった。
だが、最終的にMicrosoftはWDMのバイナリ互換性については放棄せざるを得なくなった。OSが64ビット化する時代が訪れたからである。
現状では、64ビットマイクロプロセッサーのサポート開始と共にドライバーモデルはソースコード互換性に切り替えられ、それに伴いWin32 Driver ModelはWindows Driver Modelと改称された。
コメントなどを投稿するフォームは、日本語対応時のみ表示されます