Sulje mainos

Ihanteellinen määrä RAM-muistia, jota puhelimet tarvitsevat sujuvaan moniajoonsa, on melko keskustelunaihe. Apple pärjää iPhoneissaan pienemmällä koolla, joka on usein Android-ratkaisuja käyttökelpoisempi. Et myöskään löydä iPhonesta minkäänlaista RAM-muistin hallintaa, kun taas Androidilla on tähän oma toiminto. 

Jos menet esimerkiksi Samsung Galaxy -puhelimiin asetukset -> Laitteen hoito, löydät täältä RAM-ilmaisimen, jossa on tietoa siitä, kuinka paljon tilaa on vapaana ja kuinka paljon on varattu. Kun napsautat valikkoa, näet, kuinka paljon muistia kukin sovellus vie, ja sinulla on myös mahdollisuus tyhjentää muisti täällä. RAM Plus -toiminto sijaitsee myös täällä. Sen merkitys on, että se purkaa tietyn määrän Gt sisäisestä tallennustilasta, jota se käyttää virtuaalimuistiin. Voitko kuvitella jotain tällaista iOS:ssä?

Älypuhelimet käyttävät RAM-muistia. Se palvelee niitä käyttöjärjestelmän tallentamiseen, sovellusten käynnistämiseen ja myös osan tietojen tallentamiseen välimuistiin ja puskurimuistiin. RAM on siis järjestettävä ja hallittava niin, että sovellukset voivat toimia sujuvasti, vaikka pudotat ne taustalle ja avaat ne uudelleen hetken kuluttua.

Swift vs. Java 

Mutta kun käynnistät uuden sovelluksen, sinulla on oltava vapaata tilaa muistissa sen lataamista ja suorittamista varten. Jos näin ei ole, paikka on vapautettava. Järjestelmä lopettaa siksi väkisin jotkin käynnissä olevat prosessit, kuten jo käynnistyneet sovellukset. Molemmat järjestelmät, eli Android ja iOS, toimivat kuitenkin eri tavalla RAM-muistin kanssa.

iOS-käyttöjärjestelmä on kirjoitettu Swift-kielellä, eikä iPhonen tarvitse itse asiassa kierrättää käytettyä muistia suljetuista sovelluksista takaisin järjestelmään. Tämä johtuu tavasta, jolla iOS on rakennettu, koska Applella on täysi hallintaoikeus siihen, koska se toimii vain sen iPhoneissa. Sitä vastoin Android on kirjoitettu Java-kielellä ja sitä käytetään monissa laitteissa, joten sen on oltava universaalimpi. Kun sovellus lopetetaan, sen käyttämä tila palautetaan käyttöjärjestelmään.

Natiivikoodi vs. JVM 

Kun kehittäjä kirjoittaa iOS-sovelluksen, hän kääntää sen suoraan koodiksi, joka voi toimia iPhonen prosessorilla. Tätä koodia kutsutaan alkuperäiseksi koodiksi, koska sen suorittaminen ei vaadi tulkintaa tai virtuaalista ympäristöä. Android sen sijaan on erilainen. Kun Java-koodi käännetään, se muunnetaan Java Bytecode -välikoodiksi, joka on prosessorista riippumaton. Siksi se voi toimia eri valmistajien eri prosessoreilla. Tällä on valtavia etuja eri alustojen yhteensopivuuden kannalta. 

Toki siinä on myös huono puoli. Jokainen käyttöjärjestelmän ja prosessorin yhdistelmä tarvitsee ympäristön, joka tunnetaan nimellä Java Virtual Machine (JVM). Natiivikoodi toimii kuitenkin paremmin kuin JVM:n kautta suoritettu koodi, joten JVM:n käyttö yksinkertaisesti lisää sovelluksen käyttämän RAM-muistin määrää. Joten iOS-sovellukset käyttävät vähemmän muistia, keskimäärin 40%. Tästä syystä Applen ei tarvitse varustaa iPhone-puhelimiaan yhtä paljon RAM-muistia kuin Android-laitteiden kanssa. 

.