Windows 10 Fall Creators Update'ten sonra, bir svchost.exe örneği CPU zamanını sürekli olarak kullanıyor


10

Windows 10 Fall Creators Güncellemesini yüklediğimden beri svchost.exe, CPU zamanının yaklaşık% 14'ünü sürekli kullanan bir işlemim var :

CPU kullanım grafiği

Bu svchost.exeörnek üç hizmeti barındırmaktan sorumludur:

Temel Filtreleme Motoru, CoreMessaging, Windows Defender Güvenlik Duvarı

CPU zamanı, Process Hacker'ın bu üç hizmetten hiçbiriyle ilişkilendiremediği bir işlemin içindeki bir iş parçacığı tarafından tüketilir :

Process Hacker ekran görüntüsü

Bu üç hizmetin kritik sistem hizmetleri olduğu düşünüldüğünde, onlar hakkında her şeyi yapmak zordur. Bu hizmetler durdurulamaz veya devre dışı bırakılamaz services.mscve işlemin sonlandırılması bir hata denetimini ( CRITICAL_PROCESS_DIED) tetikler . Ayarlar kullanıcı arabirimi aracılığıyla Windows Defender Güvenlik Duvarını devre dışı bırakmak CPU kullanımını azaltmaz.

Fikirlerim bitti. Buna ne sebep olabilir? Bunu nasıl daha fazla hata ayıklayabilirim? Bu hizmetleri durdurmak için bir geçici çözüm var mı?


Güncelleştirme: @HelpingHand ile bazı hata ayıklamalarından sonra , bunu Windows Defender Güvenlik Duvarı hizmetinde izole ettik. Process Monitor, kayıt defterine sürekli eriştiğini gösterir:

Process Monitor'den ekran görüntüsü

Bu işleme göre filtrelenen bir İşlem Monitörü yakalamasının CSV dışa aktarımı burada bulunabilir .

Hala bu davranışı durdurmanın bir yolunu arıyorum.


Güncelleştirme 2: Windows Performans Çözümleyicisi ile yapılan analiz, CPU zamanının çoğunun aşağıdaki kod tarafından tüketildiğini gösterir rpcrt4.dll:

Windows Performance Analyzer'dan ekran görüntüsü


1
Yönetici komut isteminde aşağıdaki 2 komutu çalıştırır ve yeniden başlatırsanız; Varsa, hangi svchost işlemi yüksek CPU'ya neden oluyorsa: Sc config BFE type= owno zamanSc config MpsSvc type= own
HelpingHand

1
Zaten Process Hacker'ınız olduğu gibi, örneğin BFE'yi barındıran svchost işlemini bulursanız. Hizmetler sekmesinde hizmet adını çift tıklatırsanız, ardından güvenlik sekmesini görüntülerseniz, Yöneticilerin yapılandırma haklarını değiştireceğini düşünürdüm. Yukarıdakiler benim için çalışıyor.
HelpingHand

1
Belki de İşlem İzleyicisi'ni bu PID'ye filtre uygulanmış olarak çalıştırabilirsiniz. Neyin ortaya çıktığını görün.
HelpingHand

1
Bilgisayarımda da var. TBH, en iyi seçeneğinizin Windows Performans Araç Seti araçlarını yüklemek olduğunu düşünüyorum - docs.microsoft.com/en-us/windows-hardware/test/wpt . Temelde bir izleme dosyasını yakalamak için Windows Performans Kaydedici'yi ve analiz etmek için Windows Performans Çözümleyicisi'ni kullanacaksınız. channel9.msdn.com/Shows/Defrag-Tools bunlarda bazı iyi şovlar var.
HelpingHand

1
modüle göre sıralamayın. bu sütunu kaldırın. ayrıca RPC olaylarını izleyin. Bu dosyayı indirin , WPRUI.exe'yi çalıştırın, profil ekle'ye tıklayın, indirilen WPRP'yi seçin, Özel ölçümler altında CPU Kullanım Profili ve Ağ Kullanımı profilini seçin. Başlat'a tıklayın ve 30 saniye boyunca kullanımı yakalayın. şimdi hangi PID yüksek cpu kullanımı ve genel kullanım grafiği yüksek tablo ve RPC olayları ile exe için grafik / tablo filtre bakmak ve hangi rpc eylem yapılır bak
magicandre1981

