Nicolas Besson - Microsoft Windows Embedded CE 6.0 Exam Preparation Kit

Здесь есть возможность читать онлайн «Nicolas Besson - Microsoft Windows Embedded CE 6.0 Exam Preparation Kit» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Redmond, Год выпуска: 2008, Издательство: Microsoft, Жанр: Руководства, ОС и Сети, Программы, на английском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Microsoft Windows Embedded CE 6.0 Exam Preparation Kit: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Microsoft Windows Embedded CE 6.0 Exam Preparation Kit»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Microsoft Windows Embedded CE 6.0 Exam Preparation Kit — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Microsoft Windows Embedded CE 6.0 Exam Preparation Kit», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Figure 5-9<\/strong>Power state transitions<\/p>

Windows Embedded CE can respond to power-related events in the following ways:<\/p>

Battery critically low<\/strong>The system switches into Critical Off state in response to a nonmaskable interrupt (NMI) that a voltage comparator on the board triggers, so that the user can replace the battery and resume.<\/p>

Idle<\/strong>The system switches the CPU into reduced-power mode if the CPU has no worker threads to run and wakes up when an interrupt occurs.<\/p>

Suspend<\/strong>The system switches the device into Suspend state when the user presses the Off button or in response to an inactivity timeout and resumes in response to a wakeup event, such as the user pressing the power button again. On some embedded devices, the Suspend state corresponds to a true power-off state, in which case the system resumes with a cold boot.<\/p>

Reducing Power Consumption in Idle Mode<\/p> <\/div>

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.<\/p>

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%\Platform\Common\Src\Common\Timer\Idle folder.<\/p>

NOTE<\/div>
Kernel global variables<\/div>

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<\/em> .<\/p> <\/cite>

Powering Off and Suspending the System<\/p> <\/div>

The maximum power saving state that a Windows Embedded CE device can support is the Power Off or Suspend state. The system can request the device to enter the Suspend state by calling GwesPowerOffSystem directly or SetSystemPowerState. Both functions eventually call the OEMPowerOff routine.<\/p>

The OEMPowerOff routine is part of the OAL and responsible for switching the CPU into Suspend state. OEMPowerOff should also put the RAM into self-refresh mode if the processor does not automatically do so when it enters the Suspend state. You can also set up the interrupts to wake up the device. In handheld devices, this is typically the power-button interrupt, but you may use any wakeup event source that is appropriate for your target platform.<\/p>

Entering the Suspend State<\/p> <\/div>

When entering the Suspend state, Windows Embedded CE performs the following sequence of steps:<\/p>

1. GWES notifies the Taskbar about the power down event.<\/p>

2. The system aborts calibration if in the calibration screen.<\/p>

3. The system stops the Windows message queues. After step 3, the system enters single-thread mode, which prevents function calls that rely on blocking operations.<\/p>

4. The system checks if the startup user interface (UI) must appear on resume.<\/p>

5. The system saves video memory to RAM.<\/p>

6. The system calls SetSystemPowerState (NULL, POWER_STATE_SUSPEND, POWER_FORCE).<\/p>

7. Power Manager:<\/p>

a. Calls the FileSystemPowerFunction to power off the drivers related to the file system.<\/p>

b. Calls PowerOffSystem to inform the kernel to do the final power down.<\/p>

c. Calls Sleep(0) to invoke the scheduler.<\/p>

NOTE<\/div>
FileSystemPowerFunction and PowerOffSystem<\/div>

If the OS design does not include Power Manager or GWES, then the OEM must explicitly call FileSystemPowerFunction and PowerOffSystem.<\/p> <\/cite>

8. Kernel:<\/p>

a. Unloads GWES process.<\/p>

b. Unloads Filesys.exe.<\/p>

c. Calls OEMPowerOff.<\/p>

9. OEMPowerOff configures the interrupts and puts the CPU in Suspend state.<\/p>

Waking Up from Suspend State<\/p> <\/div>

When a pre-configured interrupt wakes up the system, the associated ISR runs and returns to the OEMPowerOff routine. On returning from this function, the system goes through the resume sequence, which includes the following steps:<\/p>

1. OEMPowerOff re-configures interrupts to original state and returns.<\/p>

2. Kernel:<\/p>

a. Calls InitClock to re-initialize the system timer.<\/p>

b. Starts Filesys.exe with power on notification.<\/p>

c. Starts GWES with power on notification.<\/p>

d. Re-initializes KITL interrupt if it was in use.<\/p>

3. Power Manager calls FileSystemPowerFunction with power on notification.<\/p>

4. GWES:<\/p>

a. Restores video memory from RAM.<\/p>

b. Powers on Windows Manager.<\/p>

c. Sets the display contrast.<\/p>

d. Shows startup UI if required.<\/p>

e. Notifies Taskbar of resume.<\/p>

f. Notifies User Subsystem.<\/p>

g. Triggers applications as required.<\/p>

NOTE<\/div>
Registering wakeup sources<\/div>

If the OAL supports the kernel IOCTL_HAL_ENABLE_WAKE, applications can register wake up sources. For detailed information, see the section "IOCTL_HAL_ENABLE_WAKE" in the Windows Embedded CE 6.0 Documentation, available on the Microsoft MSDN Web site at http://msdn2.microsoft.com/en-us/library/aa914884.aspx<\/em> .<\/p> <\/cite>

Supporting the Critical Off State<\/p> <\/div>

On hardware platforms equipped with a voltage comparator that triggers NMI, you can implement support for the Critical Off state to protect the user from data loss in low-battery conditions. On x86 hardware, the kernel exports the OEMNMIHandler function to capture critical events in the system. On other systems, you might have to implement a custom IST that calls SetSystemPowerState to turn off the system gracefully with the help of Power Manager. The Critical Off state typically corresponds to the Suspend state with dynamic RAM refresh enabled.<\/p>

NOTE<\/div>
Battery level reaches zero<\/div>

When implementing Critical Off state support, make sure you trigger the NMI at a point when the system still has time to perform all power down tasks , such as powering down peripherals, putting RAM into self-refresh, perhaps setting a wakeup condition, and suspending the CPU.<\/p> <\/cite>

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Microsoft Windows Embedded CE 6.0 Exam Preparation Kit»

Представляем Вашему вниманию похожие книги на «Microsoft Windows Embedded CE 6.0 Exam Preparation Kit» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Microsoft Windows Embedded CE 6.0 Exam Preparation Kit»

Обсуждение, отзывы о книге «Microsoft Windows Embedded CE 6.0 Exam Preparation Kit» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x