Advertentie sluiten

De ideale hoeveelheid RAM die telefoons nodig hebben voor soepel multitasken is een nogal besproken onderwerp. Apple komt rond met een kleiner formaat in zijn iPhones, wat vaak beter bruikbaar is dan Android-oplossingen. Ook zul je op de iPhone geen enkele vorm van RAM-geheugenbeheer vinden, terwijl Android hiervoor een eigen speciale functie heeft. 

Als je bijvoorbeeld in Samsung Galaxy-telefoons gaat afstelling -> Onderhoud van het apparaat, vindt u hier een RAM-indicator met informatie over hoeveel ruimte vrij is en hoeveel in beslag wordt genomen. Nadat je op het menu hebt geklikt, kun je zien hoeveel geheugen elke applicatie in beslag neemt en heb je hier ook de mogelijkheid om het geheugen te wissen. Hier bevindt zich ook de RAM Plus-functie. De betekenis ervan is dat het een bepaald aantal GB uit de interne opslag zal afbijten, dat het zal gebruiken voor virtueel geheugen. Kun je je zoiets voorstellen op iOS?

Smartphones zijn afhankelijk van RAM. Het dient hen om het besturingssysteem op te slaan, applicaties te starten en ook om een ​​deel van hun gegevens in de cache en het buffergeheugen op te slaan. RAM moet dus zo worden georganiseerd en beheerd dat applicaties soepel kunnen draaien, zelfs als je ze naar de achtergrond laat vallen en ze na een tijdje opnieuw opent.

Snel versus Java 

Maar wanneer u een nieuwe toepassing start, moet u vrije ruimte in het geheugen hebben om deze te laden en uit te voeren. Indien dit niet het geval is, dient de plaats ontruimd te worden. Het systeem zal daarom sommige actieve processen, zoals toepassingen die al zijn gestart, met geweld beëindigen. Beide systemen, dat wil zeggen Android en iOS, werken echter anders met RAM.

Het iOS-besturingssysteem is geschreven in Swift en iPhones hoeven gebruikt geheugen van gesloten apps niet echt terug in het systeem te recyclen. Dit komt door de manier waarop iOS is gebouwd, omdat Apple er de volledige controle over heeft, aangezien het alleen op iPhones draait. Android is daarentegen in Java geschreven en wordt op veel apparaten gebruikt, dus het moet universeler zijn. Wanneer de toepassing wordt beëindigd, wordt de benodigde ruimte teruggegeven aan het besturingssysteem.

Native code vs. JVM 

Wanneer een ontwikkelaar een iOS-app schrijft, compileert hij deze rechtstreeks in code die op de processor van de iPhone kan draaien. Deze code wordt native code genoemd omdat er geen interpretatie of virtuele omgeving voor nodig is. Android daarentegen is anders. Wanneer Java-code wordt gecompileerd, wordt deze geconverteerd naar Java Bytecode-tussencode, die processoronafhankelijk is. Het kan daarom op verschillende processors van verschillende fabrikanten draaien. Dit heeft enorme voordelen voor platformonafhankelijke compatibiliteit. 

Natuurlijk is er ook een keerzijde. Elke combinatie van besturingssysteem en processor heeft een omgeving nodig die bekend staat als de Java Virtual Machine (JVM). Maar native code presteert beter dan code die via de JVM wordt uitgevoerd, dus het gebruik van de JVM verhoogt eenvoudigweg de hoeveelheid RAM die door de applicatie wordt gebruikt. iOS-apps gebruiken dus minder geheugen, gemiddeld 40%. Dat is ook de reden waarom Apple zijn iPhones niet met zoveel RAM hoeft uit te rusten als bij Android-apparaten. 

.