Yanıtlar:


11

Anlaşıldığı üzere, bu İnternet Bağlantı Paylaşımı (ICS) ile ilgiliydi.

Aşağıda, benzer sonuçlara sahip diğer insanlara yardımcı olmasını ümit ederek bu sonuca nasıl ulaştığımı açıklamak istiyorum.


İlk adım, soruna neden olan hizmeti tanımlamaktır. Windows'un kendi Görev Yöneticisi de son zamanlarda bunu yapmayı öğrenmiş olsa da, bir hizmetin yapılandırmasını da düzenleyebilen Process Hacker'ı kullandım .

Sorunlu svchost.exeörneği çift ​​tıklayıp Hizmet sekmesini seçmek, bu işlem içinde hangi hizmetlerin çalıştığını gösterir:

svchost.exe (1688) Özellikler

svchost.exeaynı anda birçok Windows hizmetini barındırabilir, bu da hangi hizmetin soruna neden olduğunu tanımlamayı zorlaştırır. İken yeterli RAM kullanılabilir olduğunda, Windows 10 son sürümleri genelde hizmetlerini izole , bazı hizmetler hala bir süreç paylaşır.

Bu böyle bir durumdur ve hangi hizmetin sorunlara neden olduğunu belirlemenin en kolay yolu bunları ayırmaktır.

Process Hacker bunu yapabilir. Ana pencerelerinin Hizmet sekmesinde, bir hizmetin bir işlemi paylaşıp paylaşamayacağını yapılandırabiliriz:

MpsSvc Özellikleri

En az üç şüpheli hizmetlerin iki şekilde yapılandırılması gerekir Kendi Süreci emin ileride ayrılır yapmak.

Görünüşe göre, Windows Defender, hizmetlerinin yapılandırmasına karışan kullanıcıların hoşuna gitmediğinden, bu ayarı başarıyla değiştirmek için

  • Yöneticiler grubuna bu hizmet için Tam Erişim izni verin ,
  • hizmeti devre dışı bırak,
  • hizmetin durması için yeniden başlatın (ayrı olarak durdurulamaz),
  • hizmet türünü Kendi İşlemler olarak değiştirin ve hizmeti yeniden etkinleştirin ( Otomatik Başlat olarak ayarlayın ) ve
  • bu değişiklikleri uygulamak için son bir kez yeniden başlatın.

Bundan sonra, suç svchost.exesadece tek bir hizmete ev sahipliği yapıyor, bu yüzden bir şüphelimiz var:

Windows Defender Güvenlik Duvarı (MpsSvc)

Güvenlik duvarı hizmetinin içinde neler olup bittiğini analiz etmek için, Windows ADK'nın bir parçası olan Windows Performans Kaydedici ve Windows Performans Çözümleyicisi aracını kullanacağız .

Bazı verileri kaydederek başlayacağız. Şüpheli svchost.exearka planda takılı kalırken, bu dosyayı indirin , profil olarak ekleyin, Windows Performans Kaydedici'yi bu şekilde kurun ve bir kayıt başlatın:

Windows Performans Kaydedici: Birinci seviye triyajı ve CPU Kullanım Profilini kontrol edin

Kaydın 30 saniye kadar çalışmasına izin verin, ardından kaydı kaydedin. Kaydettikten sonra, analiz için hemen açmak üzere WPA'da Aç'ı tıklayın .

Burada işler zorlaşmaya başlar. Benim durumumda, @ magicandre1981'den Sistem EtkinliğiGenel Etkinlikler altında doğru yere bakmak için bir ipucuna ihtiyacım vardı . Orada, RPC etkinliklerinin sayısı şüpheyle yüksek görünüyordu:

46.918 Microsoft-Windows-RPC olayları

Aşağı inerken, Windows Defender Güvenlik Duvarı'nın Sunucu tarafında ve olaylarda svchost.exeçok şey gösteriliyordu :win:Startwin:Stop

RpcServerCall

