Article de reference

disque RAM

Un disque RAM (ou RAM drive ) est un bloc de mémoire vive ( mémoire vive ou mémoire volatile ) que le logiciel de l'ordinateur traite comme un disque dur ou un SSD ( mémoire sec...

mémoire vive ( mémoire vive ou mémoire volatile ) que le logiciel de l'ordinateur traite comme un disque dur ou un SSD ( mémoire secondaire ). Les disques RAM offrent un stockage temporaire haute performance pour les tâches exigeantes et protègent les périphériques de stockage non volatils de l'usure, car la RAM ne s'use pas lors de l'écriture, contrairement à la mémoire flash non volatile utilisée dans les SSD.

On parle parfois de disque RAM virtuel ou de disque RAM logiciel pour le distinguer d'un disque RAM matériel qui utilise un matériel séparé contenant de la RAM, qui est un type de disque SSD avec batterie de secours .

Les disques RAM ont été initialement conçus pour combler l'écart de performances entre la mémoire vive et les périphériques de stockage secondaire. Avec l'arrivée des disques SSD, cet avantage s'est réduit. Cependant, les disques SSD s'usent à cause des écritures fréquentes. La RAM, quant à elle, ne subit pas ce type de dommages, ou beaucoup moins. Elle conserve donc un avantage pour le stockage de données fréquemment modifiées, comme les informations temporaires ou mises en cache.

plusieurs ordres de grandeur supérieures à celles d'autres formes de stockage numérique, comme les disques SSD , les lecteurs de bandes , les lecteurs optiques , les disques durs et les lecteurs de disquettes . Ce gain de performance est dû à de multiples facteurs, notamment le temps d'accès, le débit maximal et les caractéristiques du système de fichiers .

Le temps d'accès aux fichiers est considérablement réduit grâce à la technologie à semi-conducteurs (absence de pièces mobiles) des disques RAM. Contrairement aux disques durs physiques, aux supports optiques ( CD-ROM , DVD , Blu-ray , etc. ) et autres supports ( disques à bulles , disques acoustiques , bandes magnétiques , etc.), les disques RAM doivent déplacer les données vers un emplacement précis avant toute lecture ou écriture. Les disques RAM, quant à eux, accèdent aux données uniquement grâce à leur adresse, éliminant ainsi cette latence .

Deuxièmement, le débit maximal d'un disque RAM est limité par la vitesse de la mémoire RAM, du bus de données et du processeur de l'ordinateur. D'autres supports de stockage sont également limités par la vitesse de leur bus, comme l'IDE (PATA), le SATA , l'USB ou le FireWire . À cette limitation s'ajoute la vitesse des mécanismes internes du disque (moteurs, têtes de lecture/écriture ou cellules).

Troisièmement, le système de fichiers utilisé, tel que NTFS , HFS+ , UFS , ext2 , etc., utilise des accès, des lectures et des écritures supplémentaires sur le disque, qui, bien que peu nombreux, peuvent s'accumuler rapidement, surtout dans le cas de nombreux petits fichiers par rapport à quelques fichiers plus volumineux (dossiers Internet temporaires, caches Web, etc.).

Le stockage se faisant en mémoire vive (RAM), il s'agit d' une mémoire volatile , ce qui signifie que les données seront perdues en cas de coupure de courant, qu'elle soit intentionnelle (redémarrage ou arrêt de l'ordinateur) ou accidentelle (panne de courant ou plantage système). Ceci constitue généralement un inconvénient (les données doivent être sauvegardées régulièrement sur un support de stockage permanent pour éviter toute perte), mais peut parfois s'avérer utile : par exemple, lors de la manipulation d'une copie déchiffrée d'un fichier chiffré , ou lors de l'utilisation de la RAM pour stocker les fichiers temporaires du système .

Dans de nombreux cas, les données stockées sur le disque RAM sont créées à partir de données stockées de manière permanente ailleurs, pour un accès plus rapide , et sont recréées sur le disque RAM lorsque le système redémarre.

Outre le risque de perte de données, la principale limitation des disques SSD réside dans leur capacité, elle-même limitée par la quantité de mémoire vive installée. Si le stockage SSD multi-téraoctets est devenu courant, la mémoire vive reste mesurée en gigaoctets.

