WMI Provider Host Là Gì? Khắc Phục Lỗi Gây Tốn CPU Như Thế Nào?

WMI Provider Host là một tiến trình hệ thống quan trọng của Windows, thường chạy ẩn và cho phép các ứng dụng khác truy vấn thông tin hệ thống. Bình thường, tiến trình này không chiếm nhiều tài nguyên, nhưng nếu một ứng dụng gặp sự cố, nó có thể ngốn rất nhiều CPU. Bài viết này sẽ giúp bạn hiểu rõ về WMI Provider Host và cách khắc phục lỗi CPU cao.

WMI Provider Host Là Gì?

WMI là viết tắt của “Windows Management Instrumentation,” một tính năng của Windows cung cấp một cách chuẩn hóa để phần mềm và script yêu cầu thông tin về trạng thái hệ điều hành và dữ liệu trên đó. “WMI Providers” cung cấp thông tin này khi có yêu cầu. Ví dụ: phần mềm có thể truy vấn trạng thái mã hóa ổ đĩa BitLocker, xem các mục từ nhật ký sự kiện hoặc yêu cầu dữ liệu từ các ứng dụng đã cài đặt. Microsoft cung cấp một danh sách đầy đủ các WMI provider trên trang web của họ.

Tính năng này đặc biệt hữu ích cho các doanh nghiệp quản lý máy tính, cho phép truy vấn thông tin thông qua script và hiển thị theo cách tiêu chuẩn trong các bảng điều khiển. Tuy nhiên, ngay cả trên máy tính cá nhân, một số phần mềm đã cài đặt có thể yêu cầu thông tin hệ thống thông qua WMI.

WMI cũng được sử dụng để tìm nhiều loại thông tin hữu ích khác, thường không được hiển thị trực tiếp trong giao diện Windows. Ví dụ: công cụ WMI Command Line (WMIC) có thể được sử dụng để lấy số serial của máy tính, tìm số model của bo mạch chủ hoặc kiểm tra tình trạng sức khỏe SMART của ổ cứng.

Công cụ WMIC giúp lấy số serial máy tínhCông cụ WMIC giúp lấy số serial máy tính

Tại Sao WMI Provider Host Sử Dụng Quá Nhiều CPU?

Thông thường, WMI Provider Host không sử dụng nhiều CPU. Nó chỉ sử dụng CPU khi một phần mềm hoặc script yêu cầu thông tin thông qua WMI, và điều này là bình thường. Việc sử dụng CPU cao kéo dài có thể là dấu hiệu của một vấn đề tiềm ẩn.

Một giải pháp đơn giản là khởi động lại dịch vụ Windows Management Instrumentation. Bạn có thể khởi động lại máy tính, nhưng có một cách để khởi động lại dịch vụ mà không cần khởi động lại máy tính. Để thực hiện việc này, hãy mở trình đơn Start, gõ “Services.msc” và nhấn Enter để khởi chạy công cụ Services.

Mở công cụ Services để quản lý các dịch vụ hệ thốngMở công cụ Services để quản lý các dịch vụ hệ thống

Trong danh sách các dịch vụ, tìm “Windows Management Instrumentation”, nhấp chuột phải vào nó và chọn “Restart“.

Khởi động lại dịch vụ Windows Management InstrumentationKhởi động lại dịch vụ Windows Management Instrumentation

Nếu bạn vẫn thấy mức sử dụng CPU cao, có thể có một tiến trình khác trên hệ thống đang gặp sự cố. Nếu một tiến trình liên tục yêu cầu một lượng lớn thông tin từ WMI, điều này sẽ khiến WMI Provider Host sử dụng nhiều CPU.

Để xác định tiến trình gây ra sự cố, hãy sử dụng Event Viewer. Trên Windows 10 hoặc 8, nhấp chuột phải vào nút Start và chọn “Event Viewer“. Trên Windows 7, mở trình đơn Start, gõ “Eventvwr.msc” và nhấn Enter.

