Hirdetés bezárása

Az ideális mennyiségű RAM, amelyre a telefonoknak szüksége van a zökkenőmentes multitaskinghoz, meglehetősen vitatott téma. Az Apple beéri a kisebb mérettel az iPhone-jaiban, ami sokszor jobban használható, mint az androidos megoldások. Az iPhone-on sem talál semmiféle RAM-memóriakezelést, míg az Androidnak saját dedikált funkciója van erre. 

Ha megy például a Samsung Galaxy telefonokban, hogy Beállítások -> A készülék gondozása, itt találsz egy RAM jelzőt, melyben megtudhatod, hogy mennyi hely van szabadon és mennyit foglalt. A menüre kattintva láthatja, hogy az egyes alkalmazások mennyi memóriát foglalnak el, illetve itt van lehetőség a memória törlésére is. Itt található a RAM Plus funkció is. Jelentése az, hogy leharap egy bizonyos számú GB-ot a belső tárhelyről, amit virtuális memóriára használ. El tudsz képzelni ilyesmit iOS-en?

Az okostelefonok a RAM-ra támaszkodnak. Őket szolgálja az operációs rendszer tárolására, az alkalmazások indítására, valamint bizonyos adatok tárolására a gyorsítótárban és a puffermemóriában. Így a RAM-ot úgy kell megszervezni és kezelni, hogy az alkalmazások zökkenőmentesen futhassanak, még akkor is, ha háttérbe húzzuk, és egy idő után újra megnyitjuk.

Swift vs. Jáva 

Egy új alkalmazás indításakor azonban szabad helynek kell lennie a memóriában a betöltéshez és futtatáshoz. Ha ez nem így van, akkor a helyet fel kell hagyni. A rendszer ezért erőszakkal leállít néhány futó folyamatot, például a már elindított alkalmazásokat. Azonban mindkét rendszer, azaz az Android és az iOS eltérően működik a RAM-mal.

Az iOS operációs rendszer Swift nyelven íródott, és az iPhone-oknak valójában nem kell újrahasznosítaniuk a bezárt alkalmazások elhasznált memóriáját a rendszerbe. Ez az iOS felépítésének köszönhető, mivel az Apple teljes ellenőrzést gyakorol felette, mivel csak az iPhone-okon fut. Ezzel szemben az Android Java nyelven íródott, és sok eszközön használják, ezért univerzálisabbnak kell lennie. Az alkalmazás leállításakor az általa elfoglalt terület visszakerül az operációs rendszerbe.

Natív kód vs. JVM 

Amikor egy fejlesztő iOS-alkalmazást ír, azt közvetlenül olyan kódba fordítja, amely futhat az iPhone processzorán. Ezt a kódot natív kódnak nevezik, mert nem igényel értelmezést vagy virtuális környezetet a futtatásához. Az Android viszont más. Amikor a Java kódot fordítják, a rendszer Java Bytecode közbenső kóddá alakítja, amely processzorfüggetlen. Ezért különböző gyártók különböző processzorain futhat. Ennek óriási előnyei vannak a platformok közötti kompatibilitás szempontjából. 

Természetesen van egy árnyoldala is. Minden operációs rendszer és processzor kombinációhoz szükség van egy Java Virtual Machine (JVM) néven ismert környezetre. A natív kód azonban jobban teljesít, mint a JVM-en keresztül végrehajtott kód, így a JVM használata egyszerűen megnöveli az alkalmazás által használt RAM mennyiségét. Tehát az iOS alkalmazások kevesebb memóriát használnak, átlagosan 40%-ot. Ez az oka annak is, hogy az Apple-nek nem kell annyi RAM-mal felszerelnie iPhone-ját, mint az Android készülékeknél. 

.