This newsletter contains archived content. No warranty is made as to technical accuracy of content or currency of URLs.
The WHQL & Logo Newsletter provides up to date information about WHQL hardware testing issues/submissions and the "Designed for Windows" logo program. Did you get this newsletter from a friend? Subscribe to the WHQL newsletter.
Energy Efficiency and Windows Drivers
A device stack's power policy owner (PPO) determines when a device should or should not be powered on. To help achieve maximum system energy efficiency, the PPO should cooperate with the Windows power manager to power down devices that are idle. The practice of powering down idle devices while the computer is still in its normal operating state is called runtime idle detection. USB devices require a specialized form of runtime idle detection called USB selective suspend.
We strongly recommend that developers support runtime idle detection in their device drivers. Increasing System Power Efficiency through Driver Support for Runtime Idle Detection l on the WHDC Web site provides details for evaluating and implementing solutions. In particular, this paper describes how to support idle detection on USB devices by implementing USB selective suspend.
A key issue for the PPO is handling requests for idled devices--where the system is still in the working state (S0) but the device has been powered down to a low-power state (Dx). Windows Driver Foundation (WDF) drivers can use power-managed queues to automatically manage requests that are based on the device power state. However, WDF drivers that are above the PPO in the device stack should not use power-managed I/O queues because doing so can create deadlocks and stall the stack. When WDF Drivers Can Use Power-Managed I/O Queue (a new WHDC driver tip) describes when to use power-managed queues, including details for user-mode driver framework (UMDF) USB drivers.
Although any device can participate in device idle detection, several devices are more tightly integrated with the Windows power manager to help ensure maximum system power savings. The hard disk drive device is one such device. Windows Disk Idle Detection describes how system manufacturers can best configure disk idle detection power policies and provides details on how to use the PwrTest utility provided with Windows Vista Service Pack (SP) 1 and Windows Server 2008 to observe the mechanics of disk idle detection.
- The WHDC Web team
Windows Server 2008--Guidelines for the Hardware Platform
WHEA is a hardware error-handling architecture that was introduced in the Windows Server 2008 operating system. Four ACPI tables have been created for use with WHEA that describe and provide hardware error-handling capabilities of the hardware platform to the operating system.
Windows Hardware Error Architecture ACPI Table Specification provides details of the layout of these four tables, but does not include details on how to program or use the tables. This document is provided (under license agreement) for designers who are planning server systems that support WHEA.
Binding device interrupts to particular processors on multiprocessor computers is a useful technique to maximize performance, scaling, and partitioning of large computers. Interrupt-Affinity Policy (IntPolicy) is an interrupt-binding tool that replaces its predecessor Interrupt-Affinity Filter (IntFiltr) and uses some of the interrupt-binding enhancements introduced in Windows Server 2008.
Administrators can use IntPolicy to set and view a device processor affinity on multiprocessor computers. Each device has an affinity policy that the system uses to set the processor affinity for that device's interrupts. IntPolicy provides a graphical user interface (GUI) that allows the binding of a device's interrupts to processors by setting the device's affinity policy. This article describes how to install and use IntPolicy. Download the Interrupt Affinity Policy Tool.msi installer package from the WHDC Web site, and learn how to use IntPolicy. See also Performance Tuning Guidelines for Windows Server 2008.
Windows Connectivity for Windows Device
|
|
PnP-X out-of-band association provides a way for an installation application to install a multitransport device as a network-connected device before it is first connected to a network. Then, when the device is connected to the network, Network Explorer recognizes it as an installed device, and it is immediately ready for the user. A new paper on the WHDC Web site provides information for manufacturers and developers about how to implement an installation application to create an out-of-band network association for a multitransport device that works with Windows Vista.
|
What's New on the Blogs for Hardware and Driver Developers
|
|
I have seen so many people get this wrong [that] I want to make sure that if such a driver is installed, the stability of the system is not compromised. The scenario I am covering is... sharing HW resources assigned to your device (device A) with another device (device B). Device B can be a legacy NT4 style device or another PnP device stack, it doesn't matter. More...
|
|
|
I have several test machines... I repeatedly change their OS's with ASI and deploy various test drivers... If I'm wondering if I've got a particular KMDF or UMDF driver on any of them, I can pop it up and tell within seconds... All I have to do is type a command line... More...
|
|
|
Microsoft announced that it will extend the Open Specification Promise to the hypercall API within Windows Server virtualization (codename Viridian)... Microsoft posted an updated draft of the hypercall API to Microsoft's Web site so that partners can continue to have early access to this important development interface... The hypercall API enables partners to develop solutions with Windows Server virtualization that allow customers to achieve dynamic IT environments. More...
|
New and Updated Tools and Papers for Developers
|
|
Application Verifier is a runtime verification tool for unmanaged code. It is designed specifically to detect and help debug memory corruptions and critical security vulnerabilities. Run the Application Verifier tests on your code to identify issues within heaps, handles, and locks.
Version 3.4 includes Print Verifier (for troubleshooting issues when an application calls the print subsystem), Compatibility (previously provided through the AppCompat ToolKit), and ThreadPool (a new set of tests that find common developer mistakes).
|
Windows Logo Program Tools and News
|