Pile d'exécution

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 où chaque fonction active doit retourner à la fin de son exécution. (Les fonctions actives sont celles qui ont été appelées, mais n’ont 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 où poursuivre l’exécution à la fin de chacune de ses exécutions. Cela est fait par chacun des appels à la fonction DessineLigne qui place l’adresse de l'instruction suivant l'appel (l’adresse de retour) sur la pile d’exécution avant de transférer le contrôle de l’exé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 d’exécution et sont récupérées une à une lors de la fin de l’exécution des fonctions. Si l’accumulation 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 d’emmagasiner des adresses de retour, la pile d’exécution emmagasine aussi d’autres 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. D’autre part, la plupart des langages d'assemblage requièrent des programmeurs une connaissance et une manipulation complexe de la pile d’exécution. Les détails de la structure et du contenu de la pile d’exécution dans un langage de programmation dépendent du compilateur, du système d'exploitation et du jeu d'instructions de l’ordinateur.



Wikimedia Foundation. 2010.

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

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

Regardez d'autres dictionnaires:

  • Débordement de la pile d’exécution — Dépassement de pile En informatique, un dépassement de pile ou débordement de pile (en anglais, stack overflow) est un bogue causé par un processus qui, lors de l écriture dans une pile, écrit à l extérieur de l espace alloué à la pile, écrasant… …   Wikipédia en Français

  • Dépassement de la pile d’exécution — Dépassement de pile En informatique, un dépassement de pile ou débordement de pile (en anglais, stack overflow) est un bogue causé par un processus qui, lors de l écriture dans une pile, écrit à l extérieur de l espace alloué à la pile, écrasant… …   Wikipédia en Français

  • 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… …   Wikipédia en Français

  • Execution by burning — has a long history as a method of punishment for crimes such as treason, heresy and witchcraft (burning, however, was actually less common than hanging, pressing, or drowning as a punishment for witchcraft). This method of execution fell into… …   Wikipedia

  • Exécution spéculative — En informatique, L exécution spéculative correspond au lancement anticipé d une instruction, c est à dire sans être certain que celle ci ait réellement besoin d être exécutée. Types Généralement, on peut distinguer trois type d instructions et de …   Wikipédia en Français

  • Execution (informatique) — Instruction machine Pour les articles homonymes, voir Instruction. En informatique, une instruction machine est une opération élémentaire qu un programme demande à un processeur d effectuer. C est l ordre le plus basique que peut comprendre un… …   Wikipédia en Français

  • Exécution (informatique) — Instruction machine Pour les articles homonymes, voir Instruction. En informatique, une instruction machine est une opération élémentaire qu un programme demande à un processeur d effectuer. C est l ordre le plus basique que peut comprendre un… …   Wikipédia en Français

  • Éxécution (Informatique) — Instruction machine Pour les articles homonymes, voir Instruction. En informatique, une instruction machine est une opération élémentaire qu un programme demande à un processeur d effectuer. C est l ordre le plus basique que peut comprendre un… …   Wikipédia en Français

  • Éxécution informatique — Instruction machine Pour les articles homonymes, voir Instruction. En informatique, une instruction machine est une opération élémentaire qu un programme demande à un processeur d effectuer. C est l ordre le plus basique que peut comprendre un… …   Wikipédia en Français

  • Dépassement de pile — En informatique, un dépassement de pile ou débordement de pile (en anglais, stack overflow) est un bug causé par un processus qui, lors de l écriture dans une pile, écrit à l extérieur de l espace alloué à la pile, écrasant ainsi des informations …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”