Vieux Geek, épisode 320 : QEMM, le gestionnaire de mémoire vive sous MS-DOS.

J’ai déjà eu l’occasion de parler des optimiseurs de mémoire vive qui compressait les données en mémoire, histoire d’en maximiser l’utilisation. C’était le cas en novembre 2019 avec Magnaram de Quaterdeck.

Mais ce n’était pas le coup d’essai de Quaterdeck dans le domaine. Depuis 1990, il proposait un outil pour optimiser l’utilisation de la mémoire vive avec un outil du nom de Quaterdeck. Si la dernière version de l’outil, la 9 rajoutait le support de MS-Windows 95, la dernière version à fonctionner uniquement sous MS-DOS fut la 8, sortie en 1995 qui contenait aussi une version de l’outil Magnaram.

Quand on jouait sous MS-DOS, avant l’arrivée d’outils comme DOS4GW pour gérer la mémoire vive directement, il fallait jongler avec les fichiers config.sys et autoexec.bat pour coller aux pré-requis en terme de mémoire conventionnelle (les 640 premiers Ko), la mémoire UMA (qui contenait les 384 Ko nécessaire pour atteindre le premier Mo), la mémoire étendue, etc…

On pouvait utiliser des outils basiques comme memmaker fournit avec MS-DOS, mais on arrivait rapidement à des limites. Memmaker était utilisé faute de mieux.

C’est ainsi que Quartedeck proposa QEMM 5.0 en 1990 (où sont passées les versions 1 à 4 ?) pour traiter cela un peu mieux.

Vous avez pu le voir, sur un PC avec MS-DOS bien chargé (pilote pour la souris, la carte SoundBlaster et pour le lecteur de CD), QEMM arrivait à des résultats qui explosait en vol ceux proposés par Memmaker fourni par défaut avec MS-DOS.

Ce genre d’outils finit par perdre de l’importance dès 1993-1994 quand les dos extenders – comme dos4gw – permettaient de gérer la mémoire vive en un seul bloc. C’est ainsi que les développeurs de Doom, Doom 2, Heretic, Hexen ou encore Duke Nukem 3D se simplifiaient la vie.

De nos jours, avec des outils comme Dosbox-X, la configuration mémoire est automatisée et ne nécessite plus de se prendre la tête pour lancer le moindre jeu un peu capricieux.

Même si j’aime la rétro-informatique, je ne suis pas franchement nostalgique de cette période où il fallait gérer la mémoire à la mimine pour qu’un jeu daigne se lancer.

7 réflexions sur « Vieux Geek, épisode 320 : QEMM, le gestionnaire de mémoire vive sous MS-DOS. »

  1. Salut Fred,

    aujourd’hui Linux a zram: https://www.kernel.org/doc/html/latest/admin-guide/blockdev/zram.html utilisé dans Slint pour avoir un espace d’échange en mémoire vive en plus de celui sur disque, avec zstd comme compresseur/décompresseur. Je suis impatient d’essayer le noyau 5.16 car zstd y aura des performances bien supérieures. J’envisage d’utiliser zstd plus largement: aussi pour les noyaux et initrd, pour les paquets en remplacement de xz et pour /tmp en tmpfs pour qui veut (à condition de bien régler les priorités entre l’espace d’échange et /tmp). Autre cas d’utilisation, les logs avec log2ram d’Azlux: https://github.com/azlux/log2ram.

  2. Haaa le config.sys-autoexec.bat et la configuration de la carte son.
    Et quand il y avait un lecteur de DR en plus ça devenait sport.

    Et quand pour 2 petits Ko utilisés en trop ton jeu ne démarrait pas…. tu te rabattait sur ce bon vieux tetris 3D en vue subjective par le haut (souvent le seul truc qui arrivait à démarrer)

  3. Oh oui, j’en ai passé des heures à configurer des fichiers config.sys et autoexec.bat. Aussi bien pour les disquettes que pour les disques durs… Même avec Windows 3.11 quand il fallait encore charger les pilotes de la carte réseau Token Ring et les modules NetWare avant le démarrage de Windows :’D
    Que de souvenirs, quelle merde ce DOS et cette p*t*n d’architecture mémoire avec la fameuse « barrière » des 640Ko . Comme tu dis, heureusement que ce temps est révolu

Les commentaires sont fermés.