Difference between revisions of "ReactOS Driver Model"

From ReactOS Wiki
Jump to: navigation, search
m (Grammar and spelling fixes)
m (Spell out "IRP" on first use and link to its Wikipedia page; change "like what" to "as".)
Line 4: Line 4:
  
 
There is a difference between NT3, NT4 WDM drivers and 2000/XP WDM drivers.
 
There is a difference between NT3, NT4 WDM drivers and 2000/XP WDM drivers.
The old OSes use the IRP method that originated in DEC's VMS.
+
The old OSes use the [[wikipedia:I/O request packet|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.
 
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 like what is common now with anti-virus or HID.
+
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. ([http://www.reactos.org/forum/viewtopic.php?p=63381#p63442])
 
This change happened at the same time in NT and OpenVMS. ([http://www.reactos.org/forum/viewtopic.php?p=63381#p63442])
  

Revision as of 06:37, 20 May 2018

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