Luk annoncen

Den ideelle mængde RAM, som telefoner har brug for til deres glatte multitasking, er et ret omdiskuteret emne. Apple klarer sig med en mindre størrelse i sine iPhones, som ofte er mere anvendelig end Android-løsninger. Du finder heller ikke nogen form for RAM-hukommelseshåndtering på iPhone, hvorimod Android har sin egen dedikerede funktion til dette. 

Hvis du for eksempel går i Samsung Galaxy-telefoner til justering -> Enhedspleje, finder du en RAM-indikator her med information om, hvor meget plads der er ledig, og hvor meget der er optaget. Når du har klikket på menuen, kan du se, hvor meget hukommelse hver applikation tager, og du har også mulighed for at rydde hukommelsen her. RAM Plus-funktionen er også placeret her. Dets betydning er, at det vil bide et vist antal GB fra det interne lager, som det vil bruge til virtuel hukommelse. Kan du forestille dig noget som dette på iOS?

Smartphones er afhængige af RAM. Det tjener dem til at gemme operativsystemet, til at starte applikationer og også til at gemme nogle af deres data i cachen og bufferhukommelsen. RAM skal således organiseres og administreres på en sådan måde, at applikationer kan køre problemfrit, selvom du taber dem i baggrunden og åbner dem igen efter et stykke tid.

Swift vs. Java 

Men når du starter et nyt program, skal du have ledig plads i hukommelsen for at indlæse og køre det. Er dette ikke tilfældet, skal pladsen fraflyttes. Systemet vil derfor kraftigt afslutte nogle kørende processer, såsom applikationer, der allerede er startet. Begge systemer, det vil sige Android og iOS, fungerer dog forskelligt med RAM.

iOS-operativsystemet er skrevet i Swift, og iPhones behøver faktisk ikke at genbruge brugt hukommelse fra lukkede apps tilbage i systemet. Det skyldes måden iOS er bygget på, fordi Apple har fuld kontrol over det, da det kun kører på sine iPhones. Derimod er Android skrevet i Java og bruges på mange enheder, så det skal være mere universelt. Når applikationen afsluttes, returneres den plads, det tog, til operativsystemet.

Native kode vs. JVM 

Når en udvikler skriver en iOS-app, kompilerer de den direkte til kode, der kan køre på iPhones processor. Denne kode kaldes native kode, fordi den ikke kræver nogen fortolkning eller virtuelt miljø for at køre. Android er på den anden side anderledes. Når Java-kode kompileres, konverteres den til Java Bytecode-mellemkode, som er processoruafhængig. Den kan derfor køre på forskellige processorer fra forskellige producenter. Dette har store fordele for kompatibilitet på tværs af platforme. 

Der er selvfølgelig også en ulempe. Hvert operativsystem og processorkombination har brug for et miljø kendt som Java Virtual Machine (JVM). Men native kode fungerer bedre end kode, der udføres gennem JVM, så brug af JVM øger simpelthen mængden af ​​RAM, der bruges af applikationen. Så iOS-apps bruger mindre hukommelse, i gennemsnit 40 %. Det er også derfor, Apple ikke skal udstyre sine iPhones med så meget RAM, som det gør med Android-enheder. 

.