Difference between revisions of "ReactOS Driver Model"

From ReactOS Wiki
Jump to: navigation, search
m (Spell out "IRP" on first use and link to its Wikipedia page; change "like what" to "as".)
(This page is garbage. The heck is a "FastIRP"?)
Line 1: Line 1:
 +
{{Outdated|reason=The information on this page appears to be based on speculation and inaccurate information.}}
 
The ReactOS Driver Model is the ReactOS equivalent of the [[wikipedia:Windows Driver Model|Windows Driver Model]]; the Windows Driver Model was a replacement for the VXD model used before Windows 98, and the NT Driver Model used before Windows 2000.
 
The ReactOS Driver Model is the ReactOS equivalent of the [[wikipedia:Windows Driver Model|Windows Driver Model]]; the Windows Driver Model was a replacement for the VXD model used before Windows 98, and the NT Driver Model used before Windows 2000.
  

Revision as of 09:27, 21 May 2018

This page is probably outdated

The information on this page appears to be based on speculation and inaccurate information.
A Wiki Administrator should look at this page and decide or discuss what to do with it.


The ReactOS Driver Model is the ReactOS equivalent of the Windows Driver Model; the Windows Driver Model was a replacement for the VXD model used before Windows 98, and the NT Driver Model used before Windows 2000.

Device drivers are hardware specific extensions to the ReactOS Executive. They allow the operating system to interact with certain devices and vice versa. ReactOS currently aims to implement the NT driver mode, of which the Windows Driver Model (WDM) is a subset. WDM is a set of rules for writing portable Windows drivers. The Windows Driver Foundation (WDF) introduced in Windows Vista is also a consideration for future development.

There is a difference between NT3, NT4 WDM drivers and 2000/XP WDM drivers. The old OSes use the I/O request packet (IRP) method that originated in DEC's VMS. Later it was decided that IRP was much too complicated so a new way was devised that was called fastIRP. In fact it was a complete U-turn toward the Unix way to communicate between kernel and drivers: IRP are asynchronous and not so predictable and it was not easy to use in stacks of drivers as is common now with anti-virus or HID. This change happened at the same time in NT and OpenVMS. ([1])

See Also