Service Host: Local System (svchost.exe) là tiến trình chứa nhiều dịch vụ hệ thống (Windows Update, BITS, Superfetch/SysMain, Task Scheduler...). Khi một dịch vụ con bị lỗi, nó khiến svchost.exe dùng 100% CPU hoặc Disk. Bài viết hướng dẫn xác định dịch vụ gây lỗi và khắc phục triệt để.
Bước 1: Xác định dịch vụ con gây lỗi (Quan trọng nhất)
Sử dụng Process Explorer (công cụ miễn phí của Microsoft Sysinternals) để xem chi tiết luồng (thread) bên trong svchost.exe:
- Tải Process Explorer, chạy Run as Administrator.
- Nhấn cột CPU để sắp xếp giảm dần.
- Tìm svchost.exe dùng CPU cao > chuột phải > Properties > tab Threads.
- Sắp xếp theo CPU Cycles Delta để tìm thread tiêu thụ nhiều nhất.
- Xem cột Start Address để biết file .dll hoặc dịch vụ nào đang chạy (ví dụ:
wuaueng.dll= Windows Update,sysmain.dll= SysMain/Superfetch).
Các phương pháp khắc phục theo nguyên nhân phổ biến
1. Nếu do Windows Update / BITS / Delivery Optimization
- Chạy Windows Update Troubleshooter (Cài đặt > Khắc phục sự cố > Windows Update).
- Xóa thư mục
C:\Windows\SoftwareDistribution(dừng dịch vụ Windows Update trước, xóa nội dung, bật lại dịch vụ). - Đảm bảo các dịch vụ: Windows Update, BITS, Cryptographic Services, MSI Installer đều ở Automatic và Running.
2. Nếu do SysMain (Superfetch) – thường gây đọc/ghi đĩa cao
- Mở
services.msc> tìm SysMain (tên cũ: Superfetch). - Chuột phải > Properties > Stop > Startup type: Disabled > OK.
- Hoặc tắt qua Registry:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters> EnableSuperfetch = 0.
3. Chạy SFC & DISM sửa file hệ thống
sfc /scannow
Dism /Online /Cleanup-Image /RestoreHealth
4. Sửa Registry Network Data Usage (NDU) – thường gặp trên laptop
- Mở
regedit> đi đếnHKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Ndu. - Sửa giá trị Start = 4 (Disabled).
- Khởi động lại máy.
5. Thực hiện Clean Boot để loại trừ phần mềm thứ 3 xung đột
- Mở
msconfig> tab Services > tích Hide all Microsoft services > Disable all. - Tab Startup > Open Task Manager > disable tất cả mục khởi động.
- Khởi động lại máy > kiểm tra. Nếu hết lỗi, bật dần từng dịch vụ/khởi động để tìm thủ phạm.
6. Thay đổi lịch trình bộ xử lý (Processor Scheduling)
sysdm.cpl> tab Advanced > Performance Settings > tab Advanced.- Chọn Programs (thay vì Background services) > OK > khởi động lại.
7. Tắt Background Intelligent Transfer Service (BITS) nếu không cần
Mở msconfig > tab Services > bỏ tích Background Intelligent Transfer Service > Apply.
8. Khôi phục hệ thống (System Restore)
Nếu lỗi xuất hiện gần đây, dùng rstrui để khôi phục về điểm trước khi lỗi xảy ra.
Lưu ý: Luôn tạo Restore Point trước khi sửa Registry hoặc dịch vụ hệ thống.