BUILDING A STREAM DRIVER FOR TESTING
For driver development you can typically use a Retail OS, with Kernel Debug and KITL enabled. Use a Debug build of the OS if some driver-OS interaction needs resolution. You can configure the stream driver to load in user mode upon demand if you implement a driver loading application or configure it as Builtin and include it in the image (deselect Exclude from Image). For development purposes it is simplest to set the driver project to be built when the image is built (deselect Exclude from Build), to not include in the image (select Exclude from Image), and build as Debug (select Always Build and Link as Debug) in the project properties (via Solution Explorer), as shown in Figure 33-2. That way you can run the OS image and make changes to the driver source, and rebuild and reload without restarting or rebuilding the OS. You need to unload the driver from the OS before rebuilding it. Figure 33-3 shows how to configure the driver to include in the image.
Typically you would disable MakeImage After Building (Build Menu ⇒ Targeted Build Settings). To build you can then right-click the project in Solution Explorer and choose Build or Rebuild. If some subproject drivers are configured to be included in the image, the Build All Subprojects can result in MakeImage running every time regardless of that setting.
If you need to include the ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access