Aizvērt sludinājumu

Ideāls RAM apjoms, kas tālruņiem nepieciešams vienmērīgai daudzuzdevumu veikšanai, ir diezgan apspriests temats. Apple tiek galā ar mazāku izmēru savos iPhone tālruņos, kas bieži vien ir vairāk lietojams nekā Android risinājumi. Jūs arī neatradīsit nekāda veida RAM atmiņas pārvaldību iPhone tālrunī, savukārt Android tam ir sava īpaša funkcija. 

Ja dodaties, piemēram, Samsung Galaxy tālruņos uz Iestatījumi -> Ierīces kopšana, šeit atradīsit RAM indikatoru ar informāciju par to, cik daudz vietas ir brīvas un cik aizņemtas. Pēc noklikšķināšanas uz izvēlnes jūs varat redzēt, cik daudz atmiņas aizņem katra lietojumprogramma, kā arī šeit ir iespēja notīrīt atmiņu. Šeit atrodas arī RAM Plus funkcija. Tā nozīme ir tāda, ka tas noņems noteiktu skaitu GB no iekšējās atmiņas, ko tas izmantos virtuālajai atmiņai. Vai varat iedomāties kaut ko līdzīgu operētājsistēmā iOS?

Viedtālruņi balstās uz RAM. Tas kalpo operētājsistēmas glabāšanai, lietojumprogrammu palaišanai, kā arī dažu datu saglabāšanai kešatmiņā un buferatmiņā. Tādējādi operatīvā atmiņa ir jāorganizē un jāpārvalda tā, lai lietojumprogrammas varētu darboties nevainojami, pat ja tās nolaižat fonā un pēc kāda laika atkal atverat.

Svifta vs. Java 

Bet, startējot jaunu lietojumprogrammu, atmiņā ir jābūt brīvai vietai, lai to ielādētu un palaistu. Ja tas tā nav, vieta ir jāatbrīvo. Tāpēc sistēma piespiedu kārtā pārtrauks dažus darbojošos procesus, piemēram, lietojumprogrammas, kas jau ir sākušās. Tomēr abas sistēmas, t.i., Android un iOS, ar RAM darbojas atšķirīgi.

iOS operētājsistēma ir rakstīta Swift valodā, un iPhone tālruņiem faktiski nav jāpārstrādā izmantotā atmiņa no aizvērtām lietotnēm atpakaļ sistēmā. Tas ir saistīts ar to, kā ir izveidots iOS, jo Apple to pilnībā kontrolē, jo tas darbojas tikai savos iPhone tālruņos. Turpretim Android ir rakstīts Java valodā un tiek izmantots daudzās ierīcēs, tāpēc tam jābūt universālākam. Kad lietojumprogramma tiek pārtraukta, tā aizņemtā vieta tiek atgriezta operētājsistēmā.

Vietējais kods vs. JVM 

Kad izstrādātājs raksta iOS lietotni, viņš to tieši apkopo kodā, kas var darboties iPhone procesorā. Šo kodu sauc par vietējo kodu, jo tā palaišanai nav nepieciešama interpretācija vai virtuālā vide. No otras puses, Android ir atšķirīgs. Kad Java kods tiek kompilēts, tas tiek pārveidots par Java baitu kodu starpposma kodu, kas ir neatkarīgs no procesora. Tāpēc tas var darboties dažādos procesoros no dažādiem ražotājiem. Tam ir milzīgas priekšrocības starpplatformu savietojamībai. 

Protams, ir arī mīnuss. Katrai operētājsistēmas un procesora kombinācijai ir nepieciešama vide, kas pazīstama kā Java virtuālā mašīna (JVM). Taču vietējais kods darbojas labāk nekā kods, kas tiek izpildīts, izmantojot JVM, tāpēc JVM izmantošana vienkārši palielina lietojumprogrammas izmantotās RAM apjomu. Tātad iOS lietotnes patērē mazāk atmiņas, vidēji par 40%. Arī tāpēc Apple nav jāaprīko savi iPhone ar tik lielu operatīvo atmiņu kā Android ierīcēm. 

.