Mémoire vive

La mémoire RAM (de l’anglais Random Access Memory – Mémoire à accès aléatoire) permet le stockage de vos données sur le court terme. En cela, elle s’oppose au disque dur ou SSD qui va conserver les données sur le long terme, et ce, même si vous éteignez votre appareil.

On l’appelle également « mémoire vive » en opposition à la « mémoire morte », qui conserve les données sur le long terme.

C’est un composé matériel que l’on nomme couramment « barrette ». Celle-ci vient se brancher ou se clipser sur la carte mère de l’ordinateur. Sur la plupart des ordinateurs, il est donc possible d’ajouter des barrettes de RAM s’il y a des emplacements disponibles. Ceci afin de rendre l’appareil plus performant.

Mémoire RAM, disque dur ou SSD et processeur fonctionnent ensemble pour vous garantir une rapidité d’exécution de vos différents programmes.

Comment cela fonctionne-t-il ?

Tout d’abord, les données sont stockées sur le disque dur ou SSD. Puis, le processeur envoie ces données à la mémoire vive afin que vous puissiez y accéder le plus rapidement possible. Cela vous permet également de faire fonctionner plusieurs programmes à la fois, qui utilisent tous une part de mémoire vive.

Le processeur lit ensuite les données de la mémoire vive. Celles-ci sont ensuite écrasées. Elles sont perdues si vous éteignez votre ordinateur.

Quels sont les différents types de mémoire RAM ?

La mémoire RAM se divise en plusieurs types :

  • La SRAM (Static Random Access Memory)
  • La DRAM (Dynamic Random Access Memory)
  • Et la SDRAM (Synchronous Dynamic Access Memory)

La SRAM permet de stocker des données grâce à une cellule mémoire qui est composée de 6 transistors. Elle sert à conserver temporairement la mémoire cache d’un processeur. Elle est la solution la plus rapide.

Quant à la DRAM, elle permet de stocker des données via un transistor et un accumulateur.

La SDRAM est le type de RAM le plus récent. Elle répond aux nouvelles exigences des autres composants. Pour ce faire, elle fonctionne de pair avec le processeur. Elle a un débit de données doubles (qu’on appelle DDR) qui accélère sa performance.

Sécurité

Attaque par démarrage à froid

Bien que les spécifications de la mémoire dynamique indiquent que la conservation des données de la mémoire n'est garantie que si la mémoire est rafraîchie régulièrement (typiquement toutes les 64 ms), les condensateurs de cellules de mémoire conservent souvent leurs charges durant des périodes significativement plus longues, en particulier à basses températures. Sous certaines conditions, la plupart des données de la mémoire DRAM peuvent être récupérées même si la mémoire n'a pas été rafraîchie depuis plusieurs minutes.

Cette propriété peut être utilisée pour contourner certaines mesures de sécurité et récupérer des données stockées dans la mémoire et supposées avoir été détruites à la mise hors tension de l'ordinateur. Pour ce faire, il suffit de redémarrer l'ordinateur rapidement et copier le contenu de la mémoire vive. Alternativement, on peut refroidir les puces de mémoire et les transférer sur un autre ordinateur. Une telle attaque a réussi à contourner des systèmes populaires de chiffrement de disque, tels que TrueCrypt, BitLocker Drive Encryption de Microsoft, et FileVault d'Apple. Ce type d'attaque contre un ordinateur est appelé une attaque par démarrage à froid (Cold boot attack).

Attaque par martèlement de mémoire

Le martèlement de mémoire (Row hammer) est un effet secondaire imprévu dans les mémoires dynamiques à accès directe (DRAM) qui provoque une fuite de charge électrique dans des cellules de mémoire, et en conséquence provoque une interaction électrique entre ces cellules et d'autres cellules voisines.

____________________________________________

La mémoire cache

La mémoire cache est un type de mémoire vive (RAM) à laquelle le microprocesseur peut accéder plus rapidement qu'à la mémoire RAM habituelle. Généralement, cette mémoire cache est directement intégrée dans la puce de l'unité centrale (UC) ou placée sur une puce distincte dotée d'une interconnexion par bus à l'UC.

Une mémoire cache ou antémémoire est, en informatique, une mémoire qui enregistre temporairement des copies de données provenant d'une source, afin de diminuer le temps d'un accès ultérieur (en lecture) d'un matériel informatique (en général, un processeur) à ces données. Le principe du cache est également utilisable en écriture, et existe alors en trois modes possibles : write-through, write-back et write-around

La fonction de base de la mémoire cache est de stocker les instructions de programme qui sont fréquemment re-référencées par les logiciels en cours d'exécution. L'accès rapide à ces instructions accroît la vitesse globale des logiciels.

Lorsque le microprocesseur traite des données, il cherche d'abord dans la mémoire cache ; s'il y trouve les instructions (stockées suite à une précédente lecture des données), cela lui évite d'effectuer une lecture des données plus longue dans une mémoire plus volumineuse ou sur d'autres périphériques de stockage.

La plupart des programmes utilisent très peu de ressources une fois qu'ils ont été ouverts et utilisés pendant un certain temps, principalement parce que les instructions souvent re-référencées ont tendance à être placées en mémoire cache. Cela explique pourquoi les mesures des performances système des ordinateurs équipés de processeurs plus lents mais de mémoires caches plus grandes ont tendance à être plus élevées que celles des ordinateurs plus rapides mais plus limités en espace mémoire cache.

La mise en cache multiniveau est devenue courante dans les architectures serveur et des postes de travail, les différentes couches améliorant le rendement grâce à la gestion en niveaux. En termes simples, moins l'accès à certaines données ou instructions est fréquent, plus leur niveau d'écriture dans la mémoire cache est bas.