Книга: Microsoft Windows Embedded CE 6.0 Exam Preparation Kit
Reducing Power Consumption in Idle Mode
Reducing Power Consumption in Idle Mode
To switch the device into reduced-power mode, Windows Embedded CE relies on the OEMIdle function, which the kernel calls when the scheduler has no threads to run. The OEMIdle function is a hardware-specific routine that depends on the capabilities of the platform. For example, if the system timer uses a fixed interval, then the OEMIdle function cannot really provide the expected power saving functionality because the system wakes up every time a timer interrupt occurs. On the other hand, if the processor supports programmable interval timers, you can use the kernel's dwReschedTime variable to specify the amount of time spent in reduced-power mode.
On waking up from reduced-power mode, the system must update the kernel global variables used by the scheduler. This is particularly important for the CurMSec variable, which the system uses to keep track of the number of milliseconds since the last system boot. The wakeup source can be either the system timer or another interrupt. If the wakeup source is the system timer then the CurMSec variable is already updated before execution is passed back to the OEMIdle function. In other cases, the CurMSec does not contain an updated value. To learn more about the OEMIdle implementation details, refer to the Idle.c source code file, located in the %_WINCEROOT%PlatformCommonSrcCommonTimerIdle folder.
NOTE
Kernel global variables
For detailed information about global variables that the kernel exports for scheduling, see the section "Kernel Global Variables for Scheduling" in the Windows Embedded CE 6.0 Documentation, available on the Microsoft MSDN Web site at http://msdn.microsoft.com/en-us/library/aa915099.aspx.
- Supporting the Critical Off State
- За пределами PowerPoint
- Testing Wdm2 Power Capabilities
- Глава 1. POWERPOINT – ЗЛО?
- 1.1.4. Model Explorer - навигатор модели
- Листинг 14.2. Использование параметра XMLWriteMode при сохранении объекта ADO.NET DataSet
- Entering and Exiting PHP Mode
- 3.4.2. The Transaction Model
- PowerPC-Based Linux Distributions
- 3.2.1. PowerPC
- 3.2.2. AMCC PowerPC
- 3.2.3. Freescale PowerPC