Changes between Version 11 and Version 12 of AS6-TME-B5


Ignore:
Timestamp:
Feb 19, 2022, 6:26:23 PM (3 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AS6-TME-B5

    v11 v12  
    205205'''
    206206}}}
    207 1. Pour quelle raison, ne sauver que les registres persistants dans le contexte des threads ?
    208 {{{#!protected ------------------------------------------------------------------
    209 '''
    210  *
    211 '''
    212 }}}
    213 1. Quand un thread est élu pour la prem
    214 {{{#!protected ------------------------------------------------------------------
    215 '''
    216  *
    217 '''
    218 }}}
    219 1.
    220 {{{#!protected ------------------------------------------------------------------
    221 '''
    222  *
    223 '''
    224 }}}
    225 1.
     2071. Quand un thread est élu pour la première fois, à la sortie de `thread_load()`, on appelle la fonction `thread_bootstrat()`. Retrouver dans les transparents du cours les étapes qui vont mener à l'exécution de la fonction principale du thread élu, et expliquez-les.
     208{{{#!protected ------------------------------------------------------------------
     209'''
     210 *
     211'''
     212}}}
     2131. Un thread peut perdre le processeur pour 3 raisons (dans la version actuelle du code), quelles sont ces raisons ?
     214{{{#!protected ------------------------------------------------------------------
     215'''
     216 *
     217'''
     218}}}
     2191. Quand un thread **TS** perd le processeur pour une raison X à la date `T`, il entre dans le noyau par kentry, puis il y a une séquence d'appel de fonction jusqu'au `thread_load()` du thread **TE** entrant. Lorsqu'on sort de `thread_load()`, on est dans le nouveau thread **TE**. Plus tard, le thread **TS** sera élu et regagnera le processeur en sortant d'un `thread_load()`, puis on sortira de la séquence des appels qu'il y avait eu à la date `T`. Expliquez, grace à la description de ce comportement, pourquoi on ne sauve pas les registres temporaires dans le contexte des threads.
    226220{{{#!protected ------------------------------------------------------------------
    227221'''