4MMPS Sleep : Différence entre versions

De Ensiwiki
Aller à : navigation, rechercher
 
Ligne 1 : Ligne 1 :
 +
<!--
 
{{Maintenance uniquement par enseignants}}
 
{{Maintenance uniquement par enseignants}}
  
Ligne 57 : Ligne 58 :
  
 
Vous testerez votre implantation avec les 4 processus développés plus haut, en remplaçant les <tt>hlt</tt> par des appels à la fonction d'endormissement (vous devez aussi enlever les <tt>sti()</tt> et <tt>cli()</tt>, car la fonction d'endormissement fait partie du code noyau qui doit toujours être appelé avec les interruptions masquées) : par exemple, <tt>proc1</tt> peut s'endormir 2 secondes, <tt>proc2</tt> 3 secondes et <tt>proc3</tt> 5 secondes à chaque tour de boucle, pour générer des traces de périodicités différentes. Le processus <tt>idle</tt> n'a lui bien sûr pas le droit de s'endormir, sinon on risquerait de se retrouver dans un système sans aucun processus activable !
 
Vous testerez votre implantation avec les 4 processus développés plus haut, en remplaçant les <tt>hlt</tt> par des appels à la fonction d'endormissement (vous devez aussi enlever les <tt>sti()</tt> et <tt>cli()</tt>, car la fonction d'endormissement fait partie du code noyau qui doit toujours être appelé avec les interruptions masquées) : par exemple, <tt>proc1</tt> peut s'endormir 2 secondes, <tt>proc2</tt> 3 secondes et <tt>proc3</tt> 5 secondes à chaque tour de boucle, pour générer des traces de périodicités différentes. Le processus <tt>idle</tt> n'a lui bien sûr pas le droit de s'endormir, sinon on risquerait de se retrouver dans un système sans aucun processus activable !
 +
-->

Version actuelle en date du 16 septembre 2019 à 17:26