Scheduler, timers এবং foreground boost Windows 11 25H2
На этой странице
সংক্ষিপ্ত উত্তর
Заголовок раздела «সংক্ষিপ্ত উত্তর»এই মানগুলি Scheduler, টাইমার রেজোলিউশন, ক্লক ইন্টারাপ্ট বিতরণ এবং DPC বাজেট নিয়ন্ত্রণ করে। শুধু নাম দেখে সম্পূর্ণ প্রভাব নির্ধারণ করা যায় না: Windows বিট মাস্ক প্রয়োগ করে এবং ইনপুট মান স্বাভাবিক করে। ভিন্ন এন্ট্রি একই অপারেটিং মোড নির্ধারণ করতে পারে।
যা পরীক্ষা করা হয়েছে
Заголовок раздела «যা পরীক্ষা করা হয়েছে»পরীক্ষা করা হয়েছে Kernel কোন Scheduler ও টাইমার প্যারামিটার পড়ে, মানগুলি কীভাবে স্বাভাবিক হয় এবং Win32PrioritySeparation-এর কোন ফিল্ড কীসের জন্য দায়ী।
исследованияর পরিধি
Заголовок раздела «исследованияর পরিধি»Windows 11 25H2 build 26200.9168, Kernel-এর Scheduler ও timer paths। নির্দিষ্ট গেম ও অ্যাপ্লিকেশন পরিমাপে অন্তর্ভুক্ত ছিল না।
Kernel প্যারামিটারের মাস্টার-টেবিল, Registry-তে runtime অ্যাক্সেস পর্যবেক্ষণ এবং বিট ফিল্ড ও মান স্বাভাবিককরণ যাচাই।
ক্যানোনিকাল প্যারামিটার
Заголовок раздела «ক্যানোনিকাল প্যারামিটার»| 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 |
Win32PrioritySeparation
Заголовок раздела «Win32PrioritySeparation»মানটি বিট ফিল্ড নিয়ে গঠিত। Kernel আলাদাভাবে সক্রিয় অ্যাপ্লিকেশনের boost (foreground boost), কোয়ান্টামের ধরন ও দৈর্ঘ্য নির্ধারণ করে। গবেষণা করা build-এ ক্লায়েন্ট Windows-এর প্রাথমিক মান 0x02। ইনপুট মানে মাস্ক 0x3F প্রয়োগ করা হয়, তাই ভিন্ন এন্ট্রি একই Scheduler মোড নির্ধারণ করতে পারে।
বিট অনুযায়ী বিট ফিল্ড বিশ্লেষণ, সমতুল্য মানের ক্যালকুলেটর এবং লেটেন্সি ও FPS-এর ঐতিহাসিক পরিমাপ আলাদা গবেষণায় সরিয়ে নেওয়া হয়েছে «Win32PrioritySeparation: задержка и FPS при полной загрузке CPU»। ব্যবহারকারীর দিকটি — নির্বাচন, প্রভাব ও প্রত্যাবর্তন — কভার করে BoosterX সেটিং পৃষ্ঠা।
প্যারামিটারটি শিডিউলিং নিয়ম পরিবর্তন করে। নির্দিষ্ট কাজে উপযোগিতা মূল্যায়ন করতে CPU লোডসহ পরীক্ষা পুনরাবৃত্তি করতে হবে এবং লেটেন্সি পরিমাপ করতে হবে; সেটিং সার্বজনীন ত্বরণের নিশ্চয়তা দেয় না।
Timer policy
Заголовок раздела «Timer policy»GlobalTimerResolutionRequests এবং সংলগ্ন টাইমার প্যারামিটার Session Manager\Kernel থেকে পড়া হয়। এগুলি টাইমার রেজোলিউশন অনুরোধের পরিধি — স্থানীয় বা সিস্টেম-ব্যাপী — এবং CPU-গুলির মধ্যে ক্লক ইন্টারাপ্ট বিতরণকে প্রভাবিত করে। সমর্থিত প্ল্যাটফর্মে CPU অনুযায়ী পৃথক ক্লক শিডিউলিং জোরপূর্বক সেটিং ছাড়াও কাজ করতে পারে।
MaxDynamicTickDuration অলস অবস্থায় ঘুমের দৈর্ঘ্য সীমাবদ্ধ করে পর্যায়ক্রমিক ক্লক ছাড়া। পরিমাপের একক 100 ন্যানোসেকেন্ড: 7500 মানে 0.75 ms, 7.5 ms নয়। উপরের সীমা অতিরিক্তভাবে বর্তমান টাইমার রেজোলিউশন দ্বারা সীমাবদ্ধ। 0xFFFFFFFF অতিরিক্ত সীমা সরিয়ে দেয়।
DisableLowQosTimerResolution নিম্ন-অগ্রাধিকার টাইমার রেজোলিউশন অনুরোধের সীমা পরিবর্তন করে। এতে স্থায়ী উচ্চ রেজোলিউশন নিজে থেকে সেট হয় না।
টাইমার নিয়ম শুধু সেই লোডের জন্য পরিবর্তন করা উচিত যা সত্যিই এমন অনুরোধ সম্পাদন করে। স্থায়ী উচ্চ রেজোলিউশন টাইমার ইন্টারাপ্টের সংখ্যা ও শক্তি খরচ বাড়ায়।
DPC budget এবং boost decay
Заголовок раздела «DPC budget এবং boost decay»DpcCumulativeSoftTimeout DPC সম্পাদনের মোট সময়ের বাজেট নির্ধারণ করে। এর স্বাভাবিককরণের সীমা, DpcWatchdogPeriod-এর সাথে সম্পর্ক এবং সংলগ্ন DPC প্যারামিটার ও worker-লিমিট গবেষণায় বিশ্লেষণ করা হয়েছে «DPC и Kernel Executive workers в Windows 11 25H2»; এখানে সেগুলি পুনরাবৃত্তি করা হয় না। ForceForegroundBoostDecay সক্রিয় অ্যাপ্লিকেশনের boost ক্ষয়ের নিয়ম পরিবর্তন করে, আর PassiveIntRealTimeWorkerPriority ইনপুট-আউটপুটের বিশেষ ওয়ার্কিং থ্রেডের অগ্রাধিকার নির্ধারণ করে। PassiveIntRealTimeWorkerPriority-এর জন্য কোড 17..21 গ্রহণ করে; এন্ট্রি না থাকলে 16 ব্যবহৃত হয়। 18 মান বৈধ এবং অগ্রাধিকার বাড়ায়।
তুলনা করার সময় পরিমাপের একক ও পরিসরের সীমা বিবেচনা করুন। Kernel অসমর্থিত মান স্বাভাবিক করে, তাই লেখা সংখ্যা প্রকৃতপক্ষে প্রয়োগকৃত মান থেকে ভিন্ন হতে পারে।
এই প্যারামিটারগুলি সিস্টেম শিডিউলিং ও ড্রাইভার ডায়াগনস্টিকসের সাথে সম্পর্কিত। DPC/ISR ট্রেস ছাড়া এগুলি ম্যানুয়ালি পরিবর্তনের নির্ভরযোগ্য ভিত্তি নেই।
- টেবিলের সমস্ত প্যারামিটারের পাঠ build
26200.9168-এরntoskrnl.exe-এ নিশ্চিত করা হয়েছে:Win32PrioritySeparationScheduler initialization ও session initialization-এ পড়া হয়, টাইমার প্যারামিটারগুলি Kernel initialization-এর পর্যায়ে। - প্রাথমিক মান ও স্বাভাবিককরণ নিশ্চিত করা হয়েছে:
Win32PrioritySeparation-এর জন্য মাস্ক0x3F,PassiveIntRealTimeWorkerPriority-এর জন্য17..21পরিসর ও16ফলব্যাক,MaxDynamicTickDuration-এর 100 ns একক। - পর্যবেক্ষণগুলি নিজেরাই গুণগত: এই গবেষণায় লেটেন্সি, FPS বা ব্যাকগ্রাউন্ড লোডের মান পরিমাপ করা হয়নি।
যা নিশ্চিত করা হয়েছে
Заголовок раздела «যা নিশ্চিত করা হয়েছে»- গবেষণা করা build-এর
ntoskrnl.exe-এ Reader ও প্যারামিটার স্বাভাবিককরণ। Win32PrioritySeparation-এর প্রাথমিক মান0x02এবং মাস্ক0x3F।- boost ও কোয়ান্টাম ফিল্ডের অর্থ,
MaxDynamicTickDuration-এর একক। 16ফলব্যাকসহPassiveIntRealTimeWorkerPriority-এর17..21পরিসরে স্বাভাবিককরণ।
যা নিশ্চিত করা হয়নি
Заголовок раздела «যা নিশ্চিত করা হয়নি»- FPS, লেটেন্সি বা প্রতিক্রিয়াশীলতার উপর পরিবর্তনের প্রভাব।
- এমন লোড ছাড়া পরিবর্তনের উপযোগিতা যা সত্যিই টাইমার ও DPC ব্যবহার করে।
ব্যবহারিক উপসংহার
Заголовок раздела «ব্যবহারিক উপসংহার»ডিফল্ট মান রাখুন। শুধু সেই লোডের জন্য প্যারামিটার পরিবর্তন করুন যা সত্যিই সংশ্লিষ্ট অনুরোধ সম্পাদন করে, এবং একই রানে ফলাফল তুলনা করুন।
অবস্থা পুনরুদ্ধার
Заголовок раздела «অবস্থা পুনরুদ্ধার»ডিফল্ট মান ফিরিয়ে আনুন বা ঐচ্ছিক এন্ট্রি মুছে ফেলুন। Kernel প্যারামিটার পরবর্তী Windows বুটে প্রয়োগ হয়।
সীমাবদ্ধতা
Заголовок раздела «সীমাবদ্ধতা»বুটের phase 0-এ পাঠ Procmon-এর রেকর্ডিং ব্যবধানে নাও পড়তে পারে। গবেষণাটি build 26200.9168-এ পড়ার কোড ও স্বাভাবিককরণ নিশ্চিত করে। নিবন্ধের ডেটায় পর্যবেক্ষণের স্বাধীন রানের সংখ্যা (বুট ও ট্রেস) নথিভুক্ত নয়, তাই Reader-দের পর্যবেক্ষণের পুনরাবৃত্তিযোগ্যতা পরিমাণগতভাবে মূল্যায়ন করা হয়নি। পারফরম্যান্স বা লেটেন্সির উপর সার্বজনীন প্রভাব প্রতিষ্ঠিত হয়নি।
গবেষণা ও ব্যবহৃত সরঞ্জামগুলি BoosterX ডেভেলপারের মালিকানাধীন, তাই ডেভেলপারের ফলাফলে সরাসরি স্বার্থ রয়েছে। পদ্ধতি ও প্রযোজ্যতার সীমা উপরে বর্ণিত, এবং সিদ্ধান্তগুলি উন্মুক্ত ডেটা ও তালিকাভুক্ত পাবলিক সূত্র থেকে যাচাই করা যায়।
- Win32PrioritySeparation, Microsoft Learn, যাচাই করা হয়েছে 2026-09-01।
- Timer resolution, Microsoft Learn, যাচাই করা হয়েছে 2026-09-01।
পাবলিক সূত্র যাচাই করা হয়েছে: 2026-09-02।
পরিবর্তনের ইতিহাস
Заголовок раздела «পরিবর্তনের ইতিহাস»- 2026-09-20: স্বার্থের সংঘাত সম্পর্কিত ডিসক্লেইমার যোগ করা হয়েছে; reviewed/modified তারিখ সমন্বয় করা হয়েছে।
- 2026-09-19: «ফলাফল» বিভাগ,
Win32PrioritySeparationও DPC/worker প্যারামিটারের গবেষণার ক্রস-রেফারেন্স এবং BoosterX সেটিং পৃষ্ঠা যোগ করা হয়েছে; পর্যবেক্ষণের রানের সংখ্যা অনুপস্থিত নথিভুক্ত করা হয়েছে। - 2026-09-02: প্রথম প্রকাশ; Reader, স্বাভাবিককরণ ও বিট ফিল্ড নিশ্চিত করা হয়েছে, ব্যবহারিক উপযোগিতার সীমা যোগ করা হয়েছে।
