com.apple.iconServiceAgent sử dụng nhiều RAM trong 10.9


10

Tôi đã thực hiện cài đặt mới OS X 10.9 và hiện tại quá trình com.apple.iconServicesAgentnày đang sử dụng> 300MB RAM, đó là khá nhiều. Quá trình này đang sử dụng lượng bộ nhớ lớn thứ hai trong tất cả các quy trình, sau tác vụ kernel.

Google nói với tôi rằng những người khác cũng có vấn đề này, nhưng tôi không tìm thấy giải pháp nào cho đến nay.

Có cách nào để giảm mức tiêu thụ RAM của quá trình này không?


Điều gì sẽ xảy ra nếu tôi giết chủ đề ......

Có bất kỳ áp lực bộ nhớ trên hệ thống này? Các bộ phận của HĐH được thiết kế để sử dụng một phần lớn RAM khi không cần thiết để tăng tốc mọi thứ. Bạn có đăng ảnh chụp màn hình màn hình của Trình giám sát hoạt động ở cuối tab Bộ nhớ không? Nhìn vào Bộ nhớ vật lý / Được sử dụng / áp lực và số lượng Ứng dụng / Tệp bộ nhớ cache và Bộ nhớ có dây là cần thiết để chẩn đoán bất kỳ mối lo ngại nào về việc sử dụng RAM.
bmike

Câu trả lời:


11

Quan sát

Bạn có thể quan sát sự tăng giảm tự nhiên trong sử dụng.

Bạn không nên coi việc sử dụng là một vấn đề.

Bối cảnh: về các dịch vụ biểu tượng

Để biết ý tưởng về những gì được thực hiện bởi các dịch vụ biểu tượng (com.apple.IconService daemon, com.apple.IconServiceAgent process và các tệp liên quan), hãy chạy lệnh sau trong cửa sổ Terminal có thể rộng tới 256 ký tự hoặc rộng hơn:

sudo fs_usage -w -f filesys com.apple.IconServices | grep write

Sau đó, trong Finder:

  1. duyệt thư mục chưa được duyệt kể từ khi bạn khởi động máy Mac
  2. duyệt đi
  3. duyệt trở lại cùng một thư mục.

Bạn sẽ thấy rằng:

  • trình duyệt ban đầu gây ra ghi (vào bộ đệm)
  • lông mày thứ hai và tiếp theo gây ra không có bộ nhớ đệm bổ sung, miễn là nội dung của thư mục không thay đổi.

Hủy bỏ lệnh, Control-C

Đối với một cái nhìn chưa được lọc về mọi thứ:

sudo fs_usage -w -f filesys com.apple.IconServices

Lợi ích của dịch vụ biểu tượng trong Mavericks

Dường như đối với tôi, cách tiếp cận của Apple đối với các biểu tượng bộ nhớ đệm có lợi đặc biệt cho các ứng dụng / quy trình trong đó các chức năng chính bao gồm đọc siêu dữ liệu từ nhiều loại hệ thống tệp. Các ứng dụng như Finder, các quy trình như Dock, v.v.

Là một phần của cách tiếp cận rộng hơn để tối đa hóa hiệu suất, các dịch vụ biểu tượng sẽ cho phép trình bày với độ trễ tối thiểu của tập hợp siêu dữ liệu được người dùng quan tâm nhất .

Đối với ngăn xếp Ứng dụng gần đây trong Dock: có thể là tên, biểu tượng và ngày / lần là điều cần thiết trong một tập hợp con.

Đối với các chế độ xem trong Finder: các tập hợp con có thể hoàn toàn khác nhau, tùy thuộc vào những gì người dùng yêu cầu.

Suy nghĩ thêm

Trong HFS Plus (Mac OS Extended), với tham chiếu đến tài liệu đã nghỉ hưu, chúng tôi có tệp B-cây nóng định hướng hiệu suất , tệp thuộc tính , v.v. Với tất cả mọi thứ khác đã được thực hiện cho hệ thống tập tin đó, giờ đây nó bị quá mức quá mức .

Các lợi ích liên quan đến hiệu suất của các dịch vụ biểu tượng nên tương đối tập tin hệ thống . Điều này làm hài lòng. Tôi hy vọng những lợi ích sẽ được người dùng ZFS trên Mavericks nhận ra và v.v.


Khi các dịch vụ biểu tượng chiếm tới hơn 20 GB, tôi nói đó là một vấn đề. Điều này dễ dàng lặp lại trên tất cả các máy Mac của tôi. Tôi có một thư mục phim trên một ổ đĩa ngoài. Tôi mở thư mục trong Finder và iconerviceagent bắt đầu leo ​​lên bầu trời. Ngay sau đó, Finder sẽ chuyển sang chế độ 'không phản hồi'. Tất cả những bộ phim này có hình thu nhỏ của họ như nghệ thuật poster phim. Nếu tôi xóa tất cả các hình thu nhỏ được dán tùy chỉnh, iconerviceagent sẽ trở lại hoạt động bình thường.
spotsman

4

Nó dường như là một cái gì đó để làm với dịch vụ kết xuất các biểu tượng trong Finder, khi tôi tối đa hóa cpu, không có biểu tượng nào được hiển thị trong công cụ tìm.

Tôi buộc bỏ quy trình và mở lại Finder và tất cả dường như đã hoạt động trở lại.


Buộc com.apple.IconServicesAgentphải bỏ thuốc lá có thể là mặt nạ, hoặc đơn giản, trì hoãn một vấn đề tiềm ẩn. Một vấn đề không phải với tác nhân, mà với dữ liệu mà tác nhân cố gắng xử lý .
Graham Perrin

2
Tôi rất nhiều với @GrahamPerrin về điều này. Khiếu nại về các dịch vụ biểu tượng làm quá nhiều nghĩa đen là "bắn tin nhắn" - các dịch vụ hệ thống cung cấp dữ liệu cho các ứng dụng chạy. Nếu bạn thoát tất cả các ứng dụng và khởi động lại HĐH - hãy xem phân bổ ram của com.apple.IconServiceAgent là gì và sau đó bạn có thể xem khi nó phát triển khi hệ thống và các ứng dụng khác được yêu cầu vẽ biểu tượng trên màn hình. Khi bạn đã thu thập phân bổ RAM ban đầu, bạn có thể theo dõi mọi thứ để xem liệu có áp lực bộ nhớ để khiến bộ đệm này bắt đầu mỏng đi không.
bmike

1
Tôi nghĩ rằng giết quá trình là tốt, nếu nó không làm tổn thương bất cứ ai và làm cho người dùng hạnh phúc hơn. Nó có thể chỉ không giải phóng tài nguyên đủ nhanh (hoặc hoàn toàn) sau một số hoạt động chuyên sâu. Đối với những người tò mò, cũng có gist.github.com/walesmd/7315613 - Mặc dù vậy, tôi không khuyên bạn nên làm theo các hướng dẫn đó, trừ khi đại lý luôn chiếm nhiều bộ nhớ.
Nickolay
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.