Résumé
thumb|upright=1.5|Exemple de planification de tâches en round-robin Le Round-robin (ou tourniquet) est un algorithme d'ordonnancement courant dans les systèmes d'exploitation adapté aux systèmes travaillant en temps partagés. Une petite unité de temps, appelé quantum de temps, est définie. La file d'attente est gérée comme une file circulaire. L'ordonnanceur parcourt cette file et alloue un temps processeur à chacun des processus pour un intervalle de temps de l'ordre d'un quantum au maximum. La performance de round-robin dépend fortement du choix du quantum de base. Le système du tourniquet prend son nom du jeu de parcs pour enfants. L'image pour l'algorithme est que chaque processus est assis sur le tourniquet et, chacun à son tour, ne fait que passer devant le processeur pendant un laps de temps fini. Formellement on a : un nouveau processus est ajouté en fin de liste (pour ne pas doubler des processus déjà existants, ce qui pourrait créer une possibilité de famine) ; l'utilisation par un processus du processeur ne peut pas dépasser un certain quantum de temps ce qui nous assure de nouveau qu'il n'y aura pas de famine ; l'attente maximum est donnée par la multiplication du nombre de processus en cours multiplié par le quantum de temps accordé à chaque processus (N.B. : Chaque processus dispose du même quantum de temps que les autres) ; un processus qui vient de finir d'utiliser le processeur (quantum écoulé) est placé en fin de liste ; un processus qui a terminé son travail est sorti de la liste, par conséquent le temps d'attente pour les autres processus diminue. alt=Exemple de traitement de 6 tâches arrivant à des moments différents et avec des temps d'exécution variés, réalisé par un ordonnanceur préemptif utilisant la méthode du tourniquet (Round-Robin) avec un quantum de temps de 1ms.|vignette|Exemple de traitement de 6 tâches arrivant à des moments différents et avec des temps d'exécution variés, réalisé par un ordonnanceur préemptif utilisant la méthode du tourniquet (Round-Robin) avec un quantum de temps de 1ms.
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Séances de cours associées (16)
Systèmes de contrôle en temps réel : Déterminisme et automatisation
Explore les systèmes de contrôle en temps réel, le déterminisme et l'automatisation dans les systèmes critiques, en soulignant l'importance de respecter les contraintes de temps pour la sécurité et l'efficacité.
Bluetooth vs BLE
Comparer Bluetooth avec BLE, fréquence de couverture, puissance, portée, brouillage et programmation dans les réseaux sans fil.
Utilisation des grappes SCITAS
Couvre la configuration et l'utilisation des grappes informatiques à usage général à l'EPFL.
Afficher plus
Publications associées (67)
Concepts associés (4)
Multitâche préemptif
En informatique, le multitâche préemptif désigne la capacité d'un système d'exploitation à exécuter ou arrêter une tâche planifiée en cours. Un ordonnanceur préemptif présente l'avantage d'une meilleure réactivité du système et de son évolution. Les différentes tâches peuvent être exécutées en parallèle, à la fois par un changement de contexte très rapide et par la répartition sur différents processeur. Le seul inconvénient que l'on pourrait donner à un système multitâche préemptif vient des situations de compétition, en général relativement limité.
Network scheduler
A network scheduler, also called packet scheduler, queueing discipline (qdisc) or queueing algorithm, is an arbiter on a node in a packet switching communication network. It manages the sequence of network packets in the transmit and receive queues of the protocol stack and network interface controller. There are several network schedulers available for the different operating systems, that implement many of the existing network scheduling algorithms. The network scheduler logic decides which network packet to forward next.
Noyau Linux
vignette|upright=2|Couches de fonctions du Noyau Linux Le noyau Linux est un noyau de système d'exploitation de type UNIX. Il est utilisé dans plusieurs systèmes d'exploitation dont notamment GNU/Linux (couramment appelé « Linux ») et Android. Le noyau Linux est un logiciel partiellement libre (contenant des BLOB et des modules non-libre - consultez Linux-libre) développé essentiellement en langage C par des milliers de bénévoles et salariés collaborant sur Internet.
Afficher plus