Computer >> Hướng Dẫn Máy Tính >  >> Xử Lý Sự Cố >> Mac

Hiểu về WindowServer trên macOS: Nguyên nhân CPU cao & Cách giảm tải

Đôi khi, khi nhận thấy Mac chạy chậm hơn bình thường, bạn có thể kiểm tra tiến trình chạy ngầm qua Mac Activity Monitor. Khi đó, bạn chắc chắn phát hiện tiến trình WindowServer luôn chiếm CPU cao.

Bạn có thể thắc mắc tại sao WindowServer tiêu tốn nhiều CPU và cách giảm CPU cao của WindowServer trên Mac. Hãy tìm hiểu từng vấn đề.

Mục lục:

  • 1. WindowServer trên Mac là gì
  • 2. Tại sao WindowServer Mac CPU cao xảy ra
  • 3. Cách kiểm tra xem tiến trình WindowServer có dùng CPU quá mức
  • 4. Cách giảm CPU WindowServer trên Mac
  • 5. Câu hỏi thường gặp về khắc phục WindowServer Mac CPU cao

WindowServer trên Mac là gì

WindowServer trên Mac chịu trách nhiệm quản lý cửa sổ. Nó đóng vai trò kết nối giữa ứng dụng và màn hình. Nó phản ánh hành vi ứng dụng trên màn hình, nghĩa là bất cứ điều gì bạn muốn ứng dụng làm, WindowServer hiển thị đồ họa bạn thấy trên màn hình.

Nói cách khác, mọi thứ bạn thấy trên màn hình, đều do tiến trình WindowServer vẽ ra. Mỗi khi bạn mở ứng dụng, mở cửa sổ mới, hoặc chơi game, WindowServer đang vẽ lại màn hình liên tục.

Tiến trình WindowServer được kích hoạt ngay khi bạn đăng nhập Mac, và dừng khi bạn đăng xuất. Vì nó là tiến trình cốt lõi macOS, nghĩa là nó đóng vai trò quan trọng, và buộc dừng (force-kill) WindowServer sẽ dẫn đến hậu quả nghiêm trọng.

Tại sao WindowServer Mac CPU cao xảy ra

Như đã nói, WindowServer vẽ tất cả yếu tố đồ họa và theo dõi mọi thay đổi về vị trí cửa sổ, biểu tượng màn hình, font, Spaces (Không gian), hiệu ứng hình ảnh, v.v. Nó cũng chịu trách nhiệm cho tất cả màn hình ngoài.

Do đó, một vài điều có thể khiến WindowServer dùng nhiều chu kỳ CPU. Thông thường, bao gồm:

  • Ứng dụng hoạt động bất thường
  • Có nhiều màn hình hiển thị
  • Màn hình nền (desktop) lộn xộn với biểu tượng (mỗi biểu tượng phải vẽ lại mỗi khi nội dung màn hình thay đổi)
  • Mac cũ chạy macOS mới nhất và gặp khó khăn với một số hiệu ứng hình ảnh.

Cách kiểm tra xem tiến trình WindowServer có dùng CPU quá mức

Nếu muốn biết chính xác WindowServer dùng bao nhiêu CPU, bạn có thể dùng tiện ích macOS tích hợp sẵn Activity Monitor:

  1. Mở Finder, điều hướng Applications > Utilities, khởi chạy Activity Monitor.
  2. Nhấp đầu cột CPU. Tìm 'WindowServer' trong cột.
    Hiểu về WindowServer trên macOS: Nguyên nhân CPU cao & Cách giảm tải
  3. Bạn sẽ thấy CPU usage của WindowServer. Nếu nó chiếm hơn 50% tài nguyên CPU, bạn biết nó dùng nhiều chu kỳ CPU hơn mức cho phép. Như đã nói, bạn không thể kill WindowServer như buộc thoát tác vụ khác trên Mac. Tuy nhiên, bạn có thể thử các phương pháp dưới để giảm CPU cao của Activity Monitor WindowServer.

Cách giảm CPU WindowServer trên Mac

Nếu nhận thấy tiến trình WindowServer đang ăn lớn phần tài nguyên CPU Mac và thấy Mac chạy chậm, đây là các phương pháp khắc phục vấn đề WindowServer Mac CPU cao.

Phương pháp 1: Giảm số tệp & thư mục lưu trên màn hình nền

Ví dụ, nếu bạn có 40 tệp trên màn hình nền và 5 thư mục, hãy gom tất cả vào một thư mục. Làm vậy, WindowServer chỉ tập trung vào một yếu tố thị giác thay vì 45.

Phương pháp 2: Đóng ứng dụng và cửa sổ không cần

Càng nhiều cửa sổ & tab trình duyệt mở, càng nhiều CPU bị tiêu thụ. Đặc biệt nếu dùng Mac cũ, WindowServer phải làm việc vất vả hơn. Do đó, đóng cửa sổ Finder và tab trình duyệt không cần thiết để giảm tiêu thụ.

