تخطَّ إلى المحتوى

Scheduler وtimers وforeground boost في Windows 11 25H2

على هذه الصفحة

تتحكم هذه القيم في المُجدول، والسماح بدقة المؤقتات، وتوزيع نبضات الساعة، وميزانية DPC. لا يمكن تحديد التأثير الكامل من الاسم وحده: يطبّق Windows أقنعة بتية ويُطبّع قيم الإدخال. قد تحدد إدخالات مختلفة وضع تشغيل واحدًا.

فُحصت معاملات المُجدول والمؤقتات التي يقرأها النواة، وكيفية تطبيع القيم، وأي حقول Win32PrioritySeparation مسؤولة عن ماذا.

Windows 11 25H2 build 26200.9168، ومسارات المُجدول والمؤقتات في النواة. لم تشمل القياسات ألعابًا أو تطبيقات محددة.

جدول رئيسي لمعاملات النواة، ومراقبة استدعاءات وقت التشغيل إلى Registry، والتحقق من الحقول البتية وتطبيع القيم.

Registry path Value Type Default Reader/timing
HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl Win32PrioritySeparation REG_DWORD 0x02 ntoskrnl.exe، ثم session initialization
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel GlobalTimerResolutionRequests REG_DWORD 0 kernel phase-0
المسار نفسه MaxDynamicTickDuration REG_DWORD 0xFFFFFFFF dynamic tick duration limit
المسار نفسه EnablePerCpuClockTickScheduling REG_DWORD 0 phase-1 clock init
المسار نفسه DisableLowQosTimerResolution REG_DWORD 1 timer policy init
المسار نفسه DpcCumulativeSoftTimeout REG_DWORD 120000 DPC budget init
المسار نفسه ForceForegroundBoostDecay REG_DWORD 0 scheduler init
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\I/O System PassiveIntRealTimeWorkerPriority REG_DWORD 16 I/O worker init

تتكون القيمة من حقول بتية. تحدد النواة بشكل منفصل تعزيز التطبيق النشط (foreground boost)، ونوع الكم ومدة الكم. في البنية المفحوصة، القيمة الأولية لـ Windows العميل تساوي 0x02. يُطبَّق على قيمة الإدخال القناع 0x3F، لذلك قد تحدد إدخالات مختلفة وضع مُجدول واحدًا.

تحليل الحقول البتية بتًا بتًا، وحاسبة القيم المكافئة، والقياسات التاريخية للزمن التأخيري وFPS، نُقلت إلى بحث منفصل «Win32PrioritySeparation: زمن التأخير وFPS عند التحميل الكامل لـ CPU». أما الجانب الخاص بالمستخدم — الاختيار والتأثير والإرجاع — فتغطيه صفحة إعداد BoosterX.

يغيّر المعامل قواعد الجدولة. لتقييم الفائدة في مهمة محددة، يجب تكرار الاختبار مع تحميل CPU وقياس زمن التأخير؛ لا يضمن الإعداد تسريعًا شاملًا.

يُقرأ GlobalTimerResolutionRequests والمعاملات المجاورة للمؤقتات من Session Manager\Kernel. تؤثر في نطاق طلبات السماح بدقة المؤقت، محليًا أو على مستوى النظام، وفي توزيع نبضات الساعة بين CPU. على المنصات المدعومة، قد تعمل الجدولة المنفصلة لنبضات الساعة حسب CPU دون إعداد إجباري.

يحدّ MaxDynamicTickDuration من مدة النوم في وضع الخمول دون نبضات دورية. وحدة القياس هي 100 نانوثانية: 7500 تعني 0.75 ms، وليس 7.5 ms. ويُقيَّد الحد الأعلى إضافةً بدقة المؤقت الحالية. و0xFFFFFFFF يرفع الحد الإضافي.

يغيّر DisableLowQosTimerResolution القيد الخاص بطلبات السماح بدقة المؤقت منخفضة الأولوية. ومع ذلك، لا تُضبط دقة عالية ثابتة بحد ذاتها.

لا ينبغي تغيير قواعد المؤقتات إلا لتحميل ينفّذ فعلاً مثل هذه الطلبات. فالدقة العالية الثابتة تزيد عدد نبضات المؤقت واستهلاك الطاقة.

