Windows 11 25H2 में DPC और Kernel Executive workers
इस पृष्ठ पर
संक्षिप्त उत्तर
Section titled “संक्षिप्त उत्तर”DpcQueueDepth समूह, worker limits और watchdog-पैरामीटर को अक्सर सार्वभौमिक latency tweaks का एक सेट माना जाता है। वास्तव में ये kernel की आंतरिक सीमाएँ और सुरक्षात्मक तंत्र हैं। इनका प्रभाव केवल किसी विशिष्ट DPC queue, processors की संख्या, driver के प्रकार या worker त्रुटि की स्थिति में ही प्रकट होता है।
क्या जाँचा गया
Section titled “क्या जाँचा गया”जाँचा गया कि kernel कौन-सी DPC, worker threads और watchdog सीमाएँ पढ़ता है, मान कैसे सामान्यीकृत होते हैं और ये तंत्र वास्तव में कहाँ लागू होते हैं।
अनुसंधान का क्षेत्र
Section titled “अनुसंधान का क्षेत्र”Windows 11 25H2 build 26200.9168, शाखाएँ Session Manager\Kernel और Session Manager\Executive। हार्डवेयर-निर्भर फ़ंक्शन और विशिष्ट drivers मापन में शामिल नहीं थे।
कार्यप्रणाली
Section titled “कार्यप्रणाली”ntoskrnl.exe का स्थिर विश्लेषण: readers और consumers की खोज, मानों की श्रेणियों और सामान्यीकरण की जाँच; Microsoft के सार्वजनिक दस्तावेज़ों से मिलान।
विहित पथ और मान
Section titled “विहित पथ और मान”DPC और watchdog का पथ:
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel
| Value | Type | Default/normalization | क्या नियंत्रित करता है |
|---|---|---|---|
DpcQueueDepth |
REG_DWORD |
4 |
DPC queue की गहराई |
MinimumDpcRate |
REG_DWORD |
3 |
DPC प्रोसेसिंग की न्यूनतम दर |
IdealDpcRate |
REG_DWORD |
20 |
लक्षित DPC rate |
AdjustDpcThreshold |
REG_DWORD |
20 |
DPC policy अनुकूलन की सीमा |
ThreadDpcEnable |
REG_DWORD |
1 |
thread-DPC processing |
DpcWatchdogPeriod |
REG_DWORD |
120000 |
DPC watchdog period |
DpcCumulativeSoftTimeout |
REG_DWORD |
120000 अध्ययन किए गए build में |
संचित soft budget |
PassiveWatchdogTimeout |
REG_DWORD |
300 सेकंड |
KD के दौरान passive-level watchdog |
ForceIdleGracePeriod |
REG_DWORD |
5 सेकंड |
force-idle grace period |
PerfIsoEnabled |
REG_DWORD |
0 |
performance isolation |
CacheIsoBitmap |
REG_DWORD |
0 |
Intel CAT L3 mask |
SchedulerAssistThreadFlagOverride |
REG_DWORD |
0 |
scheduler assist override |
VpThreadSystemWorkPriority |
REG_DWORD |
30, श्रेणी 1..31 |
virtual processor work priority |
AlwaysTrackIoBoosting |
REG_DWORD |
0 |
नैदानिक I/O boost tracking |
Kernel Executive workers का पथ:
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Executive
| Value | Type | Default/normalization | क्या नियंत्रित करता है |
|---|---|---|---|
AdditionalCriticalWorkerThreads |
REG_DWORD |
0, clamp 0..100 |
अतिरिक्त critical workers |
AdditionalDelayedWorkerThreads |
REG_DWORD |
0, clamp 0..100 |
delayed workers |
MaximumKernelWorkerThreads |
REG_DWORD |
4096, 32..16384 |
kernel workers की ऊपरी सीमा |
ForceEnableMutantAutoboost |
REG_DWORD |
0 |
mutant autoboost |
WorkerThreadTimeoutInSeconds |
REG_DWORD |
600, 60..3600 |
worker timeout |
Session Manager\Kernel और Session Manager\Executive भिन्न configuration शाखाएँ हैं। प्रत्येक मान के लिए वह पथ महत्वपूर्ण है जिसे इस build में kernel का reader खोलता है।
DPC queue और rates
Section titled “DPC queue और rates”kernel queue नियंत्रण और DPC processing के अनुकूलन के लिए DpcQueueDepth, MinimumDpcRate, IdealDpcRate और AdjustDpcThreshold का उपयोग करता है। जाँचे गए defaults 4/3/20/20 पहले से ही Windows 11 25H2 की मानक स्थिति से मेल खाते हैं; इन संख्याओं को दोबारा लिखने से कुछ नहीं बदलता।
उपयोगिता: ये पैरामीटर किसी विशिष्ट DPC backlog के विश्लेषण में उपयोगी हो सकते हैं, लेकिन ETW/WPR-ट्रेस के बिना आँख मूँदकर बदलाव करना कारण का निदान नहीं करता। बड़ी queue प्रोसेसिंग को टाल सकती है और विलंबता की पूँछ बढ़ा सकती है।
Thread DPC और worker limits
Section titled “Thread DPC और worker limits”ThreadDpcEnable=1 threaded-DPC infrastructure को सक्षम करता है, 0 कार्य को सामान्य DIRQL path में लौटाता है और interrupt-off विंडो को लंबा कर सकता है। MaximumKernelWorkerThreads कुल kernel workers पूल को सीमित करता है। AdditionalCriticalWorkerThreads और AdditionalDelayedWorkerThreads आधार पूल में जोड़े जाते हैं: client Windows पर ये override लागू होने से पहले क्रमशः 5 critical और 7 delayed workers होते हैं।
अधिक threads का अर्थ कम latency नहीं है: अतिरिक्त workers stack, scheduler time और cache resources खपत करते हैं, और queue किसी अन्य घटक द्वारा सीमित हो सकती है। AdditionalDelayedWorkerThreads=32 वास्तव में delayed workers जोड़ता है, लेकिन कोई मापा गया सार्वभौमिक लाभ नहीं है।
Watchdog और timeout
Section titled “Watchdog और timeout”DpcCumulativeSoftTimeout DPC के संचित समय को सीमित करता है। DpcWatchdogPeriod=0 मान्य है और इस watchdog को बंद कर देता है; 2000 से नीचे कोई भी अशून्य मान 2000 ms बन जाता है। PassiveWatchdogTimeout का उपयोग केवल सक्षम kernel debugger के साथ होता है, इसलिए सामान्य सिस्टम पर यह timer मानक 300 सेकंड के साथ भी सक्रिय नहीं होता। WorkerThreadTimeoutInSeconds worker operation के हैंग होने को सीमित करता है।
DpcCumulativeSoftTimeout की निचली सीमा 2000 ms है और यह DpcWatchdogPeriod से अधिक नहीं हो सकता। 240000 मान प्राप्त करने के लिए watchdog period भी 240000 होना चाहिए। WorkerThreadTimeoutInSeconds 60..3600 सेकंड की श्रेणी में सामान्यीकृत होता है; 0 लिखने से timeout बंद नहीं होता, बल्कि न्यूनतम मान पर आ जाता है।
सुरक्षात्मक timeout बंद करने से निदान हट जाता है, लेकिन अवरोध का कारण ठीक नहीं होता। production-सिस्टम के लिए watchdog दोषपूर्ण drivers का पता लगाने वाले तंत्र का हिस्सा है।
Kernel Executive policy
Section titled “Kernel Executive policy”ForceEnableMutantAutoboost शाखा Executive में है, जबकि ForceIdleGracePeriod, PerfIsoEnabled, CacheIsoBitmap, SchedulerAssistThreadFlagOverride, VpThreadSystemWorkPriority और AlwaysTrackIoBoosting शाखा Kernel से पढ़े जाते हैं। यह अंतर महत्वपूर्ण है: पड़ोसी subkey में समान नाम वाली प्रविष्टि लागू नहीं होती।
CacheIsoBitmap का उपयोग केवल Intel Resource Director/CAT समर्थन के साथ होता है; CAT के बिना यह मान isolation नहीं बनाता। SchedulerAssistThreadFlagOverride=0 और 1 स्वचालित सक्रियण छोड़ते हैं, 2 शाखा को जबरन बंद करता है। VpThreadSystemWorkPriority 1..31 की अनुमति देता है, अन्यथा 1 पर रीसेट हो जाता है; default 30, और 31 केवल ऊपरी सीमा है। AlwaysTrackIoBoosting=1 boost paths पर नैदानिक allocation और stack-capture सक्षम करता है, न कि I/O priority को ऊँचा बनाए रखता है।
उपयोगिता: पुष्ट consumer के बिना प्रभाव आमतौर पर अनुपस्थित होता है या व्यावहारिक निर्णय के लिए बहुत छोटा होता है। ऐसे मान सामान्य optimization सेट के रूप में नहीं, बल्कि अलग kernel-निदान की वस्तु के रूप में उपयोगी हैं।
परिणाम
Section titled “परिणाम”जाँचे गए defaults 4/3/20/20 Windows 11 25H2 की मानक स्थिति से मेल खाते हैं। अतिरिक्त workers डिफ़ॉल्ट रूप से शून्य हैं, kernel workers की ऊपरी सीमा 4096 है जिसकी श्रेणी 32..16384 है। Watchdog-पैरामीटर सामान्यीकृत होते हैं: 2000 ms से नीचे का मान 2000 बन जाता है, और DpcCumulativeSoftTimeout watchdog period से अधिक नहीं होता। शाखाएँ Kernel और Executive परस्पर विनिमेय नहीं हैं।
क्या पुष्ट हुआ
Section titled “क्या पुष्ट हुआ”- अध्ययन किए गए build के
ntoskrnl.exeमें पैरामीटरों के readers और consumers। - डिफ़ॉल्ट मान और सामान्यीकरण की सीमाएँ, जिनमें watchdog-पैरामीटरों के बीच निर्भरताएँ शामिल हैं।
- शाखाओं
KernelऔरExecutiveका पृथक्करण: पड़ोसी subkey में समान नाम वाली प्रविष्टि लागू नहीं होती।
क्या पुष्ट नहीं हुआ
Section titled “क्या पुष्ट नहीं हुआ”- पैरामीटर बदलने का FPS, विलंबता या प्रतिक्रियाशीलता पर प्रभाव।
- पुष्ट DPC queue या worker समस्या के बिना सीमाएँ बदलने का लाभ।
व्यावहारिक निष्कर्ष
Section titled “व्यावहारिक निष्कर्ष”इन पैरामीटरों को आँख मूँदकर न बदलें: ETW/WPR-ट्रेस के बिना backlog का कारण निर्धारित नहीं किया जा सकता। कार्यशील सिस्टम के लिए watchdog सक्षम रखें, और पैरामीटरों का उपयोग optimization सेट के रूप में नहीं, बल्कि निदान के लिए करें।
स्थिति की पुनर्स्थापना
Section titled “स्थिति की पुनर्स्थापना”मानक मान लौटाएँ या वैकल्पिक प्रविष्टियाँ हटाएँ। kernel पैरामीटर Windows के अगले बूट पर लागू होते हैं।
स्रोत और सीमाएँ
Section titled “स्रोत और सीमाएँ”Readers और consumers Windows 11 25H2 build 26200.9168 के ntoskrnl.exe में जाँचे गए। offsets या pseudocode प्रकाशित नहीं किए जाते। अंतिम उपयोगकर्ता मेट्रिक्स इस श्रृंखला में शामिल नहीं थे।
- DPCs and threads, Microsoft Learn, जाँचा गया 2026-09-01।
- Bug checks 0x133 DPC_WATCHDOG_VIOLATION, Microsoft Learn, जाँचा गया 2026-09-01।
अवलोकनों के गतिशील भाग को कैसे दोहराया जाए — देखें स्वयं कैसे जाँचें।
अनुसंधान और प्रयुक्त उपकरण BoosterX के डेवलपर के हैं, इसलिए डेवलपर का परिणामों में सीधा हित है। कार्यप्रणाली और लागू होने की सीमाएँ ऊपर वर्णित हैं, और निष्कर्षों को खुले डेटा तथा सूचीबद्ध सार्वजनिक स्रोतों से जाँचा जा सकता है।
सार्वजनिक स्रोत जाँचे गए: 2026-09-02।
परिवर्तन इतिहास
Section titled “परिवर्तन इतिहास”- 2026-09-20: «परिणाम» अनुभाग को «स्थिति की पुनर्स्थापना» से पहले अनिवार्य स्थान पर ले जाया गया; हितों के टकराव का डिस्क्लेमर और कार्यप्रणाली में गतिशील अवलोकनों की स्वतंत्र जाँच का लिंक जोड़ा गया।
- 2026-09-02: पहला प्रकाशन; readers, defaults और clamps की पुष्टि की गई, व्यावहारिक उपयोगिता की सीमाएँ जोड़ी गईं।
