Можно убить процесс kernel task. Было найдено решение проблемы. Избавьтесь от ненужных объектов входа

  • 24.04.2019

Даже самый крутой Mac рано или поздно начинает тупить, тормозить и раздражать медленной работой. 8 ГБ оперативной памяти легко забиваются десятком вкладок в Safari, почтовиком, тремя запущенными мессенджерами и незакрывающимся фотошопом.

Вот так даже без запуска тяжелых задач бодрый середняк компьютерной линейки превращается в еле плетущегося аутсайдера.

Можно перезагрузить компьютер, ненадолго но поможет. Можно довериться приложению-клинеру, которое найдет скрытые резервы для ускорения Mac, но проще всего выявить самые прожорливые программы и по возможности не держать их в фоновом режиме.

Кто съел оперативную память

В Mac App Store есть с десяток однотипных приложений для мониторинга оперативной памяти Mac. Все они могут определять тяжёлые программы.

Чтобы не забивать систему лишним софтом, предлагаю использовать стандартное приложение Мониторинг системы . Найти его можно в Launchpad или через Spotlight .

1. Запускаем Мониторинг системы .

2. Переходим на вкладку Память .

3. Память .

4. Видим программы, которые потребляют больше всего оперативной памяти.

В данном случае лидирует Safari, который сам потребляет системные ресурсы, так еще и каждая отдельная вкладка съедает определенное количество мегабайт.

Некоторые разработчики немного хитрят, разбивая фактическую нагрузку на несколько процессов. Для такого просмотра удобно включить сортировку по наименованию.

Например, мессенджер Slack, который работает в паре с процессами Slack Helper, потребляет не так уж и много – 50 Мб, но фоновые процессы программы отъедают еще почти 400 Мб. И это без активного использования программы!

Только представьте, что один мессенджер потребляет 1/16 часть оперативной памяти моего Mac. Если замечу тормоза и лаги, проще всего первым делом отключить эту программу, браузером я пожертвовать не могу.

К сожалению не все фоновые процессы приложений называются одинаково, для поиска других ресурсоёмких программ придется экспериментировать с их закрытием.

Кто напрягает процессор

Если с памятью все нормально, но компьютер работает на пределе, кто-то сильно нагружает процессор.

И эту информацию можно получить в приложении Мониторинг системы.

1. Запускаем Мониторинг системы .

2. Переходим на вкладку ЦП .

3. Можно отсортировать процессы по столбцу % ЦП .

4. Видим программы, которые больше всего нагружают процессор.

«Обжора» Slack и здесь выделился. В фоне ему нужно 1-2% мощности процессора, а в активном режиме вместе с другими службами мессенджер может запрашивать до 30%.

Что в итоге

После детального анализа можно сделать определенные выводы. Если Mac часто работает на пределе, следует задуматься над целесообразностью использования некоторых приложений. Тот же Slack можно использовать через браузер или попробовать установить мультимессенджер, заменяющий несколько программ ( или ).

Если достойных альтернатив у программы нет, следует просто чаще завершать приложение, когда оно не нужно. При помощи стандартных средств автоматизации можно и открывать целые наборы программ.

Вот так можно разгрузить свой компьютер и повысить продуктивность работы на нем.

⭐ Спасибо re:Store за полезную и интересную информацию.

Попался в руки старенький ноутбук MacBook Pro 2010 года, который сильно тормозил. Подозрения пали на диск, так как в тех моделях устанавливались HDD, было решено заменить его на SSD с уже установленной Mac OS снятый с другой машины.

Проблема никуда не ушла и визуально не было улучшения. После нескольких проверок, сбросов NVRAM и SMC , так как кулер крутил на 100% оборотов, когда практически уже был уверен что проблема в железке, случайно заглянул в «Мониторинг системы » и увидел там загрузку процессора на 140-250%.
Проблема заключалась в том, что процесс Kernel_task отъедал ресурсы CPU и не давал работать всей ОС.

Вот что пишут сами Apple об этом процессе:
Процесс kernel_task помогает управлять температурой ЦП, снижая доступность ресурсов ЦП для программ с высокой интенсивностью вычислений. Иначе говоря, процесс kernel_task запускается при возникновении риска перегрева центрального процессора. Сам по себе он не вызывает такие ситуации. При снижении температуры ЦП активность этого процесса автоматически уменьшается.

Было найдено решение проблемы:

1) Для начала включаем отображение скрытых папок:
— Заходим в «Терминал»
— Вбиваем 2 команды:
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder

2) После чего определяем модель компьютера:
— Кликаете «Об этом Mac»
— Далее жмите кнопку «Подробнее»
— Кликаете на «Отчёт о системе»
Там где аппаратные средства находите и запоминаете «Идентификатор модели». В моём случае это MacBookPro7,1