يحدد DpcCumulativeSoftTimeout ميزانية الزمن الإجمالي لتنفيذ DPC. وقد فُحصت حدود تطبيعه، وعلاقته بـ DpcWatchdogPeriod، والمعاملات المجاورة لـ DPC وحدود worker، في بحث «DPC وKernel Executive workers في Windows 11 25H2»؛ ولا يُعاد سردها هنا. ويغيّر ForceForegroundBoostDecay قواعد تلاشي تعزيز التطبيق النشط، ويحدد PassiveIntRealTimeWorkerPriority أولوية خيط عمل الإدخال/الإخراج الخاص. وبالنسبة إلى PassiveIntRealTimeWorkerPriority يقبل الكود 17..21؛ وعند غياب الإدخال تُستخدم 16. والقيمة 18 مقبولة وترفع الأولوية.

عند المقارنة، ضع في الحسبان وحدات القياس وحدود النطاقات. فالنواة تُطبّع القيم غير المدعومة، لذلك قد يختلف الرقم المكتوب عن الرقم المطبَّق فعليًا.

تتعلق هذه المعاملات بجدولة النظام وتشخيص برامج التشغيل. وبدون تتبع DPC/ISR لا توجد أسس موثوقة لتغييرها يدويًا.

  • تأكدت قراءة جميع معاملات الجدول في ntoskrnl.exe البنية 26200.9168: يُقرأ Win32PrioritySeparation عند تهيئة المُجدول وsession initialization، وتُقرأ معاملات المؤقتات في مراحل تهيئة النواة.
  • تأكدت القيم الأولية والتطبيع: القناع 0x3F لـ Win32PrioritySeparation، والنطاق 17..21 مع القيمة الاحتياطية 16 لـ PassiveIntRealTimeWorkerPriority، ووحدة 100 نانوثانية لـ MaxDynamicTickDuration.
  • الملاحظات نفسها نوعية: لم تُقس في هذا البحث قيم زمن التأخير أو FPS أو التحميل الخلفي.
  • Readers وتطبيع المعاملات في ntoskrnl.exe البنية المفحوصة.
  • القيمة الأولية 0x02 لـ Win32PrioritySeparation والقناع 0x3F.
  • معنى حقلي boost والكمات، ووحدات MaxDynamicTickDuration.
  • تطبيع PassiveIntRealTimeWorkerPriority إلى النطاق 17..21 مع القيمة الاحتياطية 16.
  • تأثير التغيير على FPS أو زمن التأخير أو الاستجابة.
  • فائدة التغيير دون تحميل يستخدم فعلاً المؤقتات وDPC.

اترك القيم الافتراضية. لا تغيّر المعاملات إلا لتحميل ينفّذ فعلاً الطلبات المعنية، وقارن النتائج في تشغيلات متطابقة.

أعد القيم الافتراضية أو احذف الإدخالات الاختيارية. تُطبَّق معاملات النواة عند التحميل التالي لـ Windows.

قد لا تقع القراءات في المرحلة 0 من التحميل ضمن نطاق تسجيل Procmon. ويؤكد البحث كود القراءة والتطبيع على البنية 26200.9168. ولم يُثبَّت في بيانات المقال عدد تشغيلات المراقبة المستقلة (التحميلات والتتبعات)، لذلك لم يُقيَّم كميًا تكرار الملاحظات نفسها لدى القراء. ولم يُثبَت تأثير شامل على الأداء أو زمن التأخير.

يعود البحث والأدوات المستخدمة إلى مطوّر BoosterX، لذلك لدى المطوّر مصلحة مباشرة في النتائج. وقد وُصفت المنهجية وحدود قابلية التطبيق أعلاه، ويمكن التحقق من الاستنتاجات عبر البيانات المفتوحة والمصادر العامة المذكورة.

تم التحقق من المصادر العامة: 2026-09-02.

  • 2026-09-20: أُضيف إخلاء مسؤولية بشأن تضارب المصالح؛ ووُحّدت تواريخ reviewed/modified.
  • 2026-09-19: أُضيف قسم «النتائج»، وإحالات مرجعية متقاطعة إلى أبحاث Win32PrioritySeparation ومعاملات DPC/worker، وصفحة إعداد BoosterX؛ وثُبّت غياب عدد تشغيلات المراقبة.
  • 2026-09-02: النشر الأول؛ تأكدت readers والتطبيع والحقول البتية، وأُضيفت حدود الفائدة العملية.