Снижает ли Google Chrome производительность вашего Mac?

В эти выходные, разработчик Лорен Брихтер выпустил веб-сайт, на котором утверждалось, что Google Chrome для Mac — или, точнее, его механизм автоматического обновления — заставлял процесс WindowServer в macOS постоянно загружать ЦП, снижая производительность macOS даже на высокопроизводительных машинах.
Веб-сайт содержит информацию о том, как полностью избавиться от Chrome и его средства обновления с вашего Mac, чтобы восстановить производительность, и даже назвал его «вредоносным ПО» (с тех пор это слово было удалено). Многие пользователи сообщают, что это действительно работает и что после удаления Google Chrome со своих компьютеров все стало намного быстрее.
Позвольте мне предисловие к этому, четко заявив, что я не фанат Google Chrome. Он у меня установлен, потому что для некоторых вещей, которые я делаю в сети, он требуется, но моим предпочтительным браузером всегда был Safari. Меня заинтересовала техническая сторона этой истории и некоторые вопросы, над которыми я размышлял, читая отчет Лорен. Эти вопросы были следующие: возможно ли, чтобы процесс скрылся от Activity Monitor во время его работы? Когда запускается процесс обновления и что он делает? Действительно ли программа обновления Google Chrome является причиной использования ЦП WindowServer, которую видят люди?
Может ли процесс скрыться от Activity Monitor во время его работы?
Однозначного ответа на этот вопрос у меня нет. Единственным практическим способом, который я нашел для этого, был мониторинг системы на предмет запущенных процессов и, если обнаружен Activity Monitor, завершение моего процесса, чтобы пользователь не увидел его в Activity Monitor. Я не понимаю, почему программа обновления Google Keystone должна это делать, и некоторый быстрый статический анализ ее двоичных файлов не выявил такой тактики.
Когда запускается процесс обновления и что он делает?
Сервис Google Keystone, как и любые другие приложения и процессы сервисного типа, работающие на Mac, регистрируется в системе, используя список свойств launchd. Launchd — это демон, отвечающий за порождение процессов в macOS, а список свойств launchd — это, по сути, файл конфигурации, который сообщает launchd, как он должен обрабатывать данную службу.
В случае программы обновления Google Chrome она регистрирует две службы, которые поддерживаются одним и тем же двоичным файлом, расположенные в ~ / Library / Google / GoogleSoftwareUpdate / GoogleSoftwareUpdate.bundle / Contents / Resources / GoogleSoftwareUpdateAgent.app / Contents / MacOS / GoogleSoftwareUpdateAgent.
Для службы «Keystone User Agent» для параметра StartInterval установлено значение 3623 секунды, поэтому она будет запускаться примерно раз в час для проверки обновлений. Другой, «Keystone XPC Service», запускается только тогда, когда приложение Google хочет самостоятельно проверить наличие обновлений по запросу. Это не сервисы, которые будут работать бесконечно, они запускаются только периодически, чтобы проверять наличие обновлений или когда приложение Google хочет с ними разговаривать, что делает утверждение о том, что они замедляют WindowServer, еще более интересным.
Что касается того, что делает этот агент обновления, я проделал базовую обратную разработку, статически проанализировав задействованные двоичные файлы с помощью Hopper. Кажется, он обрабатывает такие вещи, как загрузка отчетов о сбоях, если они есть, а также проверка обновлений приложений Google, таких как Chrome. Мне удалось увидеть его в Activity Monitor, пока он действительно работает, и в этом случае он будет отображаться как «Обновление программного обеспечения Google».
Обратите внимание, что это фундаментальное исследование ни в коем случае не является подтверждением того, что эта программа не делает ничего потенциально опасного, это просто означает, что за то ограниченное время, которое мне пришлось изучить, я не обнаружил ничего тревожного.
Действительно ли программа обновления Google Chrome является причиной высокой загрузки ЦП WindowServer, которую наблюдают люди?
Это был главный вопрос, на который я намеревался ответить во время тестов. Тесты проводились на MacBook Pro 16 дюймов 2019 года с процессором Core i9 и 16 ГБ оперативной памяти. Машина была подключена к внешнему дисплею, никакие другие приложения во время тестов не выполняли ничего, кроме основных фоновых задач, и я также оставил включенным кофеинат, чтобы машина не спала.
Используя инструменты, которые позволяют вам наблюдать за показателями программного обеспечения, такими как использование ЦП, я записал два сеанса: один с установленным Google Chrome, а другой с Google Chrome и удаленными службами обновления. Я использовал первое 30-минутное окно сеанса Instruments для измерения загрузки ЦП WindowServer в каждом сценарии.

Как видно из сравнения выше, при установленном Chrome процесс WindowServer использовал около 50 секунд ЦП во время тестового окна. Без установленного Chrome и его апдейтера он использовал около 49 секунд. Я не рассматриваю это как подтверждение проблемы, учитывая, что разница незначительна (намного ниже того, что может вызвать видимые проблемы с производительностью).
Кроме того, утверждение о том, что процесс, который выполняется один раз в час, приведет к высокой загрузке ЦП совершенно несвязанной системной службой, является безумным. WindowServer отвечает за визуализацию пользовательского интерфейса macOS на экране, он проводит свое время в методе CGXUpdateDisplay, отображая CALayers, задачу, которая не имеет абсолютно ничего общего с чем-либо, что может делать средство проверки обновлений программного обеспечения (без пользовательского интерфейса).
Почему люди считают, что Chrome снижает производительность Mac?
Что касается того, почему люди воспринимают эту проблему и ее решение, я могу придумать несколько вариантов. Один из них — эффект плацебо: у вас есть проблема, вы делаете что-то, о чем кто-то сказал, что вам следует решить эту проблему, а затем вы чувствуете, что проблема решена. Это чаще встречается в компьютерах, чем вы думаете. Другой — это предвзятость подтверждения: вы ненавидите Google и Google Chrome (эй, я тоже не фанат, мы можем быть друзьями), и вы видите историю, которая соответствует вашему восприятию программного обеспечения, поэтому вы инстинктивно в это верите.
Еще одна вещь, которая может быть здесь задействована, это то, что инструкции на веб-сайте Лорен говорят вам перезагрузить компьютер после выполнения описанных шагов, но это не обязательно для удаления программы обновления программного обеспечения Google. Фактически, в своих тестах я удалил его, убедившись, что он не запущен, затем запустил launchctl unload, а затем удалил списки свойств launchd и двоичные файлы из системы. Я сделал это, потому что компьютер, который только что был перезагружен, всегда будет работать быстрее, чем тот, который работал в течение нескольких недель, и мне нужно было исключить эту переменную из моих тестов.
Если вы все еще чувствуете, что Google Chrome снижает производительность вашего Mac, во что бы то ни стало, удалите его, я рекомендую вместо этого Safari.
What is com.google.keystone.xpcservice.plist?
I was reading an article yesterday about how to manually check your Mac for unwanted software. In following its instructions, I came across these two files:
Both of these files have a creation date of January 30, 2020.
I can find a little bit about the first file on the Internet but not about the second one (. xpcservice. ). The first one seems to be part of the Google auto-update for Google Chrome. Is the second one as well?
I use Firefox for my primary web browser, but using Chrome is not unheard of for me. I might have used it on January 30. I cannot remember. Even so, why is the auto-update plist so brand new? I find it suspicious.
Show more Less
MacBook Air 13″, macOS 10.13
Posted on Feb 13, 2020 9:51 AM
Me too (635) Me too Me too (635) Me too Reply
Question marked as Best reply
User level: Level 10
238,350 points
Posted on Feb 13, 2020 10:43 AM
The XPC Services API, part of libSystem, provides a lightweight mechanism for basic interprocess communication integrated with Grand Central Dispatch (GCD) and launchd. The XPC Services API allows you to create lightweight helper tools, called XPC services, that perform work on behalf of your application.
There are two main reasons to use XPC services: privilege separation and stability.
Show more Less
Similar questions
Need confirmation about MAC component. ‘C2/Generic-A’ at ‘/Library/Apple/System/Library/StagedFrameworks/Safari/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.Networking.xpc/Contents/MacOS/com.apple.WebKit.Networking’ is malicious content? If it is not malicious what is the use of that component?
EngineOrder or MultiUpgrade apps on macbook pro? Anyone heard of the EngineOrder or MultiUpgrade apps on macbook pro? it looks like a piece of malware to me but I can’t see it in the app list to move to trash.
Malware — commonupdater Hello, I recently tried to download an online game to play on my MacBook. Unfortunately it did not work and something called ‘commonupdater’ downloaded with it. It seems to control the internet (redirects you away from google search engine, creates a ghost safari page on my bottom line of open apps). I moved the app to trash, but it has reappeared a few weeks later. Is there any safe programme that can scan my macOS for any dangerous malware? Thanks for any advice!
Проблема с отключением компьютеров Mac – это вина Google, на самом деле
Буквально вчера мы прокомментировали несколько загадочную проблему, связанную с Mac Pro это якобы установленное программное обеспечение от алчный, с акцентом на Media Composer. Поскольку пострадали несколько пользователей, многие последовали за полом вагона, который теперь был «перевернут».
С ростом количества отчетов многие пользователи сначала начали утверждать, что проблема также затронула другие Mac, в дополнение к рабочая станция, Затем другая группа раненых заявила, что на их компьютерах не установлено программное обеспечение Avid, в результате чего основная причина проблемы снова осталась неизвестной – до тех пор, пока Google опубликовать новый отчет об ошибке, которая может повлиять на некоторые системы MacOS.
По данным компании, версия 1.2.13.75 Google Keystone («скрытого» программного обеспечения для обновления) была отправлена с ошибкой, которая повреждает macOS на компьютерах Mac, на которых отключена защита целостности системы (PIS).
Точнее, функция безопасности операционной системы помогает «предотвратить изменение потенциально вредоносным программным обеспечением защищенных файлов и папок Mac». Хотя эта функция была включена в OS X El Capitan (10.11), ошибка Google также затрагивает компьютеры, которые не поддерживают PIS.
Google заявил, что прекратил распространение вышеупомянутого обновления Keystone до тех пор, пока не будет выпущено решение. На компьютерах, на которых уже установлено обновление, компания рекомендует пользователям предпринять следующие шаги для восстановления компьютеров, на которых возникла ошибка (только для компьютеров Mac с установленной OS X El Capitan 10.11 или более поздней версии).
- В режиме восстановления выберите том, установленный с приложением Google (в большинстве случаев «Macintosh HD»).
- Откройте приложение «Терминал» и введите следующие команды:
# chroot /Volumes/[nome do volume instalado] # mv var vv # ln -s private/var var # chflags -h restricted /var # chflags -h hidden /var # xattr -sw com.apple.rootless "" /var
Для пользователей OS X Yosemite 10.10 и более ранних версий перейдите ко 2-му шагу выше и введите в Терминале следующие коды:
/Users/[nome do usuário]/Library/LaunchAgents/ OU /Library/LaunchAgents/ - com.google.keystone.agent.plist - com.google.keystone.xpcservice.plist # exit (recomendado) # csrutil enable (10.11+)
Эти команды специально удаляют уязвимую версию обновления программного обеспечения Google и восстанавливают поврежденную часть файловой системы macOS. После выполнения любого из вышеперечисленных методов пользователь должен перезагрузить машину.
Does anyone know what “com.google.keystone.agent.plist” is?
“com.google.keystone.agent.plist” popped up when doing a quick check for the new malware. It has the “agent.plist” which is the thing to look out for but I searched up and this is actually Google’s updating software.
So I’m just wondering if anyone can also confirm this, just to be safe. And when searching for the other things to look out for the malware, no signs point towards me having it so hoping for the best. Thank you very much.
(also technically a repost but better worded, thank you)
Edit: Thanks to all that comment, you are life savers!