3) Переходите по этому пути:
/System/Library/Extensions
Выбирайте файл IOPlatformPluginFamily.kext , кликаете правой кнокой и выбираете «Показать содержимое пакета»

4) Переходите в Contents/PlugIns , потом на файле ACPI_SMC_PlatformPlugin.kext так же выбираете «Показать содержимое пакета»

5) Далее в Contents/Resources находите файл с моделью ноутбука. Как вы помните: у меня был MacBookPro 7.1. Удаляйте этот файл! (Если нет нужного файла, удалите ближайшие модели, к примеру нет 8.1, удаляете 7.1 и 9.1)

6) Перезагрузите компьютер. Вероятно эту процедуру придется проделывать после каждого обновления Mac OS

Чтобы вернуть отображение папок, как было раньше, выполните в «Терминале» команду:
defaults write com.apple.finder AppleShowAllFiles FALSE
killall Finder

Если не удается удалить идентификатор модели

В том случае, когда у вас MacOS El Capitan или выше, система не даст удалить файл-идентификатор, так как предварительно нужно снять защиту целостности системы (System Integrity Protection или сокращенно SIP).

SIP можно отключить только из режима восстановления. Надо перегрузиться, получить доступ к «Терминалу » и ввести команду отключения.

  • Отключаем Mac и при включении зажимаем клавиши ⌘R (Command+R);
  • После загрузки попадаем в меню восстановления. Открываем раздел «Утилиты » и запускаем «Терминал »;
  • Вводим команду:
    csrutil disable
  • Перезагружаем Mac.

Чтобы включить защиту, нужно опять войти в режим восстановления, открыть терминал и ввести команду.

Если у вас компьютер под управлением MacOS (MacBook или iMac), то вы не раз замечали в «Мониторе активности» процесс «kernel_task». Что это такое и почему он грузит систему — рассмотрим в нашей статье.

Данный системный процесс может значительно грузить «железо» устройства (особенно процессор). Нагрузка сопровождается увеличением скорости работы кулеров системы охлаждения.

Что за процесс

На сайте компании Apple указано, что основная функция «kernel_task» — управление температурой за счет «подавления» требовательных к производительности программ.

Если компьютер начинает нагреваться, то процесс запускается и ограничивает работу приложения, которое вызвало это повышение температуры. Процент нагрузки «kernel_task» пропорционально зависит от нагрева.

Как отключить

Особенно беспокоит данная проблема владельцев устаревших моделей Mac (2012 и более ранние) из-за невысокой производительности самого устройства. Решить это можно удалением некоторых компонентов. Рассмотрим два варианта.

Важно! Все действия вы делаете на свой страх и риск. Будьте внимательны.

Для MacOS Yosemite и передыдущих

Если у вас версия операционной системе младше, чем El Capitan, то процесс отключения будет выглядеть следующим образом.

  1. Зайдите в «Терминал» → введите по очереди две команды:
  2. Откройте «Об этом Mac».
  3. «Подробнее» → «Отчет о системе».
  4. Запомните информацию с пункта «идентификатор модели» (например, «MacBookPro5,5»).
  5. «Переход» → «Переход к папке».
  6. /System/Library/Extensions .
  7. Кликните ПКМ по файлу «IOPlatformPluginFamily.kext» → «Показать содержимое пакета».
  8. «Contents» → «PlugIns» → кликните ПКМ по «ACPI_SMC_PlatformPlugin.kext» → «Показать содержимое пакета».
  9. В «Contents» → «Resources» найдите файл с названием вашего Mac (например, «MacBookPro7,1») → удалите его.
  10. Перезагрузите ПК → откройте «Терминал» → пропишите 2 команды:

На днях ко мне в руки попал MacBook Pro 13″ с интересной проблемой task_kernel 390% (это говорит нам о том, что практически все 4 ядра загружены на 100%, такие проблемы обычно бывают при перегреве процессора или видеокарты). Такого на маках я еще не встречал. Операционка на тот момент была MacOS 10.6.

Обновили систему до Lion 10.7 накатили снова все апдейты, некоторое время поработал нормально, далее та же ситуация…

Отучаем MacBook / MacBook Air тормозить при высокой температуре процессора.

При нагрузке на процессор и видеокарту чуть выше средней процесс kernel_task (по сути, ядро ОС) начинает «кушать» 120-150% мощности процессора. При этом ноутбук начинает невозможно тупить.

Виновницей такого аппетита у ядра системы является служба syslogd. Решается проблема выполнением следующих действий:

1) Открываем терминал (программы — служебные программы — терминал).

