İçeriğe geç

MMCSS, DWM ve Windows 11 25H2'de Games profili

Sayfa içeriği

MMCSS, time-sensitive multimedia tasks görevlerine CPU’ya öncelikli erişim sağlar, ancak bunları mutlak realtime’a dönüştürmez. Window Manager ve Games profilleri yalnızca ilgili görev adı altında kayıtlı olan iş parçacıklarının sınıflandırılmasını etkiler. Varsayılan değerlerin silinmesi profili geri yüklemez: koddaki daha düşük fallback değerlerini etkinleştirir.

MMCSS’in Window Manager ve Games profillerini nasıl okuduğunu, kayıtların yokluğunda hangi değerlerin geçerli olduğunu ve önceliklerin değiştirilmesi ile lazy mode’un neyi değiştirdiğini inceledik.

Windows 11 25H2 build 26200.9168, mmcss.sys ve boot-time gözlemi. Belirli workload, GPU sürücüsü ve fiziksel gecikme ölçülmedi.

mmcss.sys analizi, bootlog’da profil okumalarının gözlemlenmesi ve normalizasyon ile fallback değerlerinin kontrol edilmesi.

Kök yol:

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile

DWM profili:

...\Tasks\Window Manager

Oyun profili:

...\Tasks\Games

Value Type 25H2’de Window Manager 25H2’de Games Doğrulanmış rol
Scheduling Category REG_SZ Medium Medium Scheduler policy kategorisi
Priority REG_DWORD 5 2 1..8 aralığında görev önceliği
Priority When Yielded REG_DWORD yok, fallback 16 yok, fallback 16 CPU feragatinden sonra tavan

Kök SystemProfile değerleri:

Value Type 25H2’de durum Doğrulanmış rol
LazyModeTimeout REG_DWORD yok, fallback 1000000 100-ns birimlerinde lazy mode zamanlayıcısı
NoLazyMode REG_DWORD yok, fallback 0 Idle detector’ün devre dışı bırakılması

mmcss.sys, profil başlatılırken Scheduling Category, Priority ve Priority When Yielded değerlerini okur. Belgelenen aktif kategori bantları: Low — 8..15, Medium — 16..22, High — 23..26. High için aktif banttaki Priority değeri her zaman 2 olarak yorumlanır, bu nedenle 6 veya 8 kaydı High profilini sayının ima ettiği gibi yükseltmez.

İncelenen derlemenin temiz durumunda Games profili Medium/2, Window Manager ise Medium/5 değerine sahipti. Priority When Yielded her ikisinde de yoktu, bu nedenle fallback 16 uygulandı. High/6/13 ve High/8/13 kombinasyonları değiştirilmiş yapılandırmalardır, Windows defaults değildir. 13 değeri, fallback 16 değerine kıyasla CPU feragatinden sonra demotion’ı güçlendirir.

Faydası: profil, sınıflandırılmış iş parçacıkları için scheduler policy’yi tanımlar. Kategorinin yükseltilmesi tek başına nihai workload’un iyileştiğini kanıtlamaz; CPU için rekabeti artırabilir.

LazyModeTimeout, 100-ns birimlerinde ölçülür. Fallback 1000000 100 ms’ye eşittir; 10000 ise 1 ms’ye eşittir. Sıfır, fallback ile değiştirilir; incelenen reader’da üst clamp yoktur. NoLazyMode boolean’dır: 0 idle detector’ü etkin bırakır, sıfır olmayan herhangi bir değer onu devre dışı bırakır. NoLazyMode etkinken LazyModeTimeout yolu pratikte ulaşılamazdır, bu nedenle bu ayarlar bağımsız olarak değerlendirilemez.

Faydası: timeout’un azaltılması lazy scheduler periyodunu hızlandırır, aktif iş parçacıklarının önceliğini yükseltmez. NoLazyMode=1 idle-demotion path’i kaldırır, ancak Priority When Yielded iptal etmez ve MMCSS’i tam döngüde tutarak arka plan etkinliğini artırır.

mmcss.sys, servis/sürücü başlangıcında root ve task profiles okur. Bootlog’da NoLazyMode ve profillere yapılan erişimler gözlemlendi; eksik değerler için NAME NOT FOUND kaydedildi, ardından koddaki default uygulandı. Bu, Registry yapılandırmasının normal çalışma şeklidir.

  • 25H2 temiz yapılandırmasında Window Manager için Medium/5 ve Games için Medium/2 değerleri.
  • Scheduling Category ve Priority yokluğunda fallback Low/1 ve Priority When Yielded için 16.
  • Kategori sınırları ve High için Priority yorumu.
  • LazyModeTimeout birimleri ve fallback’i, NoLazyMode boolean davranışı.
  • Profillerin FPS, frametime ve fiziksel gecikme üzerindeki etkisi.
  • Belirli oyunlar ve uygulamalar için öncelik değişikliklerinin faydası.

Normal bir sistem için varsayılan Medium/5 ve Medium/2 değerlerini koruyun. Kesin geri dönüş için Scheduling Category ve Priority silinemez: yokluk durumundaki fallback Low/1 değerine eşittir, yani profil varsayılandan daha zayıf hale gelir. Geri dönüş, varsayılan çiftin açıkça yazılması ve isteğe bağlı Priority When Yielded değerinin silinmesiyle yapılır.

Sonuç, Windows 11 25H2 build 26200.9168 için geçerlidir; belirli workload, GPU driver ve fiziksel gecikme bu makalede ölçülmedi.

Gözlemlerin dinamik kısmının nasıl tekrarlanacağı — bkz. Kendiniz nasıl kontrol edersiniz.

Araştırma ve kullanılan araçlar BoosterX geliştiricisine aittir, bu nedenle geliştiricinin sonuçlarda doğrudan çıkarı vardır. Yöntem ve uygulanabilirlik sınırları yukarıda açıklanmıştır ve sonuçlar açık veriler ile listelenen kamuya açık kaynaklardan doğrulanabilir.

Kamuya açık kaynaklar kontrol edildi: 2026-09-02.

  • 2026-09-20: çıkar çatışması hakkında disklaimer ve yöntemde dinamik gözlemlerin bağımsız kontrolüne yönelik bağlantı eklendi.
  • 2026-09-02: ilk yayın; profil okuma, defaults ve fallback değerleri doğrulandı, pratik etkinin sınırları eklendi.