Les disques RAM utilisent la mémoire système classique comme s'il s'agissait d'une partition d'un disque dur physique, au lieu d'accéder au bus de données habituellement utilisé pour le stockage secondaire. Bien que le système d'exploitation puisse souvent prendre en charge directement les disques RAM via des mécanismes spécifiques du noyau , il est généralement plus simple d'y accéder par le biais d'un pilote de périphérique virtuel . Ainsi, la nature non physique des disques RAM reste invisible pour le système d'exploitation et les applications.

En raison de la nature temporaire des informations stockées sur le disque RAM, aucune batterie de secours n'est généralement nécessaire, mais une alimentation sans interruption peut permettre au système de continuer à fonctionner pendant une courte coupure de courant.

Certains disques RAM utilisent un système de fichiers compressé comme cramfs pour permettre l'accès à la volée aux données compressées, sans décompression préalable. Ceci est pratique car les disques RAM sont souvent de petite capacité en raison du coût plus élevé par octet que celui des disques durs classiques.

Historique et spécificités du système d'exploitation

Le premier lecteur de RAM logiciel pour micro-ordinateurs a été inventé et développé par Jerry Karlin au Royaume-Uni en 1979/80. Ce logiciel, connu sous le nom de Silicon Disk System , a ensuite été commercialisé par JK Systems Research, devenue Microcosm Research Ltd suite à l'arrivée de Peter Cheesewright ( Microcosm Ltd) . L'objectif était de permettre aux premiers micro-ordinateurs d'utiliser une quantité de RAM supérieure à celle que le processeur pouvait adresser directement. Faire fonctionner la RAM à commutation de banques comme un lecteur de disque était beaucoup plus rapide que l'utilisation de disques durs, surtout avant que ces derniers ne soient largement disponibles sur ces machines. Le Silicon Disk a été lancé en 1980, initialement pour le système d'exploitation CP/M , puis pour MS-DOS .

L' Atari 130XE (avec DOS 2.5) et le Commodore 128 ( 128 Ko) prennent en charge nativement les disques RAM, tout comme ProDOS pour l' Apple II . Sur les systèmes dotés de 128 Ko de RAM ou plus, ProDOS crée automatiquement un disque RAM nommé /RAM .

En août 1984, IBM a intégré un lecteur RAM nommé VDISK.SYS à PC DOS (version 3.0). Il s'agissait du premier composant DOS à utiliser la mémoire étendue . VDISK.SYS n'était pas disponible dans MS-DOS de Microsoft car, contrairement à la plupart des composants des premières versions de PC DOS, il avait été développé par IBM. Microsoft a inclus le programme similaire RAMDRIVE.SYS dans MS-DOS 3.2 (sorti en 1986), qui pouvait également utiliser la mémoire étendue . Ce programme a été abandonné dans Windows 7. DR-DOS et la famille de systèmes d'exploitation multi-utilisateurs DR étaient également fournis avec un disque RAM nommé VDISK.SYS. Dans Multiuser DOS , le disque RAM est par défaut associé à la lettre de lecteur M: (pour lecteur de mémoire). AmigaOS intègre un lecteur RAM depuis la sortie de la version 1.1 en 1985 et le conserve dans AmigaOS 4.1 (2010). Apple Computer a ajouté cette fonctionnalité à la série Apple II avec ProDOS et, plus tard, à Apple Macintosh avec le panneau de contrôle de la mémoire du système 7 en 1991, et a conservé cette fonctionnalité tout au long de la vie de Mac OS 9 .