2) Останавливаем службу. Для этого вводим команду:
sudo launchctl stop com.apple.syslogd

3) Удаляем один файлик (скорее всего он будет отсутствовать, так что в этом случае, если терминал пожалуется, что файла нет, просто переходим к следующему действию):
sudo rm /var/log/asl.db

4) Удаляем папку asl. Для этого вводим:
sudo rm -R /var/log/asl

5) Удаляем лог. Для этого вводим:
sudo rm /var/log/system.log

6) Чтобы при перезапуске служба не испугалась, создаем этот же файлик, но пустой следующей командой:
sudo touch /var/log/system.log

7) Перезапускаем службу:
sudo launchctl start com.apple.syslogd

Теперь будем сбрасывать энергонезависимую память (Non-volatile Random Access Memory или NVRAM). Для этого найдите на клавиатуре клавиши Cmd+Option+P+R (⌘+⌥+P+R). Включите компьютер и зажмите эту комбинацию клавиш до того, как загорится серый экран. Клавиши не отупскаем, пока компьютер не перезагрузится, а вы не услышите мелодию загрузки (Startup Sound - такое себе «та-дам») во второй раз. Дальше клавиши можно отпустить, иначе ноутбук снова будет перезагружаться.

У меня выполнение указанных действий привело к следующим результатам:

При средней загрузке (Safari, Adium, Mail, Skype, Pages, iTunes) температура процессора держится в диапазоне 45-50 градусов, обороты вентилятора 1800-2200. kernel_task кушает около 1-2% процессора.

При топовых нагрузках (видео в HDTV, одновременно пара роликов на youtube, плюс весь перечисленный выше софт) температура процессора доходит до 75-80%, обороты вентилятора в диапазоне 5000-6200, kernel_task по прежнему кушает мало — от 1 до 3% процессора.

Источники: http://aberegovoy.livejournal.com/, http://arwy.ru/

Все сделали как написано, но ВОЗ И НЫНЕ ТАМ, продолжили свои изыскания дальше…

Совсем недавно я заметил, что время автономной работы значительно сократилось, а процесс «kernel_task» использовал довольно немного процессора (постоянный 1-6% на моем двухъядерном процессоре i8, 2010 MBP). Очевидно, я думаю, что использование процессора kernel_task способствует уменьшению заряда , и мне нужно выяснить, почему.

Поиск в Google, похоже, kernel_task – это версия ОС Windows svchost.exe для OS X – пресловутый процесс do-all, который вы никогда не сможете отлаживать по-настоящему, вам просто нужно вручную перевернуть переключатели, пока один из них не будет работать.

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

Монитор активности показывает использование ЦП. Когда я нажимаю Inspect, он показывает 77 потоков, 2 порта, часы и часы процессорного времени, Context Switches – около 400 в секунду, а Mach Messages In и Out – около 6000 в секунду.

Как я могу как-то проверить или контролировать этот процесс kernel_task и выяснить, что на самом деле использует всю эту мощь?

(примечание: мои текущие подозреваемые – последнее обновление 10.6.7, обновление Firefox от 4 бета-версии 10 до RC или ScreenResX – это все, что я делал недавно, о чем я могу думать)

Solutions Collecting From Web of "Как отладить процесс «kernel_task» из-под контроля?"

Вот отличное объяснение, что такое kernel_task. Это могут быть драйверы (kexts), сетевые или дисковые операции. Вы не можете просто использовать инструменты для присоединения к процессу kernel_task .

Ищите другие признаки, такие как журналы (Console.app), активность диска (например: iotop fs_usage), активность в сети (попробуйте отключиться от локальной сети, отключите устройства в настройках сети), попробуйте удалить / удалить из памяти (kextunload) драйверов, которые являются сторонними – планшеты, модемы usb 3g и т. д. Проверьте наличие приложений, которые устанавливают kexts

Также убедитесь, что ваша файловая система не повреждена, если у вас были какие-либо сбои в последнее время – сделайте чек.

У меня был аналогичный вопрос о том, как идентифицировать файлы и программы, связанные с kernal_task, используя следующую команду терминала:

Kextstat -l -k | awk "{n = sprintf("%d", $4); print n, $6}" | sort -n

Это отобразит различные kexts и связанную с ними память. Например, 6184960 com.apple.driver.AirPort.Brcm4360 для меня большой 6184960 com.apple.driver.AirPort.Brcm4360 , но я не могу много сделать, если я хочу использовать Wi-Fi.

Одно из предложений, которое я получил, это поиск всех не-Apple kexts, которые занимают память, связывая вышеуказанное с grep -v com.apple . Возможно, некоторые не-Apple-программы используют ваши ресурсы. Вы должны быть в состоянии удалить те, не нарушая ничего.

