Le RAM Disk (presque) persistant des anciens Mac

C’est en lisant un bouquin de David Pogue que je suis tombé sur un truc un peu étonnant : sur pas mal de Mac, les RAM Disk survivent à un redémarrage.

Je vous mets le texte, d’abord.

The biggest not-to-worry argument of all: On all Macs manufactured after 1992, the contents of a RAM disk don’t disappear when you restart the Mac. They vanish if you turn the Mac off, but not when you restart. So, even if you have a system crash, you can just hit the reset switch on your Mac’s case (…), and your Mac will restart with the RAM disk intact.

Mon premier essai a donc été avec un Mac d’avant 1992, un Macintosh IIsi. Et pas de chance : ce modèle de Mac ne supporte pas le RAM Disk du System 7.1. La capture dans ma présentation le montrait bien, d’ailleurs. C’est probablement à cause de la gestion de la mémoire un peu particulière de ce modèle. Il possède 1 Mo de RAM sur la carte mère et cette mémoire sert notamment pour la mémoire vidéo, en plus d’être de la RAM classique.

Pas de RAM Disk

Deuxièmement, un Performa 450 (LC III). Sur ce modèle, ça fonctionne. Une fois le RAM Disk créé, j’ai copié des données sur le RAM Disk et elles restent accessibles dans la plupart des cas. Vous pouvez redémarrer manuellement (en utilisant les menus) ou forcer un redémarrage après un plantage de System 7 (control + command + power) et le contenu du RAM Disk reste disponible. Pratique. Et sur ce modèle qui ne supporte pas l’allumage au clavier, vous pouvez même choisir Eteindre dans les menus, et tant que le Mac n’a pas été réellement éteint, un redémarrage garde le RAM Disk intact. En réalité, le System 7.1 du Mac en question triche un peu : quand on éteint le Mac avec le menu, il sauve le contenu du RAM Disk dans un fichier Persistent RAM Disk, c’est très visible avec la copie à ce moment là. Et donc si vous faites un arrêt propre, le contenu du RAM Disk sera récupéré au démarrage. Par contre, si vous coupez le courant, il est évidemment perdu. A ma connaissance, le seul Mac qui garde le contenu du RAM Disk en mémoire même si le Mac est « éteint », c’est le PowerBook 100.

L’option


On copie les données


Un message d’arrêt très Windows 95

Troisièmement, un PowerBook 180, sorti en 1992. Je n’ai pas de Mac plus vieux pour tester, et la limite indiquée est 1992 sans détails… Comme les autres, il garde les données après un redémarrage manuel et après un reset (avec le bouton à l’arrière). Il faut vraiment une coupure franche pour perdre des données.

Dans les deux cas, il y a tout de même un truc à prendre en compte : un reset de la PRAM va effacer le RAM Disk… en théorie. Plus exactement, par défaut, le RAM Disk sera désactivé par la manipulation, vu qu’elle remet certains paramètres à zéro et que l’activation du RAM Disk en fait partie. Mais si vous le réactivez avec la même taille et que le fichier de sauvegarde est de la partie, les données ne seront pas perdues.

Et enfin, un Power Mac G3. Pourquoi le G3 ? Parce qu’une note d’Apple trouvée dans mes archives indique que ce Power Mac, spécifiquement, ne garde pas le contenu du RAM Disk en mémoire. La raison est technique : le contrôleur mémoire de ce modèle gère la SDRAM (fournie par Apple) et l’EDO (qui n’est pas supportée officiellement) et au redémarrage, le contrôleur tente de vérifier le type de mémoire. Et ce temps de vérification excède le temps de rafraîchissement de la SDRAM… qui perd ses données. En réalité, il y a même un message si vous tentez d’éteindre l’ordinateur (ou redémarrer) sur ce modèle. Et dans les options de RAM Disk, il y a une option qui permet de sauvegarder le contenu du RAM Disk à l’extinction de façon explicite.

Le message


L’option qui sauve le contenu du RAM Disk est explicite ici

Dans tous les cas, la gestion des RAM Disk est donc plutôt bien intégrée dans les Mac. Il n’est pas impossible de perdre des données – une coupure de courant, ça peut arriver – mais si l’OS plante (et franchement, ça arrive, quoi qu’on puisse penser de la stabilité des System et autres Mac OS), le contenu ne devrait pas être perdu si vous effectuez un reset. Enfin, sauf sur les très vieux Mac ou sur les Power Mac G3 Beige…