Я использую MacOS 11.6. Я написал небольшое задание cron, которое измеряет использование памяти процессом и, если это использование превышает пороговое значение, выводит уведомление на экран. (Смысл в том, чтобы напомнить мне, когда дырявый процесс становится настолько большим, что пора его перезапустить.)
Все это работает просто отлично, за исключением того, что использование памяти, рассчитанное с помощью моей методики, никогда не совпадает с тем, что сообщает iStat Menus (мое всегда ниже), и я считаю, что числа iStat Menus лучше предсказывают, когда мне нужно перезапустить процесс. Да, я могу просто установить свои собственные пороги ниже, но я хочу узнать, как iStat Menus рассчитывает их числа. Я пробовал много способов, но я не могу получить номер, который соответствует их номеру. Вот моя текущая команда:
ps ax -o rss, команда | fgrep -i firefox | awk '{s+=$1}END{print s/1024/1024}'
(Проблема не уникальна для измерения Firefox. То же самое для Apple Mail и любого другого. Однако дельта различается: для Firefox я видел, что моя методика почти на 1 ГБ ниже, чем iStats.)
Любые идеи о том, как iStats выполняет свои измерения?