Section courante

A propos

Section administrative du site

La mémoire

Cette base de connaissance est relié au question en relation avec le Turbo Pascal et la mémoire

Comment définir la mémoire de tas lors de l'exécution d'un processus enfant ?

La meilleure façon de procéder est probablement de procéder par essais et erreurs. Définissez le maximum de mémoire de tas sur une valeur élevée et exécutez le programme. S'il manque de mémoire, divisez le maximum par 2, et ainsi de suite, jusqu'à ce que les programmes parent et enfant aient suffisamment de mémoire. La même chose peut être faite avec le minimum de mémoire de tas.

Quelles fonctions DOS puis-je utiliser pour récupérer de la mémoire sous DOS ?

Vous devez essentiellement écrire vos propres routines GetMem et FreeMem. GetMem appellerait la fonction $48 du DOS et FreeMem appellerait la fonction $49 du DOS.

Combien de blocs de contrôle de mémoire un programme Turbo Pascal utilise-t-il ?

Un seul.

Est-ce que Turbo Pascal 5.0+ prend en charge EMS ?

Oui. Turbo Pascal 5.0+ utilisera jusqu'à 64 Ko (si sélectionné dans TINST) d'EMS pour entreposer le tampon d'édition. De plus, vous pouvez demander à l'unité Overlay de placer vos unités superposées sur EMS. Enfin, un programme EMS.PAS sur le disque de distribution vous montre comment accéder à la mémoire EMS.

La compilation sur disque avec mon maximum de mémoire de tas défini sur 0 crée toujours de l'espace dans la mémoire de tas lors de l'exécution du fichier .EXE. Pourquoi ?

Cela est lié à la façon dont DOS alloue la mémoire pour les fichiers .EXE en blocs de 512 octets, plutôt qu'en blocs de 16 octets. En raison de l'allocation de DOS, vous obtenez toujours 0 à 496 octets de plus que ce que vous demandez.

Comment déterminer la quantité de pile et de la mémoire de tas dont vous avez besoin pour donner un TSR, cela dépend-il du nombre de variables ou de la longueur de votre code ?

Les trois exigences sont basées sur les éléments suivants :



Dernière mise à jour : Jeudi, le 8 août 2024