A avènement majeur dans les capacités de calcul est venu lorsque les ingénieurs ont développé des systèmes de multiprogrammation . Systèmes de multiprogrammation permis à de nombreux programmes différents , appelés processus, pour fonctionner sur un système en même temps. Cependant, ces procédés ne pouvaient partager les ressources du système grâce à l'utilisation d'un système de planification qui attribue du temps processeur aux processus . Différents algorithmes ont été développés pour la planification , deux notables étant l'ordonnancement Round- Robin et ordonnancement des priorités . Multithreading et ordonnancement
Les premiers ordinateurs étaient construits les systèmes processus d'exécution des ordres simples. Ensuite, les ingénieurs ont construit des systèmes contenant la mémoire interne accessible par le processeur que plusieurs programmes de magasins en cours d'exécution dans le même temps . Ces systèmes , appelés systèmes multitâches ou de multithreading , forcent le processeur de travailler sur de multiples processus à travers un système connu sous le calendrier . Les horaires de temps de processeur pour chaque processus en cours d'exécution sur la base d'un algorithme. Selon le calendrier , chaque programme accède le processeur dans un ordre particulier . Quand nous pensons programmes s'exécutent en même temps , ils sont vraiment relayaient au niveau du processeur plusieurs fois par seconde.
Round Robin Scheduling
un des premiers algorithmes d'ordonnancement est appelé l'algorithme Round Robin . Cet algorithme énumère les processus en cours et donne à chaque processus une tranche de temps processeur , appelé quanta , d'exécuter des commandes ou des ressources du système. Après l'expiration du temps du processus , les déchargements de processeur ce processus et charge le processus suivant, peu importe si le premier processus se termine ou non. L'algorithme détermine combien de temps chaque processus reçoit et qui traitent peut avoir un impact significatif sur les performances de l'ordinateur.
Priorité Scheduling
Une alternative à l' Round Robin planification est la programmation prioritaire . Ordonnancement de priorité utilise un algorithme d'attribution de priorité pour désigner les processus en fonction de leur importance . Certains algorithmes accorder la priorité en raison de la quantité de temps le processus a eu depuis son dernier tour au niveau du processeur . Les processus sont souvent autorisés à utiliser le processeur jusqu'à ce que leur tâche est terminée. Cela permet de garder des processus importants sur le processeur et permet également de procédés moins importantes de jamais atteindre le processeur .
Round Robin Versus priorité
Il ya certaines situations où chaque algorithme fonctionne meilleur . L'algorithme Round Robin conserve tous les processus en mouvement sur le processeur et ne permet pas un processus de monopoliser les ressources système. Cependant, une mauvaise sélection des quanta peut garder les processus d'obtenir suffisamment de temps pour terminer une tâche , et de réduire ainsi l'efficacité . Les algorithmes de priorité garantissent des processus importants obtiennent plus de temps sur l'ordinateur, mais parfois au détriment des processus moindres .