Une innovation concernant les disques RAM, introduite en 1986 mais généralisée en 1987 par Perry Kivolowitz pour AmigaOS, résidait dans la capacité du disque RAM à survivre à la plupart des plantages et redémarrages. Appelé ASDG Recoverable Ram Disk (RRD), ce dispositif survivait aux redémarrages en allouant dynamiquement la mémoire dans l'ordre inverse de l'allocation mémoire par défaut (une fonctionnalité prise en charge par le système d'exploitation sous-jacent) afin de réduire la fragmentation de la mémoire. Un « super-bloc » était écrit avec une signature unique, localisable en mémoire après redémarrage. Ce super-bloc, ainsi que tous les autres « blocs » du disque RRD, conservaient des sommes de contrôle permettant d'invalider le disque en cas de corruption. Initialement, l'ASDG RRD était verrouillé sur les cartes mémoire ASDG et utilisé comme argument de vente. Plus tard, il fut distribué en shareware, avec une suggestion de don de 10 dollars. La version shareware est apparue sur les disques Fred Fish 58 et 241. AmigaOS lui-même allait bénéficier d'un disque RAM récupérable (appelé « RAD ») dans la version 1.3.

De nombreux systèmes Unix et apparentés offrent une forme de fonctionnalité de disque RAM, comme /dev/ram sous Linux ou md(4) sous FreeBSD . Les disques RAM sont particulièrement utiles pour les applications exigeantes en ressources et à hautes performances, pour lesquelles les systèmes d'exploitation de type Unix sont parfois configurés. Il existe également quelques distributions Linux « ultra-légères » spécialisées, conçues pour démarrer depuis un support amovible et dont les données sont stockées dans un disque RAM pendant toute la session.

Disques RAM matériels dédiés

Il existe des disques RAM utilisant de la mémoire DRAM dédiée exclusivement au stockage à très faible latence. Cette mémoire est isolée du processeur et n'est pas accessible directement comme la mémoire système classique. Les premiers disques RAM dédiés ont été commercialisés entre 1983 et 1985.

Un des premiers exemples de disque RAM matériel a été introduit par Assimilation Process en 1986 pour le Macintosh. Baptisé « Excalibur », il s'agissait d'un disque RAM externe de 2 Mo, vendu entre 599 et 699 dollars américains. Sa capacité étant extensible par incréments de 1 Mo, sa batterie interne offrait une autonomie de 6 à 8 heures et, fait inhabituel pour l'époque, il se connectait via le port de disquette du Macintosh.

En 2002, Cenatek a produit le Rocket Drive , d'une capacité maximale de 4 Go, doté de quatre emplacements DIMM pour mémoire PC133, offrant jusqu'à quatre gigaoctets de stockage. À l'époque, les ordinateurs de bureau courants utilisaient entre 64 et 128 mégaoctets de mémoire PC100 ou PC133. Les modules PC133 d'un gigaoctet (les plus grands disponibles à l'époque) coûtaient environ 1 300 $ ( Gigabyte Technology a produit l' i-RAM , max 4 Go, qui fonctionnait essentiellement de la même manière que le Rocket Drive, sauf qu'il était mis à niveau pour utiliser la technologie de mémoire DDR plus récente, bien que également limité à une capacité maximale de 4 Go.

Pour ces deux périphériques, la mémoire vive dynamique (DRAM) nécessite une alimentation continue pour conserver les données ; en cas de coupure de courant, les données sont perdues. Le Rocket Drive disposait d'un connecteur pour une alimentation externe distincte de celle de l'ordinateur, ainsi que de la possibilité d'utiliser une batterie externe pour préserver les données pendant une panne de courant. L'i-RAM intégrait une petite batterie directement sur la carte d'extension, offrant une autonomie de 10 à 16 heures.

Les deux périphériques utilisaient l'interface SATA 1.0 pour transférer les données du disque RAM dédié vers le système. L'interface SATA constituait un goulot d'étranglement, limitant les performances maximales des deux disques RAM. Cependant, ces disques offraient une latence d'accès aux données exceptionnellement faible et des vitesses de transfert soutenues élevées, comparées aux disques durs mécaniques.

En 2006, Gigabyte Technology a produit le CompactFlash en façade, permettant de copier les données non volatiles stockées sur le disque RAM sur une carte CompactFlash en cas de coupure de courant ou de batterie de secours faible. Deux boutons-poussoirs en façade permettent à l'utilisateur de sauvegarder et de restaurer manuellement les données du disque RAM. La carte CompactFlash elle-même n'est pas accessible à l'utilisateur, car elle est exclusivement dédiée à la sauvegarde et à la restauration de la RAM. Pour une sauvegarde fiable, la capacité de la carte CompactFlash doit être égale ou supérieure à la capacité totale du module RAM.

En 2009, à la conservation et à l'enregistrement de fichiers journaux . En cas de coupure de courant, les données peuvent être sauvegardées sur un SSD interne de 4 Go en 60 secondes grâce à une batterie de secours. Elles peuvent ensuite être restaurées dans la RAM une fois le courant rétabli. Une coupure de courant de l'hôte déclenche la sauvegarde des données volatiles par le DDRdrive X1 sur un stockage non volatil intégré.