Kotisivu » miten » Miten Android hallitsee prosesseja

    Miten Android hallitsee prosesseja

    Windows sallii, että työpöytäsovellukset pysyvät käynnissä riippumatta siitä, näkyvätkö ne vai eivät, kun taas Applen iOS-sovellukset sallivat sovellusten suorittaa vain muutamia rajoitettuja tehtäviä taustalla. Android istuu jonnekin välissä - etualalla toimivat sovellukset ovat etusijalla, mutta sovelluksilla on paljon enemmän vapautta ajaa taustalla kuin iOS: ssa.

    Tarkastelemme tarkasti, miten Android hallitsee puhelimessa tai tabletissa käytettyjä sovelluksia ja prosesseja, mikä osoittaa, mitä taustalla tapahtuu.

    Prosessin elinkaaren hierarkia

    Android-prosessi voi olla missä tahansa viidessä eri valtiossa, tärkeimmistä vähiten tärkeisiin:

    • 1. Esipuheprosessi: Käytettyä sovellusta pidetään etualalla. Muita prosesseja voidaan pitää myös etualan prosesseina - esimerkiksi jos he ovat vuorovaikutuksessa prosessin kanssa, joka on tällä hetkellä etualalla. On vain muutamia etualan prosesseja milloin tahansa.
    • 2. Näkyvä prosessi: Näkyvä prosessi ei ole etualalla, mutta vaikuttaa edelleen näytön näkymiin. Esimerkiksi etualan prosessi voi olla valintaikkuna, jonka avulla voit nähdä sen takana olevan sovelluksen - taustalla näkyvä sovellus olisi näkyvä prosessi.
    • 3. Palveluprosessi: Palveluprosessi ei ole sidottu mihinkään näytölle näkyvään sovellukseen. Se kuitenkin tekee jotain taustalla, kuten musiikin toistamisessa tai tietojen lataamisessa taustalla. Jos esimerkiksi aloitat musiikin soittamisen ja vaihdat toiseen sovellukseen, musiikin toisto on taustalla, ja sitä käsitellään palveluprosessissa.
    • 4. Taustaprosessi: Taustaprosessit eivät näy tällä hetkellä käyttäjälle. Ne eivät vaikuta puhelimen käyttökokemukseen. Tällä hetkellä monet taustaprosessit ovat käynnissä. Voit ajatella näitä taustaprosesseja "keskeytetyiksi" sovelluksiksi. Ne pidetään muistissa, joten voit jatkaa niiden käyttöä, kun palaat niihin, mutta ne eivät käytä arvokasta CPU-aikaa tai muita ei-muistivaroja.
    • 5. Tyhjä prosessi: Tyhjä prosessi ei enää sisällä mitään sovellustietoja. Se voidaan pitää välimuistissa, jotta sovellus käynnistyy myöhemmin, tai järjestelmä voi tappaa sen tarvittaessa.

    Oletetaan esimerkiksi, että käynnistät puhelimen ja avaat musiikkisovelluksen. Kun käytät sitä, musiikkisovellus on etualan prosessi. Kun aloitat musiikin soittamisen ja poistut musiikkisovelluksesta, musiikki jatkaa pelaamista palveluprosessina.

    Katsotaanpa Angry Birdsia toisena esimerkkinä. Angry Birds olisi etualan prosessi, kun pelasin sitä. Kun jätät Angry Birds -palvelun ja syötät Gmail-sovelluksen katsomaan sähköpostia, Angry Birds tulee taustaprosessiksi (koska sen ei tarvitse tehdä mitään taustalla), kun taas Gmailista tulee etualan prosessi. Kun siirryt takaisin Angry Birdsiin, siitä tulee etualan prosessi ja peli jatkuu nopeasti. Angry Birds ei käyttänyt taustalla olevia resursseja joidenkin RAM-muistien lisäksi, mutta se jatkuu nopeasti, koska se pysyi välimuistissa ja valmis jatkamaan.

    Android hallitsee prosessit automaattisesti

    Android tekee hyvää työtä näiden prosessien hallinnoinnissa, minkä vuoksi sinun ei tarvitse Android-järjestelmässä tehtävän tappajaa.

    Kun Android tarvitsee enemmän järjestelmän resursseja, se alkaa ensin tappaa vähiten tärkeitä prosesseja. Android alkaa tappaa tyhjiä ja taustaprosesseja vapauttamaan muistia, jos olet matala. Jos tarvitset lisää muistia - esimerkiksi jos pelaat erityisen vaativaa peliä laitteessa, jossa ei ole paljon RAM-muistia, Android alkaa tällöin tappaa palveluprosesseja, joten streaming-musiikkisi ja tiedostojen lataaminen voi lopettaa.

    Useimmissa tapauksissa Android tekee tämän kaiken ilman, että sinun pitäisi huolehtia siitä. Android käyttää älykkäästi laitteen RAM-muistia sovellusten ja muiden tietojen välimuistiin, koska RAM-muistia ei tarvitse jättää tyhjäksi.

    Tietenkin Android tarjoaa sovelluksille niin paljon joustavuutta, että heillä on tilaa väärin. Esimerkiksi huonosti koodattu sovellus voi aloittaa palveluprosessin, joka pysyy jatkuvasti taustalla koko CPU-ajan ja vähentää huomattavasti akun käyttöikää.

    Yksi mielenkiintoinen asia, joka huomaat virustentorjuntaohjelmissa, kuten Avast! Androidille on, että virustentorjuntaohjelma käyttää ilmoituskuvaketta. jos yrität poistaa ilmoituskuvakkeen käytöstä, Avast! suosittelee sitä vastaan. Avast! -Näytöllä näkyy näkyvä ilmoitus -kuvake. tekee itsestään korkeamman prioriteetin sovelluksen, joka estää Androidia pitämästä sitä taustakuvana ja tappamalla sen.

    Android-sovellukset voivat alkaa vastauksena tapahtumiin

    Android-sovellukset voivat myös alkaa tapahtumien perusteella. Kehittäjä voi esimerkiksi ohjelmoida sovelluksensa automaattisesti ajaa käynnistyksen aikana ja suorittaa palvelun taustalla. Sovellukset voivat alkaa useiden muiden tapahtumien, kuten kuvan oton yhteydessä, kun datayhteys muuttuu, ja niin edelleen. Tämän avulla sovellukset voivat suorittaa tapahtumia vastaamatta tapahtumiin jatkuvasti taustalla.

    Prosessien hallinta

    Sinun ei tarvitse hallita prosesseja manuaalisesti, mutta on muutamia tapoja tehdä se, jos haluat. Voit käyttää monisuoritusvalikkoa Android 4.0: ssa ja uudemmassa vaiheessa tehdäksesi prosessin perusohjauksen. Voit käyttää sitä napauttamalla Nexus-laitteissa olevaa monitoimipainiketta. Muissa Android-laitteissa saatat joutua kaksoisnapauttamaan tai pitkään painamalla Home-painiketta.

    Valikossa näkyvät sovellukset ovat todennäköisesti "taustaprosessin" tilassa. Voit tappaa heidät pyyhkäisemällä sovelluksen vasemmalle tai oikealle, joka poistaa sen laitteen muistista. Tämän ei pitäisi olla tarpeen, mutta se voi auttaa, kun haluat nopeasti tappaa sovelluksen - ehkä se on väärin.

    Voit myös siirtyä Asetukset-näyttöön, napauta Sovellukset, napauta sovellusta ja käyttää Force-pysäytyspainiketta tappaaksesi väärän sovelluksen.


    Android perustuu Linuxiin, ja jokainen Android-sovellus on liitetty eri Linux-käyttäjätunnukseen tai käyttäjätiliin. Tämä eristää sovelluksia toisistaan. Jos juuret laitteen, sovellukset voivat välttää käyttäjän hiekkalaatikot ja käyttää root-oikeuksia.

    Kuvaluotto: JD Hancock Flickrissä