maxmem permet de connaître la taille maximum de mémoire utilisable par l'application et de modifier ce paramètre.
# On sauvegarde la valeur actuelle
[L]SVGMEM = [S]maxmem
# On met la valeur maximale
[S]maxmem = 9999
maxmem est une variable système Adonix de type Integer, qui fixe la taille maximum en kilo-octets que peut prendre l'application en mémoire. Son affectation permet de modifier ce paramètre.
maxmem peut prendre les valeurs de 0 à 2097152 (soit 2Go), toutefois un minimum de 1024 est requis pour lancer une application.
maxmem est initialisée à 128 par Adonix.
La place prise par les messages applicatifs ([S]adxmbm) et celle occupée par les traitements gardés en mémoire ([S]adxmpr) sont à prendre en compte dans le calcul de [S]maxmem.
maxmem est habituellement postionnée par un des traitements de nom "APL.ini" qui sont lancés au démarrage de l'application, toutefois sa modification sera prise en compte aussitôt. En cours de cession, on ne peut qu'augmenter maxmem. Si on essaie de la diminuer, une erreur n 50 (ERDOM) sera générée.
Au cours de l'utilisation d'une application, la taille mémoire qu'elle occupe tend à grossir. Certaines configurations de système d'exploitation limite la taille maximum de la mémoire que peut prendre un processus en mémoire. Dans ce cas Unix génère une erreur si le processus tente de la dépasser. Pour prévenir de tels incidents maxmem permet de limiter la taille prise. Quand cette limite est atteinte une erreur PLUMEM ( "Plus de mémoire disponible" ) est générée et l'utilisateur devra quitter son application.
La limitation par le système d'exploitation est surtout conçue pour arrêter un processus qui bouclerait accidentellement en allocation de mémoire. On peut s'affranchir de cette limite si on n'utilise que des logiciels du commerce.