ฉันจะแก้ไขปัญหาการใช้งาน 'svchost.exe' ใน Windows 7 ได้อย่างไร


24

ฉันมีปัญหากับ Windows 7 64 บิต ฉันคิดว่ามันช้าและทั้งหมด แต่จากนั้นฉันเห็นว่าการใช้งาน CPU อยู่ที่ประมาณ 80% และเริ่มค้นหาวิธีแก้ปัญหา

มีการsvchost.exeบริโภคสองครั้งประมาณ 30% ต่อการตรวจสอบทรัพยากรและมีระบบขัดจังหวะการบริโภค 45% ตลอดเวลา ฉันพยายามปิดแอปพลิเคชั่น แต่ก็ไม่ได้ทำให้แตกต่าง

ฉันลองสิ่งอื่น ๆ ที่ฉันพบใน Google เช่นปิดการใช้งานการอัปเดตระบบ แต่ไม่ได้ผล

ฉันไม่รู้ว่ามันจะช่วยได้หรือไม่ แต่นี่เป็นข้อมูลจำเพาะของฉัน:

Core 2 Duo 4400
ATI Radeon 4850
4 GB DDR2 RAM

แก้ไข

ฉันรันโปรแกรมที่แนะนำและรับข้อมูลนี้ ฉันทำให้ถูกต้องหรือไม่

ป้อนคำอธิบายภาพที่นี่


แก้ไข

อย่างที่คุณถามนี่มันคือฉันได้รับมันตอนนี้หรือไม่ TCP / IP อื่น ๆ ไม่มีอะไรเลย

ป้อนคำอธิบายภาพที่นี่

แก้ไข

ฉันวิ่งmsconfigและใช้บริการที่หนึ่งในsvchost.exeกระบวนการกำลังเริ่มต้นใช้งานและตอนนี้ซีพียูของฉันอยู่ที่ประมาณ 50% แต่ฉันยังต้องการปรับปรุงต่อไป ฉันไม่สามารถสูญเสียพลังงาน CPU มากไปเพราะ Windows ...


แก้ไข

ใช่ไม่มีอะไรที่ฉันสามารถทำได้ที่นี่ ฉันจะติดตั้ง Windows XP เร็ว ๆ นี้มันแปลกจริง ๆ ...

คำตอบ:


17

ฉันคิดว่าคุณจะพบว่าSvchost Viewerมีประโยชน์

ป้อนคำอธิบายรูปภาพที่นี่

คุณสามารถใช้มันเพื่อพิจารณาว่าโปรแกรมใดกำลังทำส่วนใหญ่โดยดูจากปริมาณข้อมูลที่เขียนและเช่นนั้น ควรช่วยในการกำหนดกระบวนการที่กำลังทำอะไรอยู่


ฉันลองใช้เครื่องมือนี้ แต่ไม่รู้ว่าทำไมมันถึงแสดงsvchost viewer couldn't find any running servicesขึ้นมาเสมอ มันต้องการการกำหนดค่าเฉพาะใด ๆ เพื่อแสดงกระบวนการโฮสต์ svc หรือไม่ ฉันไม่พบเอกสารใด ๆ ในลิงก์ที่กล่าวถึง
RBT

14

ใช้โปรแกรมเช่นProcess Explorerเพื่อตรวจสอบว่าsvchost.exeมีการใช้ทรัพยากร มีsvchostการเรียกใช้จากservices.exeหรือไม่ อะไรคือข้อโต้แย้ง commandline สำหรับเฉพาะที่svchost? มีหลายsvchostรันผ่าน Windows คุณจะต้องแยกที่หนึ่งจะใช้ทรัพยากรเหล่านั้น Process Explorer จะแสดงบริการที่เกี่ยวข้องกับกระบวนการนั้นรวมถึงแสดงพอร์ต TCP / IP ที่ใช้

คลิกที่แท็กกระบวนการเพื่อให้กระบวนการแสดงในรูปแบบทรีเพื่อยืนยันว่ากำลังรันservices.exeอยู่

ป้อนคำอธิบายรูปภาพที่นี่

แม้ว่าจากการดูที่แท็บบริการของคุณ แต่ก็ดูถูกต้องตามกฎหมาย

First svchost looks like `svchost.exe -k LocalServiceNoNetwork`
Second svchost looks like `svchost.exe -k LocalServiceNetworkRestricted`

