Microsoft gave the driver development community a nice holiday present this year with the release of the Windows Driver Foundation Kernel-Mode Driver Framework in the first week of December.
The official release was preceded by quite a bit of tumult at the end of November when Microsoft announced that drivers developed using KMDF would not install or run on Windows 2000. Hector Rodriguez, OSR's Consultant at Large, broke the news to the community in an article on OSR Online. "On the eve of the release of KMDF V1.0," wrote Rodriguez, "it seems that some pendejo in the myriad layers of Microsoft management has decided that supporting KMDF on Win2K doesn't fit with established Microsoft policy."
What followed was a storm of wails and protests from driver developers across the globe. Within a week, Microsoft's KMDF program management team (who were believed to already be sympathetic to the issue), issued the following response:
Since Microsoft's announcement that the Kernel-Mode Driver Framework (KMDF) would not be supported nor made available on Windows 2000 and the subsequent posting on OSR Online we've received a significant amount of feedback via email and newsgroup postings, for which we want to thank you. It demonstrates that the driver development community is alive and well and cares very much about what goes on in this space. Your feedback has prompted Microsoft to rethink this position. Microsoft is actively pursuing solutions that will allow us to make KMDF available on Windows 2000.
Reliable sources told The NT Insider that this statement was being followed-up with action. If we here at OSR were in a betting mood, we'd bet that the next release of KMDF will work on Windows 2000 (Surprise! See link, Community Victory: KMDF V1.1 To Include Win2K Support).
Use the Source, Luke
Amidst the uproar over the lack of Windows 2000 support, the community seemed to hardly notice another item missing from the KMDF V1.0 kit ‑ the KMDF source code. Throughout the beta process, Microsoft had been careful to only say they were "working on" the necessary permissions to release source code. Apparently (this is just a guess) they didn't want to wait for the powers-that-be to make up their minds, so decided to move forward with shipping the V1.0 kit.
Man in the Mirror
There was also a third thing missing that was promised for the KMDF V1.0 release - OSR's book titled Introduction to the Windows Driver Foundation Kernel-Mode Driver Framework was nowhere to be found. If we're going to complain about stuff other people haven't done, the least we can do is face up to our own less than-stellar delivery record. Before you flip-out and send us nasty e-mail, we're hoping to have the book completed by the end of June.
A Nice Bit of Kit
When KMDF V1.0 was released, there were some also some nice surprises. For one, the kit was available for immediate download via the Microsoft's WHDC Web site, so there was no waiting for MSDN CDs to arrive or fooling around with annoying MSDN logins. Even more exciting was the news that the KMDF kit quietly included a complete copy of the Windows Server 2003 SP1 DDK! No more nonsense about, "The DDK is only available for download via MDSN." Bravo! Hoorah!!
The KMDF kit is put together nicely. In addition to the requisite headers and libs, the kit includes a ton of samples, the standard Microsoft-style DDK documentation (that still needs some work) and a couple of KMDF-related whitepapers.
From OSR's perspective, the release of KMDF V1.0 is the single most important event in the driver world since Microsoft fixed the DDK by including the "everything you need" to build drivers. In our view, KMDF is a major step forward in terms of ease of development and driver reliability. The kit is solid and well-tested. While there are a few rough spots, we think that's to be expected from a 1.0 release of anything.
We can't wait to see what little additions are in store for us in V1.next.