Pesan aneh di konsol tentang kunci _DirtyJetsamMemoryLimit

36

Pesan ini selalu ditampilkan di log konsol secara berkala.

com.apple.xpc.launched: (comm.apple.imFoundation.IMRemoteURLConnectionAgent) the _DirtyJetsamMemoryLimit key is not available in this platform

Adakah yang bisa menjelaskan mengapa itu ditampilkan dan jika itu berdampak pada kinerja sistem, serta bagaimana cara menghilangkannya?

erwin
sumber
1
Saya memiliki pesan yang sama pada dua mesin Yosemite (satu upgrade dari Mavericks, yang lainnya install bersih). Jam pencarian di internet membuat saya tidak punya tangan kosong ... semua hasil merujuk pada pemrograman iOS (jadi mungkin ini masalah dengan basis kode bersama?). Mungkin hanya membutuhkan pembaruan 10.10.1 dari Apple.
Dustin Wheeler
Masalah yang sama di sini. Log konsol di bawah ini. Tidak ada kesalahan nyata yang saya lihat, tetapi butuh hampir satu menit penuh untuk memuat. 4/17/15 10: 31: 11.583 com.apple.xpc.launchd [1]: (com.apple.imfoundation.IMRemoteURLConnectionAgent) Kunci _DirtyJetsamMemoryLimit tidak tersedia pada platform ini. 4/17/15 10: 31: 52.000 kernel AM [0]: AppleCamIn :: power_on_hardware 4/17/15 10: 31: 53.292 AM AppleCameraAssistant [373]: StartHardwareStream: membuat penerima bingkai: 1280 x 720 (420v) [12.00 , 29,97] fps
Masalah yang sama di sini. Saya menggunakan MacOS 10.13.4 High Sierra.
neoneye

Jawaban:

40

Jetsam adalah sistem yang memantau penggunaan memori di OSX dan iOS. Itu membuat daftar proses pada perangkat, untuk memantau situasi di mana perangkat kehabisan RAM gratis dan mencari hal-hal untuk membunuh untuk membebaskan RAM. Ini juga mengawasi proses yang menggunakan terlalu banyak RAM; melanggar level "tanda air tinggi".

Pesan kesalahan ini adalah karena kode dibagi antara OSX dan iOS tetapi kunci _DirtyJetsamMemoryLimit hanya tersedia di iOS.

Anda dapat membaca lebih lanjut tentang Jetsam di tautan berikut.

http://newosxbook.com/articles/MemoryPressure.html

Dan jika Anda benar-benar tertarik, Anda dapat membaca beberapa kode Jetsam di dua file berikut.

http://www.opensource.apple.com/source/xnu/xnu-1456.1.26/bsd/kern/kern_memorystatus.c http://www.opensource.apple.com/source/xnu/xnu-1456.1.26 /bsd/sys/kern_memorystatus.h

Singkatnya, saya rasa pesan kesalahan ini tidak selalu mengindikasikan masalah kinerja. Sistem memori pada iOS jauh lebih ketat karena iOS tidak memiliki hal-hal seperti swapfile (alias memori virtual) yang memungkinkan sistem melebihi jumlah fisik RAM. OSX memiliki lebih banyak ruang untuk dimainkan.

Siapa pun dapat memverifikasi bahwa itu tidak berdampak pada kinerja dengan menggunakan Monitor Aktivitas dan menunjukkan semua proses dalam tampilan CPU. Lihat syslogdbaris dan pastikan waktu CPU masuk akal dibandingkan dengan tugas lain yang ingin Anda lakukan dengan Mac Anda.

Alistair McMillan
sumber
1
Baik. Jadi tidak ada koneksi antara _DirtyJetsamMemoryLimit ini dan crash berulang pada Yosemite?
@Domnuldid Tidak ada koneksi. Saya memiliki Mac yang stabil yang mencatat pesan kesalahan ini sepanjang waktu, jadi tidak ada indikasi yang jelas bahwa semua itu adalah kebetulan.
bmike
@bmike Apakah kami yakin sysmondada hubungannya dengan Jetsam? Saya mendapat kesan bahwa Jetsam sepenuhnya terkandung dalam kernel, dan sysmondhanya untuk memberi makan hal-hal seperti Activity Monitor dan top.
Alistair McMillan
@AlistairMcMillan Maafkan kesalahan saya - syslogdadalah daemon terkait yang akan menunjukkan IO / CPU berlebihan karena pemrosesan file log dan perutean pesan log. Anda benar tentangsysmond
bmike
4
jika kode dibagikan antara iOS dan OS X maka Apple des harus memfilter pesan log keluaran ... tidak menampilkan pesan yang terkait dengan iOS di komputer OS X ... log sistem menjadi penting sepanjang Alkitab ...
erwin