คุณมีสิ่งใดที่กระทบ Windows Firewall ของคุณอย่างจริงจังหรือไม่? แท็บ TCP / IP และเธรดแสดงอะไร แท็บเธรดจะแสดงข้อมูล CPU สำหรับเธรดภายในแต่ละกระบวนการ คุณพยายามเริ่มบริการที่ระบุหรือตรวจสอบบันทึกเหตุการณ์ของคุณเพื่อดูข้อผิดพลาดมากมายหรือไม่

คุณใช้การจัดทำดัชนีไฟล์สื่อหรือมีสิ่งใดใน LAN ของคุณพยายามเข้าถึงไฟล์สื่อเหล่านั้นหรือไม่

นั่นคือการโทร EtwTraceMessageVa จำนวนมาก คุณตรวจสอบบันทึกเหตุการณ์ของคุณแล้วหรือยัง? ในอัตราที่มันใช้ CPU จะต้องมีอะไรบางอย่างใน WMI เขียนถึงETW คำถามที่ดีกว่านี้เริ่มต้นเมื่อเร็ว ๆ นี้และคุณมีจุดคืนค่าก่อนที่จะเกิดขึ้นหรือไม่


Windows Resource Monitor ที่ติดตั้งล่วงหน้าจะแสดงชื่อกระบวนการเฉพาะที่ใช้ svchost ด้วย
marcovtwout

ตามคำตอบของคำถามที่ซ้ำกันดูเหมือนว่าถ้าคุณโฮเวอร์เหนือชื่อกระบวนการมันจะบอกคุณว่าบริการใดที่กำลังทำงานอยู่ภายใต้กระบวนการ svchost
Jeff B

4

ฉันประหลาดใจเกี่ยวกับคำแนะนำที่คนอื่นให้ในเรื่องนี้ (บางคนถึงกับเดาได้ง่าย)

สำหรับเลโอนาร์โดและคนอื่น ๆ ที่เดินทางมาที่นี่มีบางอย่างที่คนอื่นคิดถึง

  • ใช่เริ่มต้นโดยได้รับสำเนาของProcess Explorer

  • ใช่ดูที่อินสแตนซ์ของSVCHOST.EXEที่กำลังทำงานอยู่และคลิกสองครั้งที่มีการใช้งาน CPU สูง

  • ใช่ดูที่Servicesแท็บเพื่อดูว่าบริการใดที่โฮสต์อยู่โดยอินสแตนซ์ของ svchost

นี่คือที่ทุกคนอื่นหยุด; นั่นยังไม่พอ. ตอนนี้คุณต้องเรียกใช้Services.mscและหยุดบริการแต่ละรายการที่โฮสต์โดยอินสแตนซ์ที่ควบคุมไม่ได้ของ svchost เพื่อให้แน่ใจว่าจะรอและดูสักครู่หลังจากแต่ละรายการเพื่อดูว่าโหลด CPU ลดลงหรือไม่ ถ้าเป็นเช่นนั้นคนสุดท้ายที่คุณหยุดคือผู้ร้าย

เมื่อมาถึงจุดนี้คุณรู้ว่าบริการอะไรที่กำลังบีบอัดซีพียูและจากนั้นสามารถค้นหาสาเหตุที่บริการเฉพาะนั้นจะดูดรอบ


1

มีไวรัสจำนวนหนึ่งที่สามารถทำงานภายใต้ชื่อ svchost ดังนั้นจึงเป็นการดีที่สุดที่จะตรวจสอบว่าคุณได้รับการปรับปรุงและป้องกันไวรัสที่เหมาะสมแล้ว มีแนวโน้มว่าจะเป็นปัญหา Windows ที่ไม่เกี่ยวข้องกับไวรัส

Svchost.exe เป็นชื่อกระบวนการโฮสต์ทั่วไปสำหรับบริการที่เรียกใช้จากไลบรารีการเชื่อมโยงแบบไดนามิก (DLLs) และคุณสามารถวิเคราะห์ได้ว่ากระบวนการ svchost เหล่านี้กำลังใช้Svchost กระบวนการวิเคราะห์ใด


1

