Actions d’alimentation du système

Lorsque le gestionnaire d’alimentation envoie un IRP pour définir ou interroger l’état d’alimentation du système, il spécifie un état d’alimentation du système ainsi qu’un paramètre supplémentaire qui fournit des informations sur le changement d’état d’alimentation. Ce paramètre, transmis à Irp-Parameters.Power.ShutdownType>, est un énumérateur du type POWER_ACTION. L’énumérateur caractérise la demande d’état d’alimentation du système, comme indiqué dans le tableau suivant.

énumérateur POWER_ACTION État d’alimentation du système demandé

PowerActionNone

S0 ou aucun IRP d’alimentation système actif

PowerActionSleep

S1, S2 ou S3

PowerActionHibernate

S4

PowerActionShutdown (systèmes Microsoft Windows 2000 et versions ultérieures uniquement)

S5

PowerActionShutdownReset

S5

PowerActionShutdownOff

S5

Lorsqu’un pilote reçoit une requête système ou un IRP à alimentation définie pour S5, il peut case activée ShutdownType Pour plus d’informations sur l’arrêt demandé. Un pilote peut utiliser ces informations pour optimiser sa séquence d’arrêt lorsque la machine est réinitialisé au lieu d’arrêter l’alimentation indéfiniment. Les pilotes de la plupart des appareils conservent l’alimentation lorsque le système est réinitialisé. Toutefois, pour certains appareils, tels qu’un appareil de streaming vidéo qui effectue un accès direct à la mémoire (DMA), un pilote peut choisir de mettre hors tension son appareil lorsque le système est réinitialisé, arrêtant ainsi toute E/S en cours.

Lorsqu’un propriétaire de stratégie d’alimentation de l’appareil envoie un IRP d’alimentation d’appareil à sa pile d’appareils en réponse à un IRP d’alimentation système, les pilotes peuvent utiliser le paramètre ShutdownType pour obtenir des informations sur l’IRP d’alimentation système actuelle. Dans ce cas, la valeur de ShutdownType indique l’état d’alimentation du système actuellement demandé, ou powerActionNone si une demande système n’est pas en attente. Toutefois, les pilotes ne doivent pas s’appuyer sur ces informations si l’IRP de l’appareil demande l’état D0.

Dans Windows 98/Me, ce membre contient toujours PowerActionNone lorsque l’IRP demande un état d’alimentation de l’appareil.