Nếu có ứng dụng mở mà không dùng nữa, cũng cần thoát chúng. Làm đơn giản bằng cách nhấn Command + Option + Escape mở menu Force-Quit, chọn ứng dụng không cần và nhấp Force Quit. Đừng quên lưu tệp trước khi đóng cửa sổ/app để tránh mất dữ liệu.

Hiểu về WindowServer trên macOS: Nguyên nhân CPU cao & Cách giảm tải

Phương pháp 3: Tắt hiệu ứng trong suốt của macOS

Các tính năng thêm hiệu ứng hình ảnh luôn tốn nhiều chu kỳ CPU và RAM, đặc biệt hiệu ứng trong suốt. Bạn không thể tắt mọi hiệu ứng, nhưng có thể tắt độ trong suốt dùng ngăn Accessibility (Khả năng truy cập) trong System Preferences. Ngay cả khi Mac không chạy đặc biệt chậm, làm vậy sẽ tăng hiệu suất đáng kể.

Cách làm:

  1. Vào menu Apple, chọn System Preferences.
  2. Vào Accessibility và tìm tùy chọn Display.
  3. Tích vào ô bên cạnh Reduce transparency (Giảm độ trong suốt).
    Hiểu về WindowServer trên macOS: Nguyên nhân CPU cao & Cách giảm tải

Điều này sẽ giảm CPU WindowServer trên Mac. Ngoài ra, bạn có thể thử các giải pháp sau.

Phương pháp 4: Ngăn Mission Control Spaces tự sắp xếp lại

Nếu bạn dùng Spaces (môi trường desktop ảo trên Mac), ngăn Spaces tự sắp xếp theo mức độ sử dụng sẽ tạo khác biệt lớn cho hành vi WindowServer.

Làm như sau:

  1. Vào Apple Menu > System Preferences, nhấp Mission Control.
  2. Tắt thiết lập Automatically rearrange Spaces based on most recent use (Tự động sắp xếp lại Spaces dựa trên việc sử dụng gần nhất).
    Hiểu về WindowServer trên macOS: Nguyên nhân CPU cao & Cách giảm tải

Thay đổi này có vẻ nhỏ, nhưng giúp WindowServer rất nhiều vì Spaces không còn tự di chuyển. Nó giảm gánh nặng cho Mac WindowServer, giảm thiểu tiêu thụ CPU.

Phương pháp 5: Có nhiều màn hình? Tắt Spaces cho từng màn hình

Nếu bạn có thiết lập nhiều màn hình, điều tiếp theo để giảm CPU WindowServer trên Mac là:

  1. Nhấp logo Apple, mở System Preferences, vào Mission Control.
  2. Tắt thiết lập Displays have separate spaces (Màn hình có Spaces riêng biệt).
    Hiểu về WindowServer trên macOS: Nguyên nhân CPU cao & Cách giảm tải
  3. Đăng xuất, hoặc tốt hơn, khởi động lại Mac.

Phương pháp 6: Khởi động lại Mac

Nếu bạn là người dùng Mac không bao giờ tắt hoặc khởi động lại, chỉ đóng nắp khi xong việc và mở lại khi dùng. Tuy nhiên, khởi động lại quan trọng để giải phóng RAM và xóa cache cùng tệp tạm. Khởi động lại Mac cũng có thể khắc phục vấn đề như một số tiến trình chiếm quá nhiều CPU, như WindowServer CPU cao hoặc kernel_task CPU cao. Vì vậy, chỉ cần khởi động lại Mac bằng cách nhấp menu Apple chọn Restart. Chờ khởi động xong, kiểm tra xem vấn đề WindowServer Mac CPU cao đã giải quyết chưa.

Câu hỏi thường gặp về khắc phục WindowServer Mac CPU cao

Q: Làm sao khắc phục WindowServer CPU cao và bộ nhớ cao trên Mac?
A: Thông thường có 6 phương pháp khắc phục WindowServer Mac CPU cao:
Phương pháp 1: Giảm thiểu số tệp & thư mục lưu trên màn hình nền.
Phương pháp 2: Thoát tất cả ứng dụng và cửa sổ không cần thiết.
Phương pháp 3: Tắt hiệu ứng trong suốt trên Mac.
Phương pháp 4: Ngăn Mission Control Spaces tự sắp xếp lại.
Phương pháp 5: Tắt 'Displays have separate Spaces' trong Mission Control
Phương pháp 6: Khởi động lại Mac

Q: Điều gì xảy ra nếu tôi thoát WindowServer?
A: Buộc thoát WindowServer sẽ đóng tất cả ứng dụng đang hoạt động, làm mới hệ điều hành, và đăng xuất bạn khỏi Mac. Đừng thử thoát tiến trình WindowServer như với các tác vụ khác.

Q: Hoạt động WindowServer trên Mac là gì?
A: WindowServer trên Mac là gì? Đơn giản, đó là tiến trình macOS vẽ các yếu tố trên màn hình, dù là cửa sổ ứng dụng, biểu tượng, hay trang web. Càng nhiều cửa sổ mở cùng lúc, WindowServer càng cần nhiều chu kỳ CPU.