Kako začasno zaustaviti & nadaljevanje aplikacije ali procesa v Mac OS X
Potrebujete hitro sprostitev procesorske moči? To lahko preprosto storite tako, da začasno zaustavite in pozneje nadaljujete s katerim koli aktivnim procesom ali aplikacijo v sistemu Mac OS X. Tehnično je to dejansko "ustavitev" in "nadaljevanje" procesa, vendar zaustavitve ne smete zamenjevati z bolj agresivnim ubijanjem ali prisilno zapiranje aplikacij, zato je terminologija premora ali zaustavitve pogosto lažje razlikovati med obema.
To pomeni, da lahko vzamete proces, ki porablja 100 % CPE, in ga začasno zaustavite, medtem ko počnete nekaj drugega, nato pa ga nadaljujete, ko ste pripravljeni pustiti, da ta proces opravi svoje. To dosežemo s trikom ukazne vrstice in obravnavali bomo dva različna načina za to z uporabo ukazov kill in killall z zastavicama -STOP in -CONT. V idealnem primeru boste imeli nekaj udobja in znanja o ukazni vrstici, preden jo uporabite, vendar to zagotovo ni potrebno.
Pred začetkom zaženite aplikacijo Terminal, ki jo najdete v /Applications/Utilities/, in zaženite tudi Activity Monitor, ki je v isti mapi.
Kako začasno ustaviti proces ali aplikacijo v Mac OS X
Osnovna sintaksa za prekinitev aplikacije je naslednja, kjer je PID ID procesa, ki ga želite začasno ustaviti:
kill -STOP PID
PID je vedno številka in vsak posamezen proces, ki se izvaja v Macu, ima povezan ID.
Če ste seznanjeni s pridobivanjem ID-jev procesov, potem že veste, kaj storiti samo z uporabo zgornjih ukazov, če pa ne, potem bomo to obravnavali v nadaljevanju, in zato smo začeli »Dejavnost Monitor”
Iskanje PID in zaustavitev povezanega procesa
To je uporabniku prijaznejša metoda, ki uporablja Nadzornik dejavnosti:
- V Monitorju dejavnosti uporabite funkcijo Iskanje v zgornjem desnem kotu in vnesite ime aplikacije, ki jo želite začasno ustaviti (npr.: iTunes)
- Ko so vidni ujemajoči se procesi in/ali aplikacije, poiščite ID procesa v stolpcu »PID«
- Dodajte ujemajoči se PID zgoraj omenjenemu ukazu kill, takole:
- Upoštevajte, da je aktivnost procesorja za ta ID procesa zdaj 0 %, kar pomeni, da je bil proces zaustavljen (tehnično ustavljen)
kill -STOP 3138
Ne pozabite na PID, ali še bolje, ne zapirajte še terminalskega okna, ker je isti PID kako boste nadaljevali z aplikacijo, da jo boste še naprej lahko znova uporabljali.
Ugotovili boste, da je učinek zaustavitve procesa na porabo procesorja dramatičen, ta posnetek zaslona prikazuje, kako iTunes porabi 70 % procesorja med izvajanjem svojega Visualizerja, in isti postopek iTunes, potem ko je bil ustavljen z - STOP zastavica. Proces je bil dobesedno ustavljen:
Tisti z več znanja o ukazni vrstici morda raje uporabljajo ps kot Activity Monitor, ki je res zelo enostaven:
ps aux |grep Ime
Spremenite »Ime« v kakršno koli ime začetka procesa ali aplikacije, poiščite PID in ga nato vnesite v ukaz kill:
kill -STOP 92841
Ali uporabljate Activity Monitor ali ps za pridobitev PID-a, ni pomembno, dokler vnesete pravilen ID procesa, ko uporabljate ukaz kill.
Upoštevajte, da poskus uporabe aplikacije, ki je bila začasno ustavljena, skoraj vedno povzroči prikaz vrteče se žogice smrti, brez porabe procesorja. Torej, če želite znova uporabljati aplikacijo, jo morate »nadaljevati«.
Kako nadaljevati »ustavljeno« aplikacijo ali proces
Nadaljevanje ustavljene ali začasno ustavljene aplikacije je preprosto, samo nekoliko spremenite ukaz kill in uporabite isti ID procesa, ki ste ga pridobili v prejšnjih korakih:
kill -CONT PID
Na primer, za nadaljevanje aplikacije iTunes z uporabo prejšnjega PID-a:
kill -CONT 3138
In zdaj je iTunes spet uporaben, brez vrtečega se čakajočega kazalca. Skupaj s tem prihaja vrnitev na raven porabe procesorja, ki je obstajala prej.
Spodnji posnetek zaslona prikazuje ta trik z uporabo ukazov kill in killall:
Uporaba -STOP in -CONT s killall je v bistvu enaka, vendar ima nekaj omejitev glede imen, zato smo namesto tega zajeli bolj neposredno metodo uporabe kill, ki temelji na PID. Kljub temu pokažimo tudi to s killall.
Ustavitev in nadaljevanje aplikacij po imenu aplikacije
Če poznate aplikacijo ali točno ime procesa, lahko za zaustavitev procesov uporabite tudi ukaz 'killall' z zastavico -STOP.To je lahko lažje za aplikacije, ki jih je preprosto prepoznati po imenu, vendar ima omejitve, ko gre za delo s procesi s kompleksnimi imeni ali za zaustavitev določenega procesa, ki ima podvojene procese z istim imenom (kot je določen zavihek Chrome ali okno, pomešano s številnimi procesi »Google Chrome Renderer«), zato smo najprej obravnavali pristop PID, ker je veliko bolj neposreden.
Osnovni ukaz zaustavitve s killall je naslednji:
killall -STOP AppName
Ne veste, kako se imenuje aplikacija? Uporabite ps in grep:
ps aux |grep AppName
Na primer, lahko uporabite grep za »Chrome«, da poiščete vse procese z »Chrome« v imenu:
ps aux|grep Chrome
Lahko pa preprosto ciljate na postopek z določenim imenom aplikacije, kot je tako:
"killall -STOP -c Google Chrome"
Nadaljevanje procesov in aplikacij s killall je stvar spremembe zastavice iz -STOP v -CONT, vse ostalo je isto:
killall -CONT AppName
Na primer, za nadaljevanje aplikacije z dolgim imenom:
"killall -CONT -c Google Chrome"
Aplikacija/proces bo še naprej deloval kot običajno, poraba procesorja pa se bo vrnila na stanje, kot je bila pred zaustavitvijo.
Killall lahko vpliva neposredno na aplikacije ali procese brez presledkov v imenu brez dodatnih zastavic ali indikatorjev, kot je iTunes.