Pourquoi les iPhone / iPad nécessitent moins de mémoire que les Android ?

Actu AppleVoici une information qui intéressera plus particulièrement les amateurs d'informatique proprement dit, ainsi que ceux qui aiment comparer les deux univers que sont iOS d'un côté et Android de l'autre.

Avez-vous déjà remarqué que les appareils sous Android affichent la plupart du temps une quantité de mémoire vive (RAM) deux à trois fois plus élevée que ceux des iPhone sous iOS, pour des appareils de puissance "équivalente" ?

La question est, pourquoi ?


La réponse nous vient du site Quora. Pour simplifier, le fautif côté Android n'est autre que Java, qui est à la fois un langage de programmation et un socle d'exécution des programmes.

Plus précisément, Java possède un inconvénient majeur par rapport à nombre de ses concurrents. Pour fonctionner au mieux de sa forme, il nécessite de gros espaces mémoires. Il utilise un système qu'on appelle le Garbage Collector (collecteur d'ordures pour traduire en vulgarisant). Ce "sous-programme" tourne en tâche de fond et libère la mémoire des objets considérés comme inutiles, ceux utilisés par les applications que l'on quitte par exemple.

java memory footprint


Le diagramme ci-dessus montre que ce Garbage Collector est nettement plus rapide sur des espaces mémoires plus importants. Il nécessite 4 à 8 fois plus d'espace qu'utilisé par le système pour être vraiment efficace.

Les appareils Apple, qui tournent sous iOS, n'utilisent pas ce procédé. Sans rentrer dans les détails, l'allocation de la mémoire y est faite de façon plus rigoureuse et seulement en fonction des besoins réels des applications. Ce système est donc moins perturbé par de petits espaces mémoires et parvient à conserver un excellent niveau de performance dans des environnements plus restreints.

Voilà donc pourquoi les derniers appareils Apple possèdent "seulement" 1 GO de RAM alors que les plus récents appareils Android embarquent une quantité de 2 ou 3 GO de RAM (on parle de 4 Go pour le prochain Xperia Z4).

D'ailleurs, la quantité de mémoire que possède un iPhone n'est jamais mise en avant sur sa fiche produit. Vous ne trouverez pas cette information sur les fiches de présentation des iPhone du site d'Apple. Cette donnée technique n'est tout simplement pas vitale pour ces appareils puisque la fluidité est au rendez-vous.

17 réactions

nordine - iPhone

@Siri - iPod touch
Mais c'est un langage qui a tout de même beaucoup d'avantages puisqu'il est universel ça simplifie grandement le travaille des devs

22/11/2014 à 10h29

nordine - iPhone

@Frank - iPhone
+100

22/11/2014 à 10h26

Hidan - iPhone premium

Bon à savoir. :)

18/11/2014 à 20h55

Siri - iPod touch

@f2 - iPhone premium

Tout à fait d'accord :)
Java est incontestablement une usine à gaz. Jdownloader et Azureus sont de parfait exemple.

18/11/2014 à 15h20

GPMP - iPhone premium

@Frank - iPhone
Tout à fait d'accord !
L'explication est claire pour la puissance et la fluidité. Mais pas pour la quantité d'applications actives.
Les iPhone auraient 2 Go de RAM, cela pourrait doubler le nombre d'applications actives.
Avec l'option "Applications inactives plus sombres" dans Springtomize 3, on voit bien celles qui ont été "éteintes" par iOS. Actuellement j'ai seulement 6 actives sur les 10 qui tournent tout le temps. Donc obligé d'attendre la réouverture de 4 d'entre elles...

17/11/2014 à 20h46

Onevlys - iPhone

L'iPad air 2 a 2go de ram

17/11/2014 à 19h07

Balthazare - iPhone premium

Androïde a le même problème que Windows il doivent tourner sur plusieurs machines.
Chez Apple le programme est optimisé pour ses produit uniquement.
Vivement le mois de février beaucoup de programmes sur iPhone 5s,6,6plus tourneront en 64bit = mois de crache

17/11/2014 à 18h14

2frais - iPhone premium

Pas mal et merci !

17/11/2014 à 17h29

iphonezer - iPhone

@Frank - iPhone
+1

17/11/2014 à 17h17

Frank - iPhone

Article très intéressant. Par contre je pense qu Apple aurait tout de même pu monter sa mémoire ram a 2 go sur les iPhone 6 car bien que toutes les applications soient fluides. Lorsque plusieurs applications sont lancées les 1 go sont largement utiliser et on se retrouves avec des applications qui plantes et se ferment.

17/11/2014 à 16h59

Playaa

Faut surtout se mettre à jour un peu, android à depuis peu changer sa méthode de fonctionnement pour passer de Dalvik à ART pour optimiser l'utilisation de la RAM et n'oubliez pas une chose android est utilisé sur plusieurs plates-formes et plusieurs marques, on ne peut cependant pas avoir un système en natif comme sur les iPhone.

17/11/2014 à 16h57

JamesCookies - iPhone

Mieux vaut avoir une belle bibliothèque qu'un très gros livre

17/11/2014 à 16h28

f2 - iPhone premium

Autre différence toute aussi importante, sur iOS les applications tournent en natif, il ne faut pas de "machine virtuelle" ou "d'interpréteur" pour que l'application fonctionne. C'est parfaitement optimisé et c'est très rapide. Sur Android c'est différent, il y a une machine virtuelle Java qui traduit le code Java en code machine. Ça demande donc beaucoup de RAM mais ça consomme aussi pas mal de ressources processeur. Voilà pourquoi les smartphones Android sont si puissants. Pour faire marcher cette belle usine à gaz qu'est Java !

17/11/2014 à 16h11

Antoine

La réponse aurait été appréciée ;)

17/11/2014 à 16h05

splatch3 - iPhone

J'espère que les anti Apple comprendront enfin ! Mieux vaut la qualité que la quantité ;)

17/11/2014 à 15h51

Maou31 - iPhone

Très instructif :) merci !

17/11/2014 à 15h19

ioda19

Intéressant à savoir !!!

17/11/2014 à 15h15

Donnez votre avis
Cliquez pour commenter
Vous aimerez peut-être

Suivez-nous avec notre app iSoft
Articles populaires
Les derniers articles