Plānotājs, taimeri un foreground boost Windows 11 25H2
Šajā lapā
Īsā atbilde
Section titled “Īsā atbilde”Šīs vērtības pārvalda plānotāju, taimeru izšķirtspēju, takts pārtraukumu sadalījumu un DPC budžetu. Pēc viena nosaukuma nevar noteikt visu efektu: Windows izmanto bitu maskas un normalizē ievades vērtības. Dažādi ieraksti var noteikt vienādu darbības režīmu.
Kas tika pārbaudīts
Section titled “Kas tika pārbaudīts”Tika pārbaudīts, kādus plānotāja un taimeru parametrus kodols nolasa, kā tiek normalizētas vērtības un kuri Win32PrioritySeparation lauki par ko atbild.
Pētījuma joma
Section titled “Pētījuma joma”Windows 11 25H2 build 26200.9168, kodola scheduler un timer paths. Konkrētas spēles un lietotnes mērījumos netika iekļautas.
Metodika
Section titled “Metodika”Kodola parametru meistartabula, runtime pieprasījumu uz Registry novērošana un bitu lauku un vērtību normalizācijas pārbaude.
Kanoniskie parametri
Section titled “Kanoniskie parametri”| Registry path | Value | Type | Default | Reader/timing |
|---|---|---|---|---|
HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl |
Win32PrioritySeparation |
REG_DWORD |
0x02 |
ntoskrnl.exe, pēc tam session initialization |
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel |
GlobalTimerResolutionRequests |
REG_DWORD |
0 |
kernel phase-0 |
| tas pats ceļš | MaxDynamicTickDuration |
REG_DWORD |
0xFFFFFFFF |
dynamic tick duration limit |
| tas pats ceļš | EnablePerCpuClockTickScheduling |
REG_DWORD |
0 |
phase-1 clock init |
| tas pats ceļš | DisableLowQosTimerResolution |
REG_DWORD |
1 |
timer policy init |
| tas pats ceļš | DpcCumulativeSoftTimeout |
REG_DWORD |
120000 |
DPC budget init |
| tas pats ceļš | ForceForegroundBoostDecay |
REG_DWORD |
0 |
scheduler init |
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\I/O System |
PassiveIntRealTimeWorkerPriority |
REG_DWORD |
16 |
I/O worker init |
Win32PrioritySeparation
Section titled “Win32PrioritySeparation”Vērtība sastāv no bitu laukiem. Kodols atsevišķi nosaka aktīvās lietotnes pastiprinājumu (foreground boost), kvanta tipu un ilgumu. Pētītajā buildā klienta Windows sākotnējā vērtība ir 0x02. Ievades vērtībai tiek piemērota maska 0x3F, tāpēc dažādi ieraksti var noteikt vienu plānotāja režīmu.
Bitu lauku sadalījums pa bitiem, ekvivalentu vērtību kalkulators un vēsturiskie aiztures un FPS mērījumi ir izcelti atsevišķā pētījumā «Win32PrioritySeparation: aizture un FPS pie pilnas CPU noslodzes». Lietotāja pusi — izvēli, efektu un atgriešanu — nosedz BoosterX iestatījuma lapa.
Parametrs maina plānošanas noteikumus. Lai novērtētu lietderību konkrētā uzdevumā, jāatkārto tests ar CPU noslodzi un jāmēra aizture; iestatījums negarantē universālu paātrinājumu.
Timer policy
Section titled “Timer policy”GlobalTimerResolutionRequests un blakus esošie taimeru parametri tiek nolasīti no Session Manager\Kernel. Tie ietekmē taimera izšķirtspējas pieprasījumu darbības jomu, lokālu vai visas sistēmas, un takts pārtraukumu sadalījumu starp CPU. Atbalstītajās platformās atsevišķa taktu plānošana pa CPU var darboties arī bez piespiedu iestatīšanas.
MaxDynamicTickDuration ierobežo miega ilgumu dīkstāvē bez periodiskiem taktiem. Mērvienība ir 100 nanosekundes: 7500 nozīmē 0.75 ms, nevis 7.5 ms. Augšējo robežu papildus ierobežo pašreizējā taimera izšķirtspēja. 0xFFFFFFFF noņem papildu ierobežojumu.
DisableLowQosTimerResolution maina ierobežojumu zemas prioritātes taimera izšķirtspējas pieprasījumiem. Pastāvīga augsta izšķirtspēja pati par sevi netiek iestatīta.
Taimeru noteikumus ir vērts mainīt tikai tādai noslodzei, kas patiešām izpilda šādus pieprasījumus. Pastāvīga augsta izšķirtspēja palielina taimera pārtraukumu skaitu un enerģijas patēriņu.
DPC budget un boost decay
Section titled “DPC budget un boost decay”DpcCumulativeSoftTimeout nosaka DPC kopējā izpildes laika budžetu. Tā normalizācijas robežas, saistība ar DpcWatchdogPeriod un blakus esošie DPC parametri un worker limiti ir analizēti pētījumā «DPC un Kernel Executive workers Windows 11 25H2»; šeit tie netiek pārstāstīti. ForceForegroundBoostDecay maina aktīvās lietotnes pastiprinājuma vājināšanās noteikumus, bet PassiveIntRealTimeWorkerPriority nosaka īpašā ievades-izvades darba pavediena prioritāti. PassiveIntRealTimeWorkerPriority kods pieņem 17..21; ja ieraksta nav, tiek izmantots 16. Vērtība 18 ir pieļaujama un paaugstina prioritāti.
Salīdzinot, ņemiet vērā mērvienības un diapazonu ierobežojumus. Kodols normalizē neatbalstītas vērtības, tāpēc ierakstītais skaitlis var atšķirties no faktiski piemērotā.
Šie parametri attiecas uz sistēmas plānošanu un draiveru diagnostiku. Bez DPC/ISR trasējuma nav droša pamata to manuālai maiņai.
Rezultāti
Section titled “Rezultāti”- Visu tabulas parametru nolasīšana apstiprināta
ntoskrnl.exebuildā26200.9168:Win32PrioritySeparationtiek nolasīts plānotāja inicializācijā un session initialization, taimeru parametri — kodola inicializācijas fāzēs. - Apstiprinātas sākotnējās vērtības un normalizācija: maska
0x3FpriekšWin32PrioritySeparation, diapazons17..21ar rezerves16priekšPassiveIntRealTimeWorkerPriority, 100 ns mērvienībaMaxDynamicTickDuration. - Paši novērojumi ir kvalitatīvi: aiztures, FPS vai fona noslodzes vērtības šajā pētījumā netika mērītas.
Kas apstiprināts
Section titled “Kas apstiprināts”- Readers un parametru normalizācija
ntoskrnl.exepētītajā buildā. - Sākotnējā vērtība
0x02priekšWin32PrioritySeparationun maska0x3F. - Boost un kvantu lauku nozīme,
MaxDynamicTickDurationmērvienības. PassiveIntRealTimeWorkerPrioritynormalizācija līdz diapazonam17..21ar rezerves16.
Kas nav apstiprināts
Section titled “Kas nav apstiprināts”- Izmaiņu ietekme uz FPS, aizturi vai atsaucību.
- Izmaiņu lietderība bez noslodzes, kas patiešām izmanto taimerus un DPC.
Praktiskais secinājums
Section titled “Praktiskais secinājums”Atstājiet standarta vērtības. Mainiet parametrus tikai tādai noslodzei, kas patiešām izpilda attiecīgos pieprasījumus, un salīdziniet rezultātus vienādos palaidienos.
Stāvokļa atjaunošana
Section titled “Stāvokļa atjaunošana”Atgrieziet standarta vērtības vai izdzēsiet neobligātos ierakstus. Kodola parametri tiek piemēroti nākamajā Windows palaišanā.
Ierobežojumi
Section titled “Ierobežojumi”Nolasījumi 0. palaišanas fāzē var neiekļūt Procmon ierakstīšanas intervālā. Pētījums apstiprina nolasīšanas kodu un normalizāciju buildā 26200.9168. Neatkarīgu novērojumu palaidienu skaits (palaišanas un trases) raksta datos nav fiksēts, tāpēc pašu lasītāju novērojumu atkārtojamība kvantitatīvi netika novērtēta. Universāla ietekme uz veiktspēju vai aizturi nav konstatēta.
Pētījums un izmantotie rīki pieder BoosterX izstrādātājam, tāpēc izstrādātājam ir tieša interese par rezultātiem. Metodika un piemērojamības robežas ir aprakstītas iepriekš, un secinājumus var pārbaudīt pēc atvērtajiem datiem un uzskaitītajiem publiskajiem avotiem.
- Win32PrioritySeparation, Microsoft Learn, pārbaudīts 2026-09-01.
- Timer resolution, Microsoft Learn, pārbaudīts 2026-09-01.
Publiskie avoti pārbaudīti: 2026-09-02.
Izmaiņu vēsture
Section titled “Izmaiņu vēsture”- 2026-09-20: pievienots interešu konflikta atruna; saskaņoti reviewed/modified datumi.
- 2026-09-19: pievienota sadaļa «Rezultāti», savstarpējas atsauces uz pētījumiem
Win32PrioritySeparationun DPC/worker parametriem un BoosterX iestatījuma lapa; fiksēta novērojumu palaidienu skaita neesamība. - 2026-09-02: pirmā publikācija; apstiprināti readers, normalizācija un bitu lauki, pievienotas praktiskās lietderības robežas.
