Kaip „Android“ valdo procesus
„Windows“ leidžia darbalaukio programoms išlikti rodomomis, ar jos yra matomos, ar „Apple“ iOS leidžia programoms atlikti tik keletą ribotų užduočių fone. „Android“ sėdi kažkur tarp jų - pirmenybė teikiama pirmenybę teikiančioms programoms, tačiau programos turi daug daugiau laisvės paleisti fone, nei jos veikia „iOS“.
Pažvelkime tiksliai, kaip „Android“ valdo jūsų telefone ar planšetiniame kompiuteryje veikiančias programas ir procesus, parodydamas, kas vyksta fone.
Proceso gyvavimo ciklo hierarchija
„Android“ procesas bet kuriuo metu gali būti vienoje iš penkių skirtingų valstybių, nuo svarbiausių iki mažiausiai svarbių:
- 1. Naujų žinių procesas: Jūsų naudojama programa laikoma įgytu procesu. Kiti procesai taip pat gali būti laikomi naujais procesais - pavyzdžiui, jei jie sąveikauja su šiuo metu esančiu procesu. Bet kuriuo metu yra tik keletas naujų procesų.
- 2. Matomas procesas: Matomas procesas nėra pirmoje vietoje, tačiau vis dar veikia tai, ką matote ekrane. Pvz., Pirmųjų žinių procesas gali būti dialogo langas, leidžiantis matyti už jo esančią programą - fone matoma programa būtų matomas procesas.
- 3. Paslaugų teikimo procesas: Paslaugų teikimo procesas nėra susietas su jokia jūsų ekrane matoma programa. Tačiau tai daro kažką fone, pavyzdžiui, muzikos grojimas ar duomenų parsisiuntimas fone. Pvz., Jei pradedate žaisti muziką ir pereiti prie kitos programos, muzikos grojimas yra fone, kurį tvarko paslaugų teikimo procesas.
- 4. Pagrindiniai procesai: Fono procesai šiuo metu naudotojui nematomi. Jie neturi įtakos telefono naudojimo patirčiai. Bet kuriuo metu šiuo metu veikia daug foninių procesų. Galite galvoti apie šiuos foninius procesus kaip „pristabdytas“ programas. Jie laikomi atmintyje, kad galėtumėte greitai juos atnaujinti, kai grįšite į juos, tačiau jie nenaudoja vertingų procesoriaus laiko ar kitų ne atminties išteklių.
- 5. Tuščias procesas: Tuščiame procese nebėra jokių programų duomenų. Jis gali būti laikomas aplink caching tikslais paspartinti app paleidimo vėliau, arba sistema gali jį nužudyti, jei reikia.
Pvz., Tarkime, kad įjungiate telefoną ir atidarote muzikos programą. Naudodamiesi muzikos programa bus pradinis procesas. Kai pradėsite žaisti muziką ir paliksite muzikos programą, muzika bus toliau žaidžiama kaip paslaugų procesas.
Pažvelkime į Angry Birds kaip kitą pavyzdį. „Angry Birds“ būtų pirmasis procesas, kai žaidėte. Kai paliksite „Angry Birds“ ir įvesite „Gmail“ programą, kad pamatytumėte savo el. Paštą, „Angry Birds“ tampa foniniu procesu (nes jis neturi nieko daryti fone), o „Gmail“ tampa žiniomis. Kai grįšite prie „Angry Birds“, tai taps jūsų žiniomis ir žaidimas bus atnaujintas greitai. „Angry Birds“ fone nepanaudojo išteklių - be tam tikros RAM -, tačiau jis vėl tęsiasi, nes jis liko talpykloje ir pasirengęs atnaujinti.
„Android“ automatiškai valdo procesus
„Android“ atlieka gerą darbą automatiškai valdydama šiuos procesus, todėl jums nereikia „Android“ užduoties žudiko.
Kai „Android“ reikia daugiau sistemos išteklių, pirmiausia jis pradės žudyti mažiausiai svarbius procesus. „Android“ pradės nužudyti tuščius ir foninius procesus, kad atlaisvintų atmintį, jei būsite mažai. Jei jums reikia daugiau atminties - pavyzdžiui, jei žaidžiate ypač sudėtingą žaidimą įrenginyje, kuriame nėra daug RAM, „Android“ pradės žudyti paslaugų procesus, todėl jūsų transliacijos muzika ir failų atsisiuntimai gali baigtis.
Daugeliu atvejų „Android“ visa tai daro be jūsų poreikio jaudintis. „Android“ protingai naudoja jūsų įrenginio atmintį, skirtą programoms ir kitiems duomenims išsaugoti, nes nėra tikslo palikti savo atmintį tuščią.
Žinoma, „Android“ suteikia programoms tiek daug lankstumo, kad turi galimybę netinkamai elgtis. Pvz., Prastai koduota programa gali pradėti paslaugų procesą, kuris visą laiką veikia fone, naudojant visą procesoriaus laiką ir žymiai sumažinant baterijos veikimo laiką.
Vienas įdomus dalykas, kurį pastebėsite antivirusinėse programose, pvz., „Avast“! „Android“ yra tai, kad antivirusinė programa naudoja pranešimo piktogramą. jei bandote išjungti pranešimo piktogramą, Avast! rekomenduos prieš jį. Turėdami matomą įspėjimo piktogramą, Avast! daro save aukštesnę prioritetą turinčia programa, neleidžiančia „Android“ laikyti ją fono programa ir ją nužudyti.
„Android Apps“ gali pradėti reaguoti į įvykius
„Android“ programos taip pat gali pradėti reaguoti į įvykius. Pavyzdžiui, kūrėjas gali programuoti savo programą automatiškai paleisti paleisties metu ir paleisti paslaugą fone. Programos gali būti pradėtos atsakyti į įvairius kitus įvykius, pvz., Kai fotografuojate, kai pasikeičia duomenų ryšys ir pan. Tai leidžia programoms atlikti veiksmus reaguojant į įvykius nenutrūkstamai fone.
Procesų valdymas
Jums nereikėtų tvarkyti procesų rankiniu būdu, tačiau, jei norite, yra keletas būdų tai padaryti. Galite naudoti daugiafunkcinį meniu „Android 4.0“ ir vėlesnėje versijoje, kad atliktumėte pagrindinį procesų valdymą. Jei norite prieiti prie jo, palieskite „Nexus“ įrenginių skirtą užduočių mygtuką. Kitose „Android“ įrenginiuose gali tekti dukart bakstelėkite arba ilgai paspauskite mygtuką Pradėti.
Meniu rodomos programos gali būti „fono proceso“ būsenoje. Jūs galite juos nužudyti, nuvilkdami programą į kairę arba į dešinę, kuri ją pašalins iš įrenginio atminties. Tai neturėtų būti reikalinga, bet gali padėti, kai norite greitai nužudyti programą - galbūt netinkamai.
Taip pat galite pereiti į ekraną „Nustatymai“, bakstelėkite „Apps“, bakstelėkite programą ir naudokite „Force stop“ mygtuką, kad nužudytumėte netinkamą programą.
„Android“ yra pagrįsta „Linux“, o kiekviena „Android“ programa priskiriama kitam „Linux“ naudotojo ID arba vartotojo abonementui. Tai atskiria programas vienas nuo kito. Jei šaknis įrenginį, programos gali pabėgti nuo jų naudotojų smėlio dėžės ir paleisti su root teisėmis.
Vaizdo kreditas: JD Hancock dėl „Flickr“