Bir sonraki adım, bu RPC çağrılarını kimin gönderdiğini bulmaktı. İstemci tarafına svchost.exebakarak başka bir örnek şüpheli görünüyordu:

RpcClientCall

Aslında, Process Hacker bu işlemin içinde çalışan ve sürekli olarak CPU yüküne neden olan bir hizmeti algılayamadı:

Hizmet grubu adı: netsvcs

Bu durumda, Windows Görev Yöneticisi hizmeti tanımlamayı başardı:

İnternet Bağlantı Paylaşımı (ICS)

Gerçekten de, hizmet Başlangıç durumunda kalmıştı . İhtiyacım olmadığından devre dışı bıraktım ve bir sonraki yeniden başlatmanın ardından CPU yükü normale döndü.


Yorumlardaki yardımı bunu mümkün kılan @HelpingHand ve @ magicandre1981'e şükranlarımı sunmak istiyorum.


Daha sonra TenForums yayınında keşfedildiği gibi, Windows Defender Güvenlik Duvarını sıfırlamak bu sorunu giderir.


@Yardım: Internet Connection Sharing (ICS)hizmetleri devre dışı bırakırsa ne olur ? WiFi Erişim Noktası artık bir seçenek olmayacak mı?
llinfeng

İşlem Gezgini'nde bu biraz daha kolaydır. Sabit bir işlemci miktarı kullanan "svchost.exe" ye sağ tıklarsam (benim durumum% 5 sabitti) ve "Hizmetler" sekmesine tıklarsanız, bu svchost altında hangi hizmetlerin çalıştığını göreceksiniz. Bu durumda sadece bir tane vardı, ICS. Benzer şekilde İnternet bağlantı paylaşımım başlangıç ​​durumunda kaldı. "Güvenlik Duvarı ve Ağ Koruması" na gidiyorum "Güvenlik duvarlarını varsayılana geri yükle" yi tıklayabildim - bu anında sorunumu çözdü.
Howard Lince III

@Howard: Kendinizi şanslı sayın - belediye başkanı için bir sorun, sorunlu örneğini paylaşan ve svchost.exebuna neden olan hizmeti tanımlamayı zorlaştıran üç hizmetti. Sizin örneğinizde neden bir ana bilgisayar işlemi paylaşmadıklarından emin değilim.
fefrei

2

Daha basit, bu talimatları kullanarak Windows Güvenlik Duvarı ayarlarını (özellikle CPU yükünde ilgili bir artış varsa) sıfırlayarak başarılı oldum: -

Windows Defender Güvenlik Duvarını varsayılan ayarlara sıfırlamak sorunu çözdü.

Bunu yapmak için Ayarlar -> Güncelleme ve Güvenlik -> Windows Defender -> Windows Defender Güvenlik Merkezi'ni aç -> Güvenlik Duvarı ve Ağ Koruması -> Güvenlik Duvarı varsayılan ayarlarını geri yükle

Umarım bu başka birine yardımcı olur ve işe yarar ... Oldukça yaygın bir konu gibi görünüyor.


1
Gerçekten de, cevabımın en altında belirttiğim gibi, bu benim için de işe yaradı. Buradaki adımları yansıttığınız için teşekkürler!
fefrei

0

Benim durumumda, çeşitli başarısız düzeltmeleri denedikten sonra (örneğin, Windows Güvenlik Duvarı'nı sıfırlama gibi yukarıdaki önerilerden bazıları dahil), "Tanılama İlkesi Hizmeti" ni devre dışı bıraktım ve CPU hogging sonunda sona erdi. Bu ideal bir çözüm olmayabilir, ancak kritik bir hizmet gibi görünmemektedir. Bunu nasıl devre dışı bırakacağınız aşağıda açıklanmıştır:

  1. "Sistem Yapılandırması" nı ('msconfig.exe') yönetici olarak açın
  2. Genel sekmesi: "Seçmeli başlangıç" ı seçin
  3. Hizmetler sekmesi: "Teşhis Politikası Hizmeti" nin işaretini kaldırın
  4. Windows'u Yeniden Başlat

Beni bu çözüme yönlendirdiği için Ranga Rajesh Kumar'ın YouTube kanalına teşekkürler .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.