ฉันเพิ่งได้กระบวนการ svchosts อย่างใดอย่างหนึ่งเริ่มที่จะทำลาย Win7 32 บิตพีซีของฉันในช่วง 2 วันที่ผ่านมาโดยที่ CPU (Dual Core) ติดอยู่ที่ 100% กระบวนการ svchost นี้โดยเฉพาะมีหน้าที่รับผิดชอบในหัวข้อกระบวนการบริการเครือข่ายมากกว่าโหลซึ่งทั้งหมดดูเหมือนจะเป็นบริการเครือข่ายมาตรฐานที่จำเป็น

ด้วยการใช้การแจ้งเตือนของผู้ดูแลระบบใหม่ใน EventVwr, Sys Internals Process Explorer และตัววิเคราะห์ svchost ฉันจึง จำกัด ให้แคบลงไปสู่ผู้ร้ายหลัก:

บริการ Windows Live Mesh Remote Desktop

การปิดการใช้งานในบริการนี้ทำให้ฉันได้รับซีพียูของฉันประมาณ 60% และบริการ svchost นี้โดยเฉพาะแล้วลดลงในตัวจัดการงาน

มันถูกแทนที่ด้วยอื่นใช้ประมาณ 35 - 45% โดยการคลิกขวาในตัวจัดการงานและไปที่บริการบริการเดียวที่เกิดขึ้นคือWindows Defender .... (และเราเคยได้ยินมาก่อนหน้านี้แล้ว)

เนื่องจากหลายคนไม่ทราบว่าติดตั้งพร้อมกับ Windows 7 โดยค่าเริ่มต้น (คุณไม่สามารถเห็นได้ในรายการโปรแกรมของคุณ) ลิงค์นี้จะแสดงบทเรียนที่ดีเกี่ยวกับวิธีปิดการใช้งาน

http://www.simplehelp.net/2009/03/11/how-to-disable-windows-defender-in-windows-7/


1

ฉันยังมีปัญหากับ svchost.exe ทำให้เกิดการใช้งานCPU 100% บริการที่เกี่ยวข้องกับ svchost คือ NLASvc, LanmanWorkstation, Dnscache และ CryptSvc ปัญหาของฉันคือ Firefox ในเวอร์ชั่นล่าสุดพวกเขาเพิ่ม plugin-container.exe ซึ่งทำงานเป็นกระบวนการแยกต่างหากจาก Firefox แนวคิดเบื้องหลังคือถ้าปลั๊กอินขัดข้องจะไม่ทำให้ Firefox หรือเซสชันการเรียกดูของคุณเสียหาย แต่มันทำให้การท่องในระบบของฉันเหลือทน

วิธีแก้ปัญหา: ปิดการใช้งานกระบวนการคอนเทนเนอร์ของปลั๊กอิน

  • เปิดเว็บเบราว์เซอร์ Firefox
  • พิมพ์ about: config ในแถบที่อยู่แล้วกดปุ่ม Enter
  • คำเตือนจะปรากฏขึ้น ไม่ต้องสนใจและกดปุ่ม“ ฉันจะระวังฉันสัญญา!”
  • ในฟิลด์ตัวกรองพิมพ์ dom.ipc การตั้งค่าหกรายการจะปรากฏสำหรับตัวกรอง dom.ipc
  • ละเว้นการตั้งค่าแรกและสุดท้าย (dom.ipc.plugins.enabled และ dom.ipc.plugins.timeoutSecs) สลับ (ดับเบิลคลิก) การกำหนดค่าตามความชอบที่เหลืออยู่สี่ค่าเพื่อเปลี่ยนค่าจาก "true" เป็น "false"

คุณทำเสร็จแล้วเริ่ม Firefox ใหม่และเปิดตัวจัดการงานของ Windows เพื่อดูว่ากระบวนการปลั๊กอินของคอนเทนเนอร์ถูกปิดใช้งาน ..

ข้อมูลมากกว่านี้

คุณลักษณะการป้องกันการขัดข้องใน Firefox 3.6 เปิดใช้งานสำหรับปลั๊กอินบางตัวเท่านั้น การกำหนดค่าตามความชอบทั้งสี่ที่เราแก้ไขที่นี่ระบุปลั๊กอินที่ไม่ได้ใช้งานที่ต่างกันสี่ตัว นี่คือปลั๊กอินทดสอบ NPAPI, Adobe Flash, Apple QuickTime (Windows) และ Microsoft Silverlight (Windows) ปลั๊กอินเหล่านี้มีการระบุในการdom.ipc.plugins.enabledตั้งค่าแยกต่างหากโดยค่าเริ่มต้นถูกตั้งค่าเป็นจริง เราสามารถปิดการใช้งานได้โดยเปลี่ยนค่าของพวกเขาเป็นเท็จ และ plugin-container.exe จะไม่ทำงาน ตามค่าเริ่มต้นการตั้งค่าdom.ipc.plugins.enabledจะถูกตั้งค่าเป็น“ เท็จ” ดังนั้นไม่จำเป็นต้องสัมผัส สิ่งdom.ipc.plugins.timeoutSecsนี้ก็ไม่สำคัญเช่นกันเนื่องจากค่าอื่น ๆ เป็นเท็จ

