Google Chrome pis ola bilər, ancaq Mac'inizi yavaşlatmır

Tiffany Garrett

Bu həftə sonu, geliştirici Loren Brichter bir veb sayt çıxardı bunu iddia edir Mac üçün Google Chrome - və ya daha dəqiq desək avtomatik yeniləmə mexanizmi - yüksək səviyyəli maşınlarda belə, macOS performansını zədələyərək, macOS üzərindəki WindowServer prosesinin davamlı olaraq yüksək CPU istifadəsinə səbəb olurdu.

Veb sayt məlumat daxildir Performansınızı geri qaytarmaq üçün Chrome'dan və onun yeniləyicisindən Mac-dan necə tamamilə qurtulacağınıza dair məlumat verin və 'zərərli proqram' adlandırmağa qədər gedin (o vaxtdan bəri bu söz silindi). Bir çox istifadəçi bunun işlədiyini və Google Chrome'u maşınlarından çıxardıqdan sonra hər şeyin daha sürətli olduğunu bildirdi.





Google Chrome-un pərəstişkarı olmadığımı çox açıq şəkildə izah edim. Onu quraşdırmışam, çünki onlayn etdiyim bəzi şeylər bunu tələb edir, amma seçim brauzerim həmişə Safari olub. Marağımı artıran bu hekayənin texniki tərəfi və Lorenin hesabatını oxuyarkən düşündüyüm bəzi suallar idi. Bu suallar belə idi: İşləyərkən bir fəaliyyətin özünü Fəaliyyət Monitorundan gizlətməsi mümkündürmü? Yenilənmə prosesi nə vaxt işləyir və nə edir? Google Chrome yeniləməsi həqiqətən insanların gördüyü bu WindowServer CPU istifadəsinin səbəbidir?

Bir müddət işləyərkən özünü Fəaliyyət Monitorundan gizlətmək mümkündürmü?

Bu suala qəti cavabım yoxdur. Bunu tapdığım yeganə praktik yol sistemin işləyən prosesləri izləməyim və Fəaliyyət Monitoru tapılsa, istifadəçimi Fəaliyyət Monitorunda görməməsi üçün prosesimi ləğv etdim. Google’ın Keystone yeniləyicisinin niyə bunu etməli olduğunu görmürəm və ikili sənədlərin bəzi sürətli statik təhlili belə bir taktika aşkar etməyib.



səth pro 3 üçün ən yaxşı monitorlar

Yenilənmə prosesi nə vaxt işləyir və nə edir?

Google’ın Keystone xidməti, Mac-da işləyən hər hansı digər xidmət tipli tətbiqetmə və proseslər kimi, bir launchd mülk siyahısı istifadə edərək sistemlə qeydiyyatdan keçir. Launchd, macOS-da yumurtlama proseslərindən məsul olan xidmətdir və launchd xüsusiyyət siyahısı əsasən launchd-a verilmiş bir xidmətə necə davrandığını izah edən bir konfiqurasiya sənədidir.

Google Chrome yeniləməsi vəziyyətində, eyni binar tərəfindən dəstəklənən ~/Library/Google/GoogleSoftwareUpdate/GoogleSoftwareUpdate.bundle/Contents/Resources/GoogleSoftwareUpdateAgent.app/Contents/MacOS/GoogleSoftwareUpdateAgent ünvanında yerləşən iki xidməti qeyd edir.

“Keystone İstifadəçi Agent” xidmətində StartInterval var 3623 dəyərinə qoyulur saniyə, beləliklə yeniləmələri yoxlamaq üçün saatda təxminən bir dəfə işləyəcəkdir. Digəri olan “Keystone XPC Service” yalnız bir Google tətbiqi tələbə uyğun olaraq yeniləmələrin özünü yoxlamaq istədiyi zaman başlayır. Bunlar müddətsiz işləməyə davam edəcək xidmətlər deyil, yalnız vaxtaşırı olaraq yeniləmələri yoxlamaq üçün və ya bir Google tətbiqi onlarla danışmaq istədikdə başlayırlar, bu da WindowServer-i ləngitdikləri iddiasını daha da maraqlı edir.

Bu yeniləyici agentin nə etdiyinə gəldikdə, Hopper istifadə edilən ikili sənədləri statik analiz edərək bəzi əsas əks mühəndisliyi etdim. Mövcud olduqda qəza hesabatlarını yükləmək və Google kimi tətbiqetmələrin Chrome kimi yeniləmələrini yoxlamaq kimi şeyləri idarə edir. Həqiqətən işləyərkən Fəaliyyət Monitorunda görə bildim, bu halda “Google Proqram Yeniləməsi” kimi görünəcək.

Qeyd edək ki, bu əsas tədqiqat bu proqramın potensial mənfi bir şey etmədiyini təsdiqləmir, sadəcə o deməkdir ki, araşdırmalı olduğum məhdud vaxt ərzində həyəcan verici bir şey tapmadım.

Google Chrome yeniləməsi həqiqətən insanların gördüyü bu WindowServer yüksək CPU istifadəsinin səbəbidir?

Testlərim zamanı cavab verəcəyim əsas sual bu idi. Testlər Core i9 prosessoru və 16 GB RAM ilə 2019 16 ”MacBook Pro-da aparıldı. Maşın xarici bir ekrana qoşuldu, başqa heç bir tətbiq testlər zamanı əsas fon tapşırıqlarından başqa bir şey etmirdi və mən də ayrıldım kofeinat maşının yatmasına mane olmaq üçün qaçmaq.

rx 480 vs gtx 1060 meyarları

Zamanla CPU istifadəsi kimi proqram ölçümlərini müşahidə etməyə imkan verən alətlərdən istifadə edərək iki seans qeyd etdim: biri Google Chrome quraşdırılmış, digəri Google Chrome və yeniləmə xidmətləri silindi. Hər ssenaridə WindowServer-in CPU istifadəsini ölçmək üçün Alətlər sessiyasının ilk 30 dəqiqəlik pəncərəsindən istifadə etdim.

Yuxarıdakı müqayisədən də göründüyü kimi, quraşdırılmış Chrome ilə WindowServer prosesi istifadə olunur 50s Test pəncərəsi zamanı CPU. Chrome və onun yeniləyicisi quraşdırılmadan, istifadə olunur 49s . Fərqin əhəmiyyətsiz olduğunu nəzərə alsaq, bunu problemin təsdiqi kimi qəbul etmirəm (görünən performans problemlərinə səbəb olan şeydən aşağıda).

Bunun xaricində saatda bir dəfə davam edən bir prosesin tamamilə əlaqəsiz bir sistem xidmətinin yüksək CPU istifadəsinə səbəb olacağı iddiasının hamısı vəhşidir. WindowServer, macOS UI-nin ekrana göstərilməsindən məsuldur, vaxtını CGXUpdateDisplay üsul, göstərmə CALayers, bir proqram yeniləmə yoxlayıcısının (istifadəçi interfeysi olmayan) bir şeylə qətiyyən əlaqəsi olmayan bir tapşırıq yerinə yetirəcəkdir.

İnsanlar Chrome'un niyə Mac performanslarını ləngitdiyini düşünürlər?

İnsanlar bu problemi və onun həllini niyə dərk etdiklərinə gəldikdə, bir neçə ehtimal düşünə bilərəm. Bunlardan biri də Placebo Effect: Bir probleminiz var, birinin sizə problemi həll etməli olduğunu söylədiyi bir şey edirsiniz və sonra problemin həll olunduğunu hiss edirsiniz. Bu düşündüyünüzdən daha çox kompüterdə olur. Başqa bir Təsdiq Bias: Siz Google və Google Chrome-dan nifrət edirsiniz (hey, bir fanat da deyil, dost ola bilərik) və proqramla qavrayışınıza uyğun bir hekayə görürsünüz, buna görə də instinktiv olaraq inanırsınız.

Burada oynana biləcək başqa bir şey də Loren veb saytındakı təlimatlarda təsvir olunan addımları yerinə yetirdikdən sonra maşını yenidən yükləməyinizi söyləməkdir, lakin bu, Google-un proqram yeniləməsini silmək üçün lazım deyil. Əslində, testlərimdə işləmədiyinə əmin olaraq onu sildim, sonra launchctl unload çalıştırdım, sonra launchd mülkiyyət siyahılarını və ikili sənədləri sistemdən sildim. Bunu əvvəlcədən yenidən yüklənmiş bir kompüterin daima həftələrdir işləyəndən daha sürətli hiss edəcəyinə görə etdim və bu dəyişəni testlərimdən kənarlaşdırmalı idim.

Hələ də Google Chrome-un Mac performansınızı yavaşlatdığını hiss edirsinizsə, davam edin və silin, əvəzinə Safari'yi məsləhət görürəm.

FTC: Gəlir qazanan avtomatik iştirak əlaqələrindən istifadə edirik. Daha çox.