Changes between Version 20 and Version 21 of AS6-TME-B5
- Timestamp:
- Feb 21, 2022, 10:32:41 AM (3 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AS6-TME-B5
v20 v21 139 139 {{{#!protected ------------------------------------------------------------------ 140 140 ''' 141 * Alors non, il faut vraiment faire attention au vocabulaire. Le contexte d'un thread et le contexte d'une fonction sont deux concepts très différent . Cela signifie que la question ''Qu'est-ce qu'un contexte ?'' n'a pas une seule réponse et pour être précis, il faut demander ''contexte de quoi ?''.141 * Alors non, il faut vraiment faire attention au vocabulaire. Le contexte d'un thread et le contexte d'une fonction sont deux concepts très différents. Cela signifie que la question ''Qu'est-ce qu'un contexte ?'' n'a pas une seule réponse et pour être précis, il faut demander ''contexte de quoi ?''. 142 142 * Le contexte d'une fonction est un segment d'adresse dans la pile d'exécution, dans lequel la fonction 143 143 * sauvegarde la valeur des registres persistants afin des restaurer avant de retourner dans la fonction appelante ; 144 * alloue ses variables locales 144 * alloue ses variables locales ; 145 145 * alloue la place pour les arguments des fonctions qu'elle appelle. 146 147 146 * Une fonction accède exclusivement à son propre contexte et à la partie des arguments du contexte de la fonction appelante. 148 * 147 * Le contexte d'un thread, c'est l'état des registres du processeur pendant que le thread s'exécute. Parmi les registres, il y a le registre `PC` (Program Counter) qui pointe vers l'instruction en cours d'exécution, le registre `SP` qui pointe sur la dernière case occupée dans la pile d'exécution du thread, le registre `CO_SR` (Status Register) qui indique essentiellement le mode d'exécution du MIPS et il y a tous les registres de travail du thread. 149 148 ''' 150 149 }}}