Windows 10'da Ntoskrnl.exe (Sistem) İşlemi Tarafından Yüksek CPU Kullanımı
Windows 10'un yeni yüklendiği bilgisayarlardan birinde, bir kullanıcı işletim sisteminin sürekli kapanmasından ve yavaş çalışmasından şikayet etmeye başladı. Görev Yöneticisi, CPU kaynaklarının yaklaşık %50'sinin System (ntoskrnl.exe) işlemi tarafından kullanıldığını gösteriyor. Bu makalede, farklı işlemlerle yüksek CPU kullanımının ana teşhis yöntemlerini ve sorunlu Windows bileşenini veya sistem sürücüsünü bulmanın yollarını açıklamaya çalışacağım.
Sistem işleminin sistemin CPU kaynaklarının yarısından fazlasını tüketmesi normal değildir. Ntoskrnl.exe işletim sistemi çekirdeğinin yürütülebilir dosyasıdır. Çekirdek sistem sürecidir. İşletim sistemi çekirdeği, aygıtların sorunun kaynağı olması muhtemel sistem sürücülerini çalıştırır (tüm sürücüler donanım geliştiricileri tarafından uygun şekilde test edilmez).
Kural olarak, sürücü kodunda sızıntı sorunu ve CPU, bellek veya disk kaynaklarının yüksek kullanımı, yeni donanım, yeni sürücü sürümü (devre dışı bırakılabilen otomatik sürücü güncellemeleri dahil) veya Windows güncellemesinden sonra ortaya çıkar.
İpucu. Bazı durumlarda, CPU ve bellek üzerindeki yüksek yük, Sıkıştırılmış Bellek işlemine neden olabilir.
Hangi sürücünün veya modülün yüksek CPU kullanımına neden olduğunu anlamak için ücretsiz bir Process Explorer aracını kullanabilirsiniz. İndirin ve yönetici olarak çalıştırın.
Çalışan işlemler listesinde Sistem'i bulun, sağ tıklayın ve Özellikler'i açın.
Konu Dizileri sekmesine gidin. Çekirdek tarafından yüklenen modüllerin listesini CPU kullanım oranına (CPU sütunu) göre sıralayın. Başlangıç Adresi sütununda, yüksek yüke neden olan bir bileşenin veya sürücünün adı gösteriliyor (aşağıdaki ekran görüntüsü sorunlu sistemden değil, benim durumumda ntoskrnl.exe işlemiydi).
Yüksek CPU yüküne neden olan bir sürücüyü bulmak için ayrıca ücretsiz bir Microsoft aracı olan kernrate.exe (Kernrate Viewer) kullanabilirsiniz. Araç, WDK 'nin (Windows Device Kit) bir parçasıdır. WDK kurulumundan sonra, aracı …\Tools\Other md64 klasöründe bulabilirsiniz.
kernrate.exe'yi parametreler olmadan çalıştırın ve veriler toplanana kadar bekleyin (10-15 dakika), ardından Ctrl-C tuşlarına basarak aracı sonlandırın. Çekirdek Modu Sonucu bölümündeki modüllerin listesine bakın.
Gördüğünüz gibi, örneğimizde b57nd60x modülü yüksek CPU kullanımına neden oluyor. Google veya Sigcheck aracını kullanarak (modülle ilgili sürücü dosyalarını algılamak için Sigcheck'i kullanma örneğine bakın), sorunun Broadcom NetXtream Gigabit Ethernet NDIS6.0 Sürücüsünden kaynaklandığını tespit edebilirsiniz.
Windows Performance Toolkit'i (WPT) kullanarak sistem önyüklemesi sırasında CPU kullanımını da analiz edebilirsiniz. WPT'yi yüklemeli ve veri toplamayı Windows Performans Kaydedici (Birinci düzey üçgen + CPU kullanımı -> Başlat) grafik konsolunda çalıştırmalısınız.
Veya şu komutu kullanarak analiz için veri toplamaya başlayabilirsiniz:
xperf -on latency -stackwalk profile -buffersize 1024 -MaxFile 256 -FileMode Circular && timeout -1 && xperf -d cpuusage.etlİpucu. Bu yöntemin, önyüklemeden sonra sistem kapanırsa ve içinde çalışmak imkansızsa kullanılması önerilir. Yavaş Windows önyüklemesini tanılama yöntemi hakkındaki makalenin de sizin için yararlı olması muhtemeldir.
Dosyayı kaydetmeli ve Windows Performance Analyzer'da (WPA) açmalısınız. Sistem işlem yığınını genişletin. Bu örnekte, athrx.sys sürücüsünün (Atheros Kablosuz Ağ Adaptörü) yüksek CPU yüküne neden olduğunu görebilirsiniz.
Sorunu çözmek için, daha yeni (veya eski) sürücü sürümünü kurun veya herhangi bir sürücü sürümünde sorun devam ederse donanımı tamamen devre dışı bırakın (bağlantısını kesin). Güncellenen sürücü, Sürücü Doğrulayıcı kullanılarak ek olarak stres testine tabi tutulabilir.