ฉันหวังว่านี่จะช่วยใครซักคน


0

ฉันมีสิ่งเดียวกันฆ่า Windows Defender และตอนนี้ฉันสบายดี ขอให้คุณโชคดี


0

จากภาพหน้าจอของคุณดูเหมือนว่าเกี่ยวข้องกับบริการเสียง

อาจมีการเชื่อมต่อกับปัญหาที่อธิบายใน win 7 การใช้งาน cpu สูงบน 2 บริการ (ดูคำตอบสุดท้าย)

ลองปิดเสียงในตัวและดูว่าจะช่วยได้หรือไม่


0

ใช้Process Explorerของ Sysinternal

จากนั้นหาที่SVCHOSTบริการทำงานได้โดยไม่มีผู้ปกครองใด ๆ เพราะแต่ละคนจะต้องมีการโหลดโดยsvchost.exe services.exeฆ่าพวกมันทั้งหมดถ้าเจอ (คุณสามารถทราบถึงพาเรนต์ของกระบวนการโดยดับเบิลคลิกที่มัน >> แท็บ "รูปภาพ" >> ป้ายกำกับ "แม่")

นอกจากนี้หากไวรัสที่คุณได้รับเหมือนกันกับฉันคุณควรทำตามขั้นตอนต่อไปนี้

ตรวจสอบว่ามีกระบวนการชื่อWatermark.exeภายใต้..\Program Files\Microsoftโฟลเดอร์ จากนั้นลบทิ้ง (นอกจากนี้คุณยังดีกว่าล็อคโฟลเดอร์นั้นโดยใช้Securityแท็บของมัน)

Watermark.exeกำลังฉีดVBScriptsรหัสลงในทุก.htmlไฟล์ จากนั้นติดเชื้อเหล่านี้ไฟล์จะถูกฉีดเข้าไปใน.html SVCHOST.EXEดังนั้นตรวจสอบ.htmlไฟล์สองสามไฟล์จากที่ต่าง ๆ โดยเปิดด้วยโปรแกรมแก้ไขข้อความ * อย่าวิ่ง * หากคุณพบVBScriptรหัสที่ด้านล่างของไฟล์ของคุณเงื่อนไขนั้นแย่กว่าที่เราคาดไว้

ดังนั้นหากสิ่งนี้เกิดขึ้นเช่นกันคุณควรล้าง.htmlไฟล์ทั้งหมด(หรือ) ลบรหัสออกจากแต่ละ.htmlไฟล์

หลังจากทำความสะอาด.htmlไฟล์แล้วสำหรับฉันในสถานการณ์เช่นนี้ฉันจะแทนที่SVCHOST.EXECD การติดตั้ง Windows XP โดยใช้Recovery Consoleจากการบูต



0

วิธีง่าย ๆ ที่ฉันใช้ใน Windows 7 เพื่อค้นหาบริการทั้งหมดที่ทำงานภายใต้svchost.exeเฉพาะในตัวจัดการงาน windowsคือคลิกขวา svchost.exeและเลือกตัวเลือกไปที่บริการจากรายการ สิ่งนี้จะนำไปสู่แท็บบริการและเน้นบริการทั้งหมดที่ทำงานภายใต้ svchost.exe ที่เลือก

ตัวเลือกที่คล้ายกันในพรอมต์คำสั่งคือการเรียกใช้

tasklist /svc

หวังว่ามันจะช่วย!


-1

อาจเป็นบริการ "พลังงาน" ที่ดำเนินการโดยหนึ่งในกระบวนการ svchost ที่ทำให้เกิดการใช้งาน CPU สูง ลองเปลี่ยนโหมดประหยัดพลังงานจากยอดคงเหลือ (ค่าเริ่มต้น) เป็นประสิทธิภาพและตั้งโหมดพักเป็น "ไม่เคย"

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.