Конечно, старое решение – перезагрузить компьютер. Иногда это все, что требуется, чтобы вернуть процессы в нормальный уровень использования ЦП.

Как упоминалось @Christopher, тепло может привести к тому, что CPU ядра kernel_task начнет всплескиваться. Причина приведена в этом сообщении «Исправление» проблем с CPU ядра kernel_task в MacOS Lion 10.7 . По-видимому, когда процессор нагревается, ACPI_SMC_PlatformPlugin.kext будет занимать циклы процессора, пытаясь уменьшить фактическую загрузку процессора.

Таким образом, одним из решений является охлаждение вашего Mac (например, вентилятора) через внешний вентилятор или что-то вроде SMCFanControl .

В статье дается другое решение, которое заключается в удалении суб-kext, который вызывает это поведение. Хотя я должен признать, что лично я не уверен, насколько безопасно отключить это поведение.

У меня был массивный всплеск в использовании процессора kernel_task, и оказалось, что мой процессорный вентилятор частично отключен от сети. kernel_task имеет какое-то отношение к дросселированию CPU, когда становится слишком жарко. В вашем случае, возможно, ваш поклонник просто замаринован от мусора и пыли и нуждается в очистке.

Я нахожусь в OSX Lion с новым программным обеспечением macbook за 2011 год, и у меня недавно была kernel_task, работающая около 25-30% процессора, и мой вентилятор вращался в макс часами и часами. Я пробовал одну вещь за раз, и что это было … закрытие 5 или 6 окон в приложении Finder. Не могу сказать, что я понимаю, почему, но это было ясно.

На моем Mac использование ядра kernel_task в процессоре пропорционально используемой пропускной способностью в Интернете, от около 0% до 50%. Вероятно, это вызвано драйверами для моего модема Huawei 3G (HuaweiDataCardDriver.kext).

Вы можете попробовать отключить расширения ядра. Не нужно использовать kextunload: безопасно просто переместить пакеты kext из / System / Library / Extensions / в другую папку и перезапустить. Вы можете использовать Canary kextstat | grep -v com.apple или kextstat | grep -v com.apple kextstat | grep -v com.apple чтобы отобразить расширения ядра, которые не поставлялись с OS X.

Обычно kernel_task не контролируется, когда некоторые другие процессы перегружают системные вызовы или ресурсы (события ввода-вывода памяти или диска).

Когда это произойдет, вы можете использовать fs_usage программу fs_usage которая покажет вам системные вызовы и ошибки страниц, связанные с деятельностью файловой системы в режиме реального времени.

Поэтому запустите эту команду в терминале:

Sudo fs_usage

затем наблюдайте, какие процессы часто выполняют некоторые системные вызовы, и если вы их не используете, подумайте о том, чтобы закрыть / убить их.

Чтобы быть более конкретным, пожалуйста, проверьте колонку TIME INTERVAL, которая дает вам время, затраченное на системный вызов. Появление W после истекшего времени указывает, что процесс был запланирован для активности (в этом случае прошедшее время включает время ожидания).

Поэтому, чтобы фильтровать процессы, которые используют наибольший интервал времени в системных вызовах, выполните:

Sudo fs_usage | grep -v 0.0000

который покажет вам в последнем столбце наиболее голодные процессы (с точки зрения времени ядра). Вы можете настроить количество нулей для точности (меньше нулей, больше времени).

Для получения дополнительных идей также проверьте: Как исследовать использование памяти с большой памятью ядра?

Вот наиболее распространенные проблемы:

  • VBoxHeadless: если вы используете виртуальные VBoxHeadless (через бродягу), подумайте о том, чтобы приостановить их, когда они не используются;
  • mtmd: Кажется, Time Machine резервирует ваши данные каждый час, даже если ваш резервный диск не подключен (так называемые локальные снимки ), поэтому попробуйте отключить его (sudo tmutil disablelocal);
  • wine: если вы используете приложения Windows, подумайте о том, чтобы закрыть их, когда они не используются;
  • Chrome: ограничить количество открываемых вкладок одновременно (попробуйте OneTab ?) Или убейте некоторые процессы расширения (Flash ?) Через диспетчер задач , поскольку каждая вкладка может генерировать отдельный процесс;

У меня была такая же проблема в Йосемити, но благодаря этой доброй душе, основанной на этом другом, я мог ее решить. Я все еще не могу понять, что произошло, но, проиграв целый уик-энд, пытаясь разобраться в этом, я просто сдался и слепо следую его инструкциям. Посмотрите на мое отчаяние в мониторе активности:

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