3

Я использую SL на MacBook Pro (модель 8,1) с 4 ГБ ОЗУ. На данный момент у меня запущены только iTerm2, QuickSilver и Activity Monitor (и несколько демонов в фоновом режиме, например Dropbox и Citations, но не использующих более 20-30 МБ). Когда я проверяю использование памяти, он показывает 900+ МБ как Wired , и почти гигабайт как Active .

Проверил список «Мои процессы», топ-процесс там, кажется, съел 60-70 МБ. Если я перечисляю все процессы иерархически, я вижу kernel_task который использует около 350 МБ. Излишне говорить, что это очень своеобразно.

Будучи параноидальным ботаником, я начал задаваться вопросом, есть ли у меня какая-то скрытая вредоносная программа, поглощающая ресурсы за кулисами. Есть ли способ проверить это? В противном случае, что может быть причиной такого необъяснимого высокого использования памяти?

1 ответ1

3

Как ваш пользователь, вы можете видеть только загрузочный загрузчик в OSX. Вы живете в области Аква. Итак, чтобы увидеть все, что работает из-за вас:

launchctl list

Покажет вам, что загружено. Это еще не все, однако. launchctl есть много опций, таких как:

bslist [PID | ..] [-j]
          This prints out Mach bootstrap services and their respective
          states. While the namespace appears flat, it is in fact hierar-
          chical, thus allowing for certain services to be only available
          to a subset of processes. The three states a service can be in
          are active ("A"), inactive ("I") and on-demand ("D").

          If [PID] is specified, print the Mach bootstrap services avail-
          able to that PID. If [..] is specified, print the Mach bootstrap
          services available in the parent of the current bootstrap. Note
          that in Mac OS X v10.6, the per-user Mach bootstrap namespace is
          flat, so you will only see a different set of services in a per-
          user bootstrap if you are in an explicitly-created bootstrap
          subset.

          If [-j] is specified, each service name will be followed by the
          name of the job which registered it.

Так как ваш пользователь:

launchctl bslist -j

Даст вам все, что загружено в launchd в настоящее время, все, что работает, будет иметь «A» рядом с ним.

...

A  com.apple.cookied (com.apple.cookied)
D  com.apple.coreservices.quarantine-resolver (com.apple.coreservices.uiagent)

Здесь приготовленный (WTF?) бежит. Ниже карантинный преобразователь загружен, но фактически не работает.

Теперь, возможно, вы склонны попробовать что-то вроде:

sudo launchctl list

Думая, что как корень, вы увидите все. Нет. Root живет в системном домене и не может видеть вас ясно. Вы запустите работу в Системе или в домене демона.

Читая справочную страницу, вы найдете:

sudo launchctl bstree -j   # This should show you everything.
ps au

В качестве команды, которая дает вам все дерево Маха, работающее в системе.

Монитор активности показывает некоторые вещи, но я не очень хочу зависеть от этого.

Ссылка:

http://developer.apple.com/library/mac/#technotes/tn2083/_index.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .