THERMAL_POLICY
Die THERMAL_POLICY-Struktur wird mit dem E/A-Steuerungscode IOCTL_THERMAL_READ_POLICY verwendet. Richtlinientreiber verwenden IOCTL_THERMAL_READ_POLICY, um die Wärmerichtlinie für die zugeordnete Thermozone festzulegen. Wenn keine Wärmerichtlinie angegeben ist, verwendet der Kernel die Richtlinien, die von den ACPI-Objekten und -Methoden angegeben werden, die unter der Thermozone deklariert und in der ACPI-Spezifikation beschrieben sind.
Syntax
C++ |
---|
|
Member
Version
Gibt die Version der Richtlinienstruktur an. Die aktuelle Version ist THERMAL_POLICY_VERSION_1.
WaitForUpdate
Gibt an, ob der Richtlinientreiber den E/A-Steuerungscode (IOCTL) IOCTL_THERMAL_READ_POLICY sofort abschließen soll. Wenn der Zustand aktuell ist und WaitForUpdate den Wert TRUE hat, sollte der Richtlinientreiber den IOCTL in einem abbrechbaren Zustand schreiben, bis eine seiner Richtlinieneinstellungen geändert wird. Zu diesem Zeitpunkt sollte der IOCTL mit den neuen Einstellungen abgeschlossen werden soll. Wenn der Status nicht auf dem neuesten Stand ist oder WaitForUpdate den Wert FALSE hat, sollte der Richtlinientreiber sofort den IOCTL mit den neuen Einstellungen abschließen.
Ruhezustand
Der Richtlinientreiber gibt mit TRUE an, dass das System in den Ruhezustand wechseln soll, um eine thermische Ausnahmesituation zu beheben. Nachdem die thermische Ausnahme behoben wurde, sollte der Richtlinientreiber dieses Element auf FALSE festlegen. Wenn das System den Ruhezustand nicht unterstützt oder wenn der Ruhezustand deaktiviert ist, wird das System stattdessen heruntergefahren.
Critical (Kritisch)
Der Richtlinientreiber gibt mit TRUE an, dass das System heruntergefahren werden soll, um eine thermische Ausnahmesituation zu beheben.
ThermalStandby
Der Richtlinientreiber gibt mit TRUE an, dass das System in den Standbymodus wechseln soll, um eine thermische Ausnahmesituation zu beheben. Nachdem die thermische Ausnahme behoben wurde, sollte der Richtlinientreiber dieses Element auf FALSE festlegen.
ActivationReasons
Gibt an, warum die Thermozone gedrosselt ist.
0x00000000
Gibt an, dass die Zone nicht gedrosselt ist.
#define TZ_ACTIVATION_REASON_THERMAL 0x00000001
Gibt an, dass die Zone aus thermischen Gründen gedrosselt ist.
#define TZ_ACTIVATION_REASON_CURRENT 0x00000002
Gibt an, dass die Zone gedrosselt ist, da das System keine ausreichende Energie liefern kann.
PassiveLimit
Gibt den Betrag an, um den die Thermozone gedrosselt werden soll. 100 stellt nicht gedrosselt dar, während 0 vollständig gedrosselt ist.
ActiveLevel
Gibt den Index (0–9) der aktuell aktiven Kühlgeräte an, die verwendet werden sollen. Das Festlegen von ActiveLevel auf 4 würde beispielsweise alle Geräte in der Geräteliste _AL4 der Thermozone sowie alle Listen mit höher indizierten Geräten (_AL5 usw.) einbeziehen. Bei Angabe von 10 werden alle aktiven Kühlgeräte deaktiviert.