Quy trình Máy chủ Dịch vụ (svchost.exe) là gì và Tại sao Nhiều Máy chủ Đang Chạy?

Nếu bạn đã từng duyệt qua Trình quản lý tác vụ, bạn có thể tự hỏi tại sao có quá nhiều quy trình Máy chủ dịch vụ đang chạy. Bạn không thể giết chúng và chắc chắn rằng bạn không thể bắt đầu chúng. Vậy, chúng là gì?

Quá trình Máy chủ Dịch vụ đóng vai trò như một trình bao để tải các dịch vụ từ các tệp DLL. Các dịch vụ được tổ chức thành các nhóm có liên quan và mỗi nhóm được chạy bên trong một phiên bản khác nhau của Quy trình Máy chủ Dịch vụ. Bằng cách đó, sự cố trong một trường hợp không ảnh hưởng đến các trường hợp khác. Quá trình này là một phần quan trọng của Windows mà bạn không thể ngăn chạy.

Bài viết này là một phần của loạt bài đang diễn ra của chúng tôi giải thích các quy trình khác nhau được tìm thấy trong Trình quản lý tác vụ, như dwm.exe, ctfmon.exe, mDNSResponder.exe, conhost.exe, rundll32.exe, Adobe_Updater.exe và nhiều quy trình khác. Không biết những dịch vụ đó là gì? Tốt hơn hãy bắt đầu đọc!

Vậy Quy trình Máy chủ Dịch vụ là gì?

Đây là câu trả lời, theo Microsoft:

Svchost.exe là một tên quy trình máy chủ lưu trữ chung cho các dịch vụ chạy từ các thư viện liên kết động.

Nhưng điều đó không thực sự giúp ích nhiều cho chúng tôi. Cách đây một thời gian, Microsoft đã bắt đầu thay đổi nhiều chức năng của Windows từ việc dựa vào các dịch vụ nội bộ của Windows (chạy từ tệp EXE) sang sử dụng tệp DLL để thay thế. Từ góc độ lập trình, điều này làm cho mã có thể tái sử dụng nhiều hơn và được cho là dễ cập nhật hơn. Vấn đề là bạn không thể khởi chạy tệp DLL trực tiếp từ Windows giống như cách bạn có thể chạy tệp thực thi. Thay vào đó, một trình bao được tải từ một tệp thực thi được sử dụng để lưu trữ các dịch vụ DLL này. Và quá trình Service Host (svchost.exe) ra đời.

Tại sao có quá nhiều quy trình máy chủ dịch vụ đang chạy?

LIÊN QUAN:Quá trình này là gì và tại sao nó lại chạy trên PC của tôi?

Nếu bạn đã từng xem phần Dịch vụ trong Pa-nen Điều khiển, có thể bạn đã nhận thấy rằng Windows yêu cầu rất nhiều dịch vụ. Nếu mọi dịch vụ đơn lẻ chạy theo một quy trình Service Host, lỗi trong một dịch vụ có thể làm hỏng tất cả Windows. Thay vào đó, chúng được tách ra.

Các dịch vụ được tổ chức thành các nhóm hợp lý, tất cả đều có liên quan và sau đó một phiên bản Máy chủ Dịch vụ duy nhất được tạo để lưu trữ mỗi nhóm. Ví dụ, một tiến trình Service Host chạy ba dịch vụ liên quan đến tường lửa. Một quy trình Máy chủ Dịch vụ khác có thể chạy tất cả các dịch vụ liên quan đến giao diện người dùng, v.v. Ví dụ trong hình bên dưới, bạn có thể thấy rằng một tiến trình Service Host chạy một số dịch vụ mạng liên quan, trong khi một tiến trình khác chạy các dịch vụ liên quan đến các cuộc gọi thủ tục từ xa.

Tôi Có Cần Làm Gì Với Tất Cả Thông Tin Này Không?

LIÊN QUAN:Bạn có nên vô hiệu hóa các dịch vụ Windows để tăng tốc PC của mình không?

Thành thật mà nói, không nhiều. Vào thời của Windows XP (và các phiên bản trước), khi PC có nhiều tài nguyên hạn chế hơn và hệ điều hành không được tinh chỉnh hoàn toàn, thì việc ngăn Windows chạy các dịch vụ không cần thiết thường được khuyến nghị. Ngày nay, chúng tôi khuyên bạn không nên tắt dịch vụ nữa. PC hiện đại có xu hướng được tải với bộ nhớ và bộ vi xử lý công suất cao. Thêm vào đó là thực tế rằng cách các dịch vụ Windows được xử lý trong các phiên bản hiện đại (và những dịch vụ nào chạy) đã được sắp xếp hợp lý và việc loại bỏ các dịch vụ mà bạn cho rằng mình không cần thực sự không có nhiều tác động nữa.

Điều đó nói rằng, nếu bạn nhận thấy rằng một phiên bản cụ thể của Máy chủ dịch vụ — hoặc một dịch vụ có liên quan — đang gây ra sự cố, chẳng hạn như sử dụng CPU hoặc RAM liên tục, bạn có thể kiểm tra các dịch vụ cụ thể có liên quan. Điều đó ít nhất có thể cung cấp cho bạn ý tưởng về nơi bắt đầu khắc phục sự cố. Có một số cách để xem chính xác dịch vụ nào đang được lưu trữ bởi một phiên bản Service Host cụ thể. Bạn có thể kiểm tra mọi thứ trong Trình quản lý tác vụ hoặc sử dụng một ứng dụng tuyệt vời của bên thứ ba có tên Process Explorer.

Kiểm tra các Dịch vụ Liên quan trong Trình quản lý Tác vụ

Nếu bạn đang sử dụng Windows 8 hoặc 10, các quy trình được hiển thị trên tab "Quy trình" của Trình quản lý tác vụ theo tên đầy đủ của chúng. Nếu một quy trình đóng vai trò là máy chủ lưu trữ cho nhiều dịch vụ, bạn có thể xem các dịch vụ đó bằng cách mở rộng quy trình. Điều này giúp bạn rất dễ dàng xác định dịch vụ nào thuộc về từng phiên bản của quy trình Máy chủ dịch vụ.

Bạn có thể nhấp chuột phải vào bất kỳ dịch vụ riêng lẻ nào để dừng dịch vụ, xem dịch vụ đó trong ứng dụng Bảng điều khiển “Dịch vụ” hoặc thậm chí tìm kiếm thông tin trực tuyến về dịch vụ.

Nếu bạn đang sử dụng Windows 7, mọi thứ sẽ khác một chút. Trình quản lý tác vụ Windows 7 không nhóm các quy trình theo cùng một cách, cũng như không hiển thị các tên quy trình thông thường — nó chỉ hiển thị tất cả các trường hợp “svchost.exe” đang chạy. Bạn phải khám phá một chút để xác định các dịch vụ liên quan đến bất kỳ phiên bản cụ thể nào của “svchost.exe”.

Trên tab “Processes” của Task Manager trong Windows 7, nhấp chuột phải vào một quy trình “svchost.exe” cụ thể, sau đó chọn tùy chọn “Go to Service”.

Thao tác này sẽ đưa bạn đến tab “Dịch vụ”, nơi các dịch vụ đang chạy trong quy trình “svchost.exe” đó đều được chọn.

Sau đó, bạn có thể thấy tên đầy đủ của từng dịch vụ trong cột “Mô tả”, vì vậy bạn có thể chọn tắt dịch vụ nếu bạn không muốn nó chạy hoặc khắc phục sự cố tại sao nó gây ra sự cố cho bạn.

Kiểm tra các dịch vụ liên quan bằng Process Explorer

Microsoft cũng cung cấp một công cụ tiên tiến tuyệt vời để làm việc với các quy trình như một phần của dòng sản phẩm Sysinternals. Chỉ cần tải xuống Process Explorer và chạy nó — đây là một ứng dụng di động nên không cần cài đặt. Process Explorer cung cấp tất cả các loại tính năng nâng cao — và chúng tôi thực sự khuyên bạn nên đọc hướng dẫn của chúng tôi để hiểu Process Explorer để tìm hiểu thêm.

LIÊN QUAN:Ứng dụng "Portable" là gì và tại sao nó lại quan trọng?

Tuy nhiên, vì mục đích của chúng tôi ở đây, Process Explorer nhóm các dịch vụ liên quan theo từng trường hợp của “svchost.exe.” Chúng được liệt kê theo tên tệp của chúng, nhưng tên đầy đủ của chúng cũng được hiển thị trong cột "Mô tả". Bạn cũng có thể di con trỏ chuột qua bất kỳ quy trình “svchost.exe” nào để xem cửa sổ bật lên có tất cả các dịch vụ liên quan đến quy trình đó — ngay cả những dịch vụ hiện không chạy.

Quy trình này có thể là một vi-rút không?

Bản thân quá trình này là một thành phần chính thức của Windows. Mặc dù có thể vi-rút đã thay thế Máy chủ dịch vụ thực bằng một tệp thực thi của riêng nó, nhưng điều này rất khó xảy ra. Nếu muốn chắc chắn, bạn có thể kiểm tra vị trí tệp cơ bản của quy trình. Trong Trình quản lý Tác vụ, nhấp chuột phải vào bất kỳ quy trình Máy chủ Dịch vụ nào và chọn tùy chọn “Mở Vị trí Tệp”.

Nếu tệp được lưu trữ trong thư mục Windows \ System32 của bạn, thì bạn có thể khá chắc chắn rằng mình không đối phó với vi-rút.

LIÊN QUAN:Phần mềm chống vi-rút tốt nhất cho Windows 10 là gì? (Bộ bảo vệ Windows có đủ tốt không?)

Điều đó nói rằng, nếu bạn vẫn muốn yên tâm hơn một chút, bạn luôn có thể quét vi-rút bằng trình quét vi-rút ưa thích của mình. Cẩn tắc vô ưu!


$config[zx-auto] not found$config[zx-overlay] not found