Systèmes embarqués et firmware

Dans un RTOS préemptif, pendant l'exécution d'une tâche de faible priorité, une tâche de haute priorité reçoit les données qu'elle attendait et devient exécutable. Que se passe-t-il généralement ?

  1. ALa tâche de haute priorité attend que la tâche de faible priorité se termine d'elle-même
  2. BLes deux tâches s'arrêtent et le microcontrôleur redémarre
  3. CLa tâche de faible priorité est interrompue et l'on bascule immédiatement vers la tâche de haute priorité
Afficher la réponse et l'explication

Réponse : C. La tâche de faible priorité est interrompue et l'on bascule immédiatement vers la tâche de haute priorité

Dans un RTOS préemptif, lorsqu'une tâche plus prioritaire devient exécutable, par exemple à la suite d'une interruption, le noyau sauvegarde l'état de la tâche de faible priorité en cours, l'arrête et bascule vers la tâche prioritaire. Lorsque celle-ci se termine ou passe en attente, la tâche de faible priorité reprend là où elle s'était arrêtée. Le temps de réponse des traitements prioritaires devient ainsi court et prévisible.

S'entraîner sur ce thème Retour au thème

Autres questions sur Systèmes embarqués et firmware

  1. Quelle description de l'inversion de priorité dans un RTOS est correcte ?
  2. Quel est le principe correct de « l'héritage de priorité », utilisé pour prévenir l'inversion de priorité ?
  3. Dans un RTOS, quel est l'avantage d'utiliser une file (file de messages) pour transmettre des données de la tâche de lecture des capteurs à la tâche d'affichage ?
  4. Quelle différence entre temps réel dur et temps réel souple est correcte ?
  5. Pourquoi est-il déconseillé de réarmer (« kicker ») inconditionnellement le chien de garde dans le gestionnaire d'interruption de temporisateur appelé toutes les 1 ms ?

Comparatifs sur ce thème