Mở Event Viewer để theo dõi các sự kiện hệ thốngMở Event Viewer để theo dõi các sự kiện hệ thống

Trong Event Viewer, điều hướng đến Applications and Service Logs > Microsoft > Windows > WMI-Activity > Operational.

Điều hướng đến WMI-Activity trong Event ViewerĐiều hướng đến WMI-Activity trong Event Viewer

Cuộn qua danh sách và tìm các sự kiện “Error” gần đây. Nhấp vào mỗi sự kiện và tìm số bên phải của “ClientProcessId” ở khung dưới cùng. Đây là số ID của tiến trình gây ra lỗi WMI. Có thể có một vài lỗi, do cùng một tiến trình hoặc nhiều tiến trình gây ra. Hãy nhấp vào từng lỗi và xem ClientProcessId.

Xem ClientProcessId để xác định tiến trình gây lỗiXem ClientProcessId để xác định tiến trình gây lỗi

Bây giờ bạn đã có thể xác định tiến trình có thể gây ra vấn đề. Mở Task Manager bằng cách nhấn Ctrl + Shift + Escape hoặc nhấp chuột phải vào thanh tác vụ và chọn “Task Manager“.

Mở Task Manager để quản lý các tiến trìnhMở Task Manager để quản lý các tiến trình

Nhấp vào tab “Details“, sau đó nhấp vào cột “PID” để sắp xếp các tiến trình theo ID và xác định tiến trình phù hợp với số ID xuất hiện trong Event Viewer. Ví dụ: tiến trình “HPWMISVC.exe” gây ra các lỗi trên máy tính trong hình dưới.

Nếu tiến trình đã đóng, bạn sẽ không thấy nó trong danh sách. Ngoài ra, khi một chương trình đóng và mở lại, nó sẽ có một số ID tiến trình khác. Đó là lý do tại sao bạn cần tìm kiếm các sự kiện gần đây.

Tìm tiến trình gây lỗi trong Task ManagerTìm tiến trình gây lỗi trong Task Manager

Khi đã xác định được tiến trình gây ra sự cố, hãy tìm kiếm tên của nó trên web để tìm phần mềm liên kết hoặc nhấp chuột phải vào tiến trình trong Task Manager và chọn “Open File Location” để mở vị trí của nó trên hệ thống. Sau đó, bạn có thể cập nhật hoặc gỡ bỏ phần mềm này.

Có Nên Vô Hiệu Hóa WMI Provider Host?

Về mặt kỹ thuật, bạn có thể vô hiệu hóa dịch vụ “Windows Management Instrumentation”. Tuy nhiên, đây là một phần quan trọng của hệ điều hành Windows và việc vô hiệu hóa nó có thể gây ra sự cố cho máy tính.

Nếu dịch vụ này bị dừng, hầu hết phần mềm dựa trên Windows sẽ không hoạt động đúng cách. Vì vậy, không nên vô hiệu hóa dịch vụ này. Nếu bạn gặp vấn đề với WMI Provider Host, hãy xác định tiến trình nào đang gây ra sự cố và cập nhật, gỡ bỏ hoặc vô hiệu hóa tiến trình đó.

Mô tả dịch vụ Windows Management InstrumentationMô tả dịch vụ Windows Management Instrumentation

Kết Luận

WMI Provider Host là một tiến trình quan trọng của Windows. Khi nó sử dụng quá nhiều CPU, điều này thường là dấu hiệu của một vấn đề với một ứng dụng khác. Bằng cách sử dụng Event Viewer và Task Manager, bạn có thể xác định và giải quyết vấn đề để giảm mức sử dụng CPU và đảm bảo hệ thống hoạt động ổn định. Thay vì vô hiệu hóa WMI Provider Host, hãy tập trung vào việc tìm ra và khắc phục nguyên nhân gốc rễ của vấn đề.