Tout d'abord, une petite théorie. Qu'est-ce que la RAM et à quoi ça sert dans un smartphone? En termes simples, c'est la mémoire qui stocke toutes les applications en cours d'exécution, leurs données et le système d'exploitation lui-même!
Naturellement, plus votre appareil a de RAM, plus il est confortable et agréable d'interagir avec lui.
La plupart des utilisateurs d'iPhone ne savent même pas combien de RAM ils ont dans leur smartphone. Cela est dû au fait que les utilisateurs sont à l'aise avec le multitâche dans leurs smartphones, ils utilisent simplement et apprécient la fluidité et la rapidité du travail. Alors, comment Apple parvient-il à bien fonctionner avec 4 Go de RAM?
Serait-ce le système? En fait, les miracles ne se produisent pas, Android et iOS nécessitent à peu près la même quantité de RAM. Par exemple, il y a quelques années, une chaîne de l'Autorité Android étrangère a effectué une comparaison détaillée. L'auteur a pris deux smartphones sur iOS - il s'agit de l'iPhone 7 et sur Android - du Nexus 5x, avec la même quantité de RAM - 2 Go. L'iPhone 7 dispose de MOINS DE RAM libre depuis son lancement qu'un smartphone Android: environ 750 Mo contre 1,2 Go pour le Nexus. Mais c'est jusqu'au moment où vous démarrez l'une de vos applications. Nous avons répété le test sur l'iPhone 11 et le Pixel 3 avec le Pixel 4. Désormais, les chiffres sont comparables: l'iPhone utilise environ 2 Go de RAM et le Pixel environ 2,4 Go.
D'accord, c'est peut-être parce que les applications Android prennent plus d'espace RAM? Après tout, Apple aime les développeurs, et ils rendent la pareille. Mais pas non plus: dans de nombreux cas, la taille de l'espace occupé en RAM sur iOS et Android est à peu près égale, mais dans certains cas, les applications sur iOS prennent presque 1,5 à 2 fois moins de RAM! Cela est probablement dû au code exécutable plus optimisé de l'application, car les langages d'écriture des applications sont très différents.
Lors du calcul, les applications Android n'occupent collectivement que 6% d'espace RAM en plus.
Mais ce n'est que le début, comme de nombreux utilisateurs de produits Apple disent "L'optimisation décide!", Il s'est avéré qu'il y a du vrai là-dedans!
Les deux appareils fonctionnent avec des applications à une vitesse fulgurante, tout est clair avec un Android, tout est stocké en RAM, mais comment l'iPhone fait-il face à ses pitoyables 4 gigaoctets? Toute la magie réside précisément dans le travail d'iOS avec RAM. Fondamentalement, l'iPhone et Android ont à peu près le même planificateur de mémoire. Si au moment du lancement d'une nouvelle application, le smartphone ne dispose tout simplement pas de RAM libre, il jettera l'une des applications précédemment lancées et ouvrira celle dont vous avez besoin pour le moment!
Dans le monde des ordinateurs, le système d'exploitation Windows possède un fichier d'échange (pagefile.sys), également appelé swap (le terme est écrit en anglais - swap). Il s'agit de l'espace sur votre disque dur où le système déplace les données inutilisées de la RAM. Afin de ne pas les stocker dans la RAM, les applications de longue durée sont simplement transférées sur le disque dur, libérant ainsi de l'espace pour un autre onglet Chrome. Les PK-boyars comprennent ce que je veux dire.
Sur les smartphones, les choses sont un peu plus compliquées, de nombreux smartphones n'ont toujours pas les lecteurs flash les plus rapides en mémoire permanente. Nous ajoutons à cela le fait que la mémoire flash dispose d'une ressource de lecture et d'écriture relativement petite, les fabricants de smartphones ont donc eu recours à une implémentation différente!
Imaginez une telle situation, nous avons 4 Go de RAM, 5 applications sont ouvertes, la mémoire est déjà pleine, comment pouvons-nous démarrer une autre application sans fermer l'une des cinq, c'est-à-dire celles qui sont déjà ouvertes. Le fait est que iOS et Android ont également un soi-disant SWAP compressé - utilisant la compression, ce qui est similaire à ce que fait l'archiveur. L'application est compressée dans la RAM, le système sélectionne les applications les plus massives, qu'il s'agisse d'un grand ou de deux petits jeux, la compression se produit, libérant ainsi jusqu'à 50% d'espace supplémentaire, et maintenant vous pouvez lancer une autre application.
Ce schéma fonctionne à la fois sur iPhone et Android, mais Apple est allé beaucoup plus loin. Ils ont compris comment diviser l'espace en pages séparées - blocs de 16 Ko pouvant contenir n'importe quelle information. Une telle page peut être marquée comme sale ou propre. Clean - mémoire qui n'est plus utilisée (c'est-à-dire qu'aucun objet n'y fait plus référence et que vous pouvez la décharger en toute sécurité). Plus tard, il peut être chargé à partir du disque ("page out"), cette mémoire contient des frameworks, du code exécutable et des fichiers en lecture seule.
Par exemple, ces pages peuvent contenir des données de texture de jeu qui ne sont pas utilisées par l'application même après le redémarrage à partir de l'arrière-plan, ainsi que dans d'autres applications, il peut s'agir de différents tickers, masques et autres blocs de code AR qui ne sont pas utilisés par l'application jusqu'à ce que l'utilisateur réexécute. lancera le programme depuis l'arrière-plan.
Sale - mémoire qui est encore utilisée dans l'application, il est impossible de la décharger.Par conséquent, lorsque l'application bascule en arrière-plan, la mémoire propre est simplement déchargée et la mémoire sale est compressée à l'aide de deux méthodes de compression:
- Compression de tampon - Utilise une méthode de compression de fichier en une étape, cette méthode est utilisée pour compresser de petits fichiers jusqu'à 8 Mo.
- Compression de flux - Utilise plusieurs étapes pour compresser les fichiers, y compris la recompression de fichiers précédemment compressés, ce qui le rend idéal pour la compression de fichiers volumineux.
Disons que nous avons une application Instagram, elle prend 300 Mo de RAM, la première étape consiste à vider la mémoire propre que l'application avait en stock et ne sera plus nécessaire. La taille de la RAM est réduite à environ 170 Mo. Le système d'exploitation aura alors recours à l'une des deux méthodes pour compresser la mémoire sale. Grâce à un algorithme de compression intelligent, la mémoire sale de 170 mégaoctets est compressée à une taille incroyablement petite - moins de 10 Mo! À leur tour, les fabricants de smartphones basés sur Android sont sortis de la situation avec une solution plus simple, augmenter la taille de la RAM afin d'utiliser un swap moins compressé. C'est donc l'heure du test. Nous avons pris des appareils de différentes générations - iPhone 11 et Pixel 3 - mais tous les deux avec 4 Go. Voyons ce qui se passe.
Pixel garde trois jeux à l'esprit. Commencé à les décharger de la mémoire lors du démarrage du quatrième.
L'iPhone prend entièrement en charge six jeux. J'ai commencé à décharger lentement le septième, mais pas tous. Tout le monde n'a commencé à s'envoler qu'au huitième match.
Et ici, nous arrivons au point culminant de la question, vous devez comprendre pourquoi l'iPhone compresse les données si rapidement dans la RAM? Et le point est le suivant. Pour effectuer rapidement cette opération, vous avez besoin d'un processeur puissant avec des Big Cores hautes performances!
Si nous regardons les captures d'écran du benchmark GeekBench 5, nous verrons la supériorité de l'A13 Bionic sur le Snapdragon 865 par 1,5 fois, et l'A14 Bionic n'est même pas encore sorti! Ce sont les performances par flux de données qui ont toujours été le principal atout des processeurs Apple! Le gros problème des smartphones Android est qu'ils sont tous construits sur un matériel très différent, les fabricants sont obligés d'optimiser le système pour les appareils plus faibles qui n'ont tout simplement pas une puissance de processeur aussi impressionnante ou une mémoire rapide. Bien qu'il y ait déjà des progrès de Qualcomm.
Ainsi, même à partir de la présentation de Snapdragon 855, il a été remarqué que la société se concentrait sur un noyau haute performance (noyau principal), qui a une fréquence et une taille de cache accrues, mais ce n'est toujours pas suffisant pour rattraper les puces Apple.
Je pense que maintenant, beaucoup ont compris pourquoi l'iPhone n'a pas besoin de autant de RAM. La taille n'est pas l'essentiel, il est préférable d'investir plus d'argent dans la partie logicielle et d'allouer correctement les ressources de votre matériel grâce à des algorithmes intelligents de compression de fichiers dans la RAM.