User: Password:
|
|
Subscribe / Log in / New account

Windows NT

Windows NT

Posted Feb 3, 2007 18:09 UTC (Sat) by mikov (subscriber, #33179)
Parent article: Fibrils and asynchronous system calls

In the Windows driver model all calls are asynchronous. Every user mode request is represented by an IRP structure which can be linked in various lists, etc, and completed asynchrounsly.

I have always liked that approach - it can be complicated to grasp and implement, but it is consistent and after all is the natural way for handling IO operations at the low level:

  • User mode makes a request to the driver
  • An operation is submitted to the hardware
  • The hardware starts executing it
  • At some later time the hardware completes and generates a completion interrupt
  • The user mode request is completed asynchronously

Fibrils seem like an awful patch to me.


(Log in to post comments)

Windows NT

Posted Feb 15, 2007 16:02 UTC (Thu) by IXRO (guest, #39871) [Link]

Unfortunately that was slow enough, so they introduced FastIO, that bypasses the stack


Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds