A rejtett háttéralkalmazások lelassíthatják Mac számítógépét. Így javíthatja ki a Mac teljesítményére gyakorolt lehetséges hatást.
Bármely UNIX-alapú számítógépes rendszerben, beleértve a macOS-t is, az operációs rendszer különféle háttérfolyamatokat futtat bizonyos feladatok csendes végrehajtásához. A macOS rendszeren ezek általában két kategóriába sorolhatók: démonok és ügynökök.
A démon egy arc nélküli háttérfeladat, amely folyamatosan fut bizonyos feladatok végrehajtásához. A macOS-en számos gyakori démon létezik: elindítva más folyamatok elindítására, fiókok (amelyek a felhasználói fiókokat kezelik), cloudd-amely iCloud szolgáltatásokat futtat, bluetooth-a BlueTooth szolgáltatásokhoz és még sok más.
A démonokhoz hasonlóan ügynökök, háttéralkalmazások, amelyek interakcióba léphetnek az előtérrel alkalmazásokat, és alkalmanként kis felhasználói felületeket mutatnak be. A securityd egy ilyen példa, mivel ezt az ügynököt minden alkalommal működés közben látja, amikor a Mac rendszergazdai jelszót kér.
A legtöbb folyamatot, beleértve a démonokat és ügynököket, megtekintheti a Mac számítógépen, ha megnyitja a macOS Activity Monitor alkalmazását, amely az indítólemezen található Utilities mappában található. A terminálban futó folyamatok részleteit is megtekintheti, ha beírja a top szót, és megnyomja a Return gombot.
Az Apple rendszerdémonjainak és ügynökeinek többségét alaposan kidolgozták az évek során. Több évtizedes fejlesztés után zökkenőmentesen és zökkenőmentesen működnek, így szinte soha nem veszi észre a működésüket.
De léteznek harmadik féltől származó démonok és ügynökök is. Ha rosszul vannak megírva, akkor rosszul teljesítenek, meghosszabbíthatják a CPU-időt, túlzott lemezelérést okozhatnak, és egyébként olyan módon viselkedhetnek, ami lelassíthatja a Mac számítógépet.
Helyek
Jelenleg macOS rendszeren a démonok és ügynökök a/Library mappán belül két mappában találhatók: LaunchAgents és LaunchDaemons.
Valójában a végrehajtott démon-és ügynökbinárisok nem ezekben a mappákban élnek – ehelyett a.plist vagy a tulajdonságlista fájlok mindkét helyen. A.plist fájlok olyan XML-fájlok, amelyek kulcs-érték párokat tartalmaznak – minden kulcs névvel és megfelelő értékkel.
Van egy második LaunchAgents mappa is a felhasználó Library mappájában. A.plist fájlokat a legtöbb szövegszerkesztőben vagy az Apple saját IDE-jében, az Xcode-ban nyithatja meg és tekintheti meg.
Minden.plist fájl tartalmazza az egyes démonok vagy ügynökök leírását, valamint további adatokat, amelyek megmondják a rendszernek, hogy mikor és hogyan futtassa azt. Minden egyes.plist egy mezője „ProgramArguments” néven szerepel, ami olyan elemek tömbje, amelyek a fájlrendszer elérési útjait is magukban foglalják, ahol a futtatandó binárisok ténylegesen találhatók.
Például a/Library/LaunchAgents mappában található XQuartz org.xquartz.startx.plist fájlban a ProgramArguments tömb négy szövegelemet tartalmaz, amelyek közül három a fájlrendszer más részeihez vezető elérési utat tartalmaz:
/opt/X11/libexec/launchd_startx/opt/X11/bin/startx/opt/X11/bin/Xquartz
E három útvonal mindegyike a rendszer által különböző időpontokban futtatandó bináris fájlokra mutat. azokat az XQuartz által a telepítéskor telepített láthatatlan/opt mappában. Egyes.plisták indítási információkat is tartalmazhatnak az egyes démonokhoz vagy ügynökökhöz, például, hogy milyen időközönként és mennyi ideig kell elindítani őket.
Ebben a példában a.plist további mezői közé tartozik egy UNIX socket paraméter, egy”ServiceIPC”kulcs és egy”EnableTransactions”kulcs.
Az”IPC”az Interprocess Communication rövidítése. Gondoljon az IPC-re (vagy az Apple terminológiájában XPC-re), mint egy csőre, amely összeköt két folyamatot a Mac-en, és amelyen a kommunikáció halad.
Amikor a Mac elindul, a macOS végigfut a LaunchAgenteken és a LaunchDaemonokon mappákat, olvassa el az összes.plist fájlt. Azt is jegyzeteket készít, hogy mit kell elindítani, hol találhatók ezek az elemek a lemezen, milyen időközönként indítsa el őket, és mennyi ideig engedje meg futni.
Amint eljön a megadott idő, a megadott útvonalon lévő binárisok elindulnak és lefutnak. Egyes démonok és ügynökök folyamatosan, míg mások csak időszakosan futnak.
Az automatikus frissítők jó példái a démonoknak, amelyek időnként lefutnak, majd a frissítési feladatok befejezése után kilépnek.
Rosszul megírt démonok
Ha egy démon vagy ügynök rosszul van megírva, akkor nem hatékony, és lassan futhat, csökkentve a rendszer teljes teljesítményét. Ha egy démon kódja túl lassú, vagy túl sokáig tart bizonyos feladatok elvégzéséhez, vagy ha túl sok CPU-időt vesz igénybe, lelassíthatja a rendszert.
Ha sok ilyen rosszul megírt démon és ügynök fut egyszerre, észrevehető lassulást fog érezni a rendszer általános teljesítményében.
A Mac számítógépének Library mappájában található egy másik”PrivilegedHelperTools”nevű mappa. Ezek a binárisok a LaunchAgentsben és a LaunchDaemonsban tárolt.plist fájlokon keresztül is elindulnak.
A privilegizált segédeszköz egy egyszeri végrehajtható bináris fájl, amely rövid ideig fut, és csak azért, mert meg kell emelnie jogosultsági szintjét a rendszeren, biztonságos feladatot kell végrehajtania, majd ki kell lépnie.
Bizonyos feladatok a macOS rendszeren szuperfelhasználói hozzáférést igényelnek, és ezért biztonsági kockázatokká válnának, ha folyamatosan futnának. Így a segédeszközök rövid ideig futva csökkentik a támadási felületet.
A logika az, hogy ha egy feladat nem szuperfelhasználóként fut, akkor nehezebb egy rosszindulatú szoftver támadási vektoraként kihasználni.
Lassú démonok és ügynökök eltávolítása
Mint már említettük, ha túl sok démon és ügynök fut egyszerre a Mac-en, vagy ha egy vagy több közülük rosszul van megírva, lelassíthatja a Mac-et. A normál teljesítmény visszaállításához ilyen esetekben meg kell határoznia, hogy mely démonok vagy ügynökök okoznak teljesítményproblémákat, majd le kell tiltani a.plist fájljaikat, és újra kell indítani a Mac-et.
Például bizonyos ügynökökről, amelyeket harmadik féltől származó játékmotorok részeként telepítenek, ismert, hogy lassan futnak, vagy lehúzzák a rendszert. Ilyen esetekben érdemes félretenni a.plist fájljaikat, majd újraindítani, ami megakadályozza, hogy elinduljanak.
Ne feledje, hogy nem szükséges teljesen eltávolítani a sértő szoftvert, csak át kell helyeznie a megfelelő szoftvert. plist fájlokat a LaunchAgents és LaunchDaemons mappákból az összes telepített helyen, és indítsa újra. Később, ha újra szeretné használni a szoftvert, visszahelyezheti a.plist fájlokat a helyükre, vagy újratelepítheti a szoftvert, és újraindíthatja a funkcionalitás helyreállítását.
Ha meg szeretné tudni, hogy mely démonok és ügynökök használják a legtöbb rendszererőforrást, futtassa az Apple Activity monitort, és ellenőrizze a „% CPU” és a „Threads” oszlopot. Ezek nyomokat adnak arra vonatkozóan, hogy mely folyamatok terhelik a legnagyobb terhelést a Mac processzoraira.
A memória-, energia-, lemez-és hálózathasználatot az Activity Monitor segítségével is ellenőrizheti.
Miután megállapította, hogy mely háttérfolyamatok zsákmányolják a rendszer erőforrásait , visszatérhet a LaunchAgents és LaunchDaemons mappákhoz, és kihúzhatja a megfelelő.plist fájlokat ezekből a mappákból. Rendszereznie kell és nyomon kell követnie a.plist fájlokat, hogy tudja, hova helyezze vissza őket, ha vissza szeretné állítani a funkcionalitást.
Ahhoz, hogy a.plist fájlokat áthelyezhesse a telepített mappákból, meg kell adnia egy rendszergazdai jelszót, amikor a Finder kéri. Ne felejtse el újraindítani a Mac-et.
Egy másik lehetséges lehetőség az egyes.plist fájlok tartalmának módosítása, ha azok tartalmaznak indítási időközöket és időpontokat – például megpróbálhatja növelni az indítási intervallumot minden.plist fájlban, hogy minden démon megjelenjen. ritkábban futni.
De legyen rendkívül óvatos, amikor ezeket a módosításokat végrehajtja, mivel ez megváltoztathatja a telepített szoftver működését.
A folyamatos működésre tervezett démonok és ügynökök valamilyen okból teszik ezt – általában azért, hogy valamilyen háttérszolgáltatást vagy szolgáltatást nyújtsanak egy előtérben lévő alkalmazásnak. Letiltásuk funkcióvesztést okoz, ha nem akkor futnak, amikor az alkalmazás elvárja.
A kevesebb több
Általánosságban elmondható, hogy minél kevesebb démont és ügynököt szeretne futtatni a rendszerén. Még ha mindegyik jól meg van írva, mindegyik hozzáadott némi terhelést jelent a rendszerre és a CPU-kra, még ha kicsi is.
Ha több tucat démon és ügynök fut egyszerre, akkor mindez összeadódik, és lelassítja a Mac számítógépet.
Miután telepített egy új szoftvercsomagot, érdemes lehet ellenőrizni a LaunchAgents és LaunchDaemons mappákat, hogy megtudja, mi lett telepítve, és szükség van-e rájuk vagy sem.
Ha mélyreható, fejlesztői szintű áttekintést szeretne kapni arról, hogyan működnek a démonok és ügynökök a macOS rendszeren, nézze meg Volodymyr Vashurkin Mac Daemonology című kiadványát, amely az APRESS könyvekből érhető el.
Az Apple XPC-szolgáltatásainak működéséről részletes technikai megbeszélést is kaphat a fejlesztői weboldalán.