Time estimate for a simple WDF Driver(s)

I am new to WDF and was wondering how man hours (estimate range) it would take to write a driver with the following basic requirements:

  1. Complete the installation package for a software only “Simulated bus” driver in kernel mode (KMDF).
  2. Handles I/O requests from a user mode application
  3. Does some manipulation of I/O data (leave it out of estimate)
  4. Calls another KMDF “processing” driver (may be UMDF) which spawns a thread for each I/O requests from “Simulated bus” driver in kernel mode.
  5. “Processing” driver then does some data processing and returns the results of each I/O request from the “Simulated bus”.

Currently I’m reading Developing Drivers with the Windows Driver Foundation (Orwick)

xxxxx@aeshen.com wrote:

I am new to WDF and was wondering how man hours (estimate range) it would take to write a driver with the following basic requirements:

  1. Complete the installation package for a software only “Simulated bus” driver in kernel mode (KMDF).
  2. Handles I/O requests from a user mode application
  3. Does some manipulation of I/O data (leave it out of estimate)
  4. Calls another KMDF “processing” driver (may be UMDF) which spawns a thread for each I/O requests from “Simulated bus” driver in kernel mode.
  5. “Processing” driver then does some data processing and returns the results of each I/O request from the “Simulated bus”.

Currently I’m reading Developing Drivers with the Windows Driver Foundation (Orwick)

It’s not immediately clear to me that a kernel driver is the proper
delivery vehicle for this, but of course the description here is rather
sketchy. It’s quite easy to write a software-only KMDF driver to handle
a few ioctls here and there. In fact, the installation package is
probably the ickiest part of the whole thing.

We’d have to know more about how you intend to use this, and what kind
of processing is being done. I sent you a private note suggesting that
we get together and chat, since we’re only a few miles apart.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.