Différence entre la mémoire virtuelle et le cache

Différence entre la mémoire virtuelle et le cache

Dans le monde des ordinateurs, la mémoire fixe la limite sur laquelle nous basons si nous pouvons exécuter ce programme ou non. Si vous n'ayez pas eu de chance pour avoir expérimenté DOS, alors vous connaissez le fléau de la limite de mémoire de 640k. De nos jours, la mémoire semble être presque infinie et personne ne reçoit réellement les messages «pas assez de mémoire» d'hier. Comment ont-ils accompli ça?

La réponse à cela est une procédure de gestion de la mémoire très intelligente. En plaçant certaines pièces qui devraient être en mémoire à l'intérieur de votre disque dur, elles peuvent étendre la capacité de mémoire d'un ordinateur bien au-delà de ce qui est installé; C'est ce qu'on appelle la mémoire virtuelle. Disons donc que votre ordinateur n'a que 1 Go de mémoire et que vous lancez quelques programmes dont la consommation totale de mémoire est d'environ 1.5 Go. Sans mémoire virtuelle, vous n'êtes pas autorisé à le faire. Mais avec la mémoire virtuelle, le système d'exploitation attribue une partie du disque dur dans le cadre de la mémoire et y maintient les données. Donc, dans l'exemple ci-dessus, disons que la mémoire virtuelle est également 1 Go. 1 Go de mémoire réelle + 1 Go de mémoire virtuelle = mémoire système 2 Go. De cette façon, même si votre mémoire est limitée, vous pouvez toujours utiliser des applications étendues de mémoire.

Il y a cependant un inconvénient à la mémoire virtuelle. La lecture des données d'un disque dur est beaucoup plus lente que la lecture de la mémoire. Donc, plus les informations stockées dans votre disque dur, plus votre système devient lent, ce qui semble lent.

La mémoire de cache, d'autre part, n'étend pas la quantité de mémoire que vous avez, elle réduit simplement le temps nécessaire pour accéder aux données. Pour que vous puissiez comprendre facilement le concept, disons que le processeur est un étudiant qui fait un rapport. Chaque fois qu'il a besoin de données, il va à la bibliothèque (la bibliothèque étant la mémoire, et les livres sont les données) et élimine un livre et le ramène à sa chaise. Il le lit puis il le retourne à la bibliothèque avant de continuer avec son rapport. Si vous étiez l'étudiant, ce serait vraiment du temps si vous devez vous lever et obtenir un livre chaque fois que vous avez besoin d'un morceau de données. Pratiquement un étudiant obtiendrait quelques livres de la bibliothèque et le placerait sur la table. De sorte que s'il a besoin d'informations dans le livre qu'il a récemment utilisé, elle est juste à portée de main et il n'a pas à se tenir debout et à marcher pour l'obtenir.

Dans cette métaphore, le tableau est notre mémoire de cache. Chaque fois que le processeur utilise des données, il met les données les plus récentes qu'il a utilisées dans la mémoire du cache pour un accès rapide au cas où il serait à nouveau nécessaire. La mémoire du cache est cependant très limitée, tout comme un tableau ayant un espace limité, donc les données qui n'étaient pas accessibles sont renvoyées à la mémoire afin de libérer le cache pour des données plus récentes.

En savoir plus sur le cache et la mémoire virtuelle.