Pile d'appel

Pile d'appel

Pile d'exécution

En informatique, la pile d'exécution (souvent abbréviée en la pile ; en anglais, call stack) est une structure de données de type pile qui sert à enregistrer des informations au sujet des fonctions actives dans un programme informatique.

Une pile d'exécution est utilisée pour emmagasiner plusieurs valeurs, mais sa principale utilisation est de garder la trace de l'endroit chaque fonction active doit retourner à la fin de son exécution. (Les fonctions actives sont celles qui ont été appelées, mais nont pas encore terminé leur exécution.) Si, par exemple, un programme DessineCarré appelle une fonction DessineLigne à quatre endroits différents, la fonction DessineLigne doit avoir un moyen de savoir poursuivre lexécution à la fin de chacune de ses exécutions. Cela est fait par chacun des appels à la fonction DessineLigne qui place ladresse de l'instruction suivant l'appel (ladresse de retour) sur la pile dexécution avant de transférer le contrôle de lexécution à la fonction DessineLigne.

Étant donné que la pile d'exécution est une pile, l'appelant pousse l'adresse de retour sur la pile, et la fonction appelée, quand elle se termine, récupère l'adresse de retour au sommet de la pile d'exécution (et y transfère le contrôle). Si une fonction appelée appelle une autre fonction, elle poussera son adresse de retour sur la pile d'exécution. Les adresses de retour s'accumulent donc sur la pile dexécution et sont récupérées une à une lors de la fin de lexécution des fonctions. Si laccumulation des adresses de retour consomme tout l'espace alloué à la pile d'exécution, un message d'erreur appelé un dépassement de pile se produit.

En plus demmagasiner des adresses de retour, la pile dexécution emmagasine aussi dautres valeurs associées comme les variables locales de la fonction, les paramètres de la fonction, etc.

Dans les langages de programmation de haut niveau, les spécificités de la pile d'exécution sont cachées au programmeur. Le programmeur a uniquement accès aux appels de fonctions et aux paramètres associés, et non au contenu de la pile elle-même. Dautre part, la plupart des langages d'assemblage requièrent des programmeurs une connaissance et une manipulation complexe de la pile dexécution. Les détails de la structure et du contenu de la pile dexécution dans un langage de programmation dépendent du compilateur, du système d'exploitation et du jeu d'instructions de lordinateur.


  • Portail de la programmation informatique Portail de la programmation informatique
Ce document provient de « Pile d%27ex%C3%A9cution ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Pile d'appel de Wikipédia en français (auteurs)

Игры ⚽ Поможем решить контрольную работу

Regardez d'autres dictionnaires:

  • Pile (informatique) — Pour les articles homonymes, voir pile. Une pile est gérée en Last in, first out. En informatique, une pile (en anglais …   Wikipédia en Français

  • Pile d'exécution — En informatique, la pile d exécution (souvent abbréviée en la pile ; en anglais, call stack) est une structure de données de type pile qui sert à enregistrer des informations au sujet des fonctions actives dans un programme informatique. Une …   Wikipédia en Français

  • Appel de procédure — Procédure (informatique) Pour les articles homonymes, voir Procédure. En programmation informatique, une procédure, aussi appelée routine ou sous routine, est une fonction qui ne renvoie pas de résultat. On peut cependant remarquer que sous cette …   Wikipédia en Français

  • Gestion d'exceptions — Système de gestion d exceptions Dans le contexte des langages de programmation fonctionnels et impératifs, un système de gestion d exceptions ou SGE permet de gérer les conditions exceptionnelles pendant l exécution du programme. Lorsqu une… …   Wikipédia en Français

  • Systeme de gestion d'exceptions — Système de gestion d exceptions Dans le contexte des langages de programmation fonctionnels et impératifs, un système de gestion d exceptions ou SGE permet de gérer les conditions exceptionnelles pendant l exécution du programme. Lorsqu une… …   Wikipédia en Français

  • Système de gestion d'exceptions — Dans le contexte des langages de programmation fonctionnels et impératifs, un système de gestion d exceptions ou SGE permet de gérer les conditions exceptionnelles pendant l exécution du programme. Lorsqu une exception se produit, l exécution… …   Wikipédia en Français

  • PAX — Pour les articles homonymes, voir Pax. PaX a sa propre version de la mascotte de Linux, Tux PaX est un patch de sécurité pour le …   Wikipédia en Français

  • PaX — Pour les articles homonymes, voir Pax. PaX a sa propre version de la mascotte de Linux, Tux PaX est un correctif (patch) de sécurité pour le noyau Linux cr …   Wikipédia en Français

  • SNUSP — (un acronyme récursif signifiant SNUSP s Not Unix, but Structured PATH) est un langage de programmation exotique issu de la transformation du Brainfuck en un langage à deux dimensions, inspiré d un langage appelé PATH[réf. nécessaire]. Le… …   Wikipédia en Français

  • Hello World — Pour les articles homonymes, voir Hello (homonymie). hello world (traduit littéralement en français par « bonjour le monde ») sont les mots traditionnellement écrits par un programme informatique simple dont le but est de faire la… …   Wikipédia en Français

Share the article and excerpts

Direct link
https://fr-academic.com/dic.nsf/frwiki/1338363 Do a right-click on the link above
and select “Copy Link”