Ordonnancement dans les systèmes d'exploitationDans les systèmes d'exploitation, l’ordonnanceur est le composant du noyau du système d'exploitation choisissant l'ordre d'exécution des processus sur les processeurs d'un ordinateur. En anglais, l'ordonnanceur est appelé scheduler. Un processus a besoin de la ressource processeur pour exécuter des calculs; il l'abandonne quand se produit une interruption, etc. De nombreux anciens processeurs ne peuvent effectuer qu'un traitement à la fois.
Rate-monotonic schedulingL'ordonnancement à taux monotone (en anglais, rate-monotonic scheduling) est un algorithme d'ordonnancement temps réel en ligne à priorité constante (statique). Il attribue la priorité la plus forte à la tâche qui possède la plus petite période. RMS est optimal dans le cadre d'un système de tâches périodiques, synchrones, indépendantes et à échéance sur requête avec un ordonnanceur préemptif. De ce fait, il n'est généralement utilisé que pour ordonnancer des tâches vérifiant ces propriétés.
Earliest deadline first schedulingEarliest deadline first scheduling (« échéance proche = préparation en premier » en anglais) est un algorithme d'ordonnancement préemptif, à priorité dynamique, utilisé dans les systèmes temps réel. Il attribue une priorité à chaque requête en fonction de l'échéance de cette dernière, les tâches dont l’échéance est proche recevant la priorité la plus élevée. Cet algorithme est optimal pour tous types de système de tâches. Cependant, il est assez difficile à mettre en œuvre et est de ce fait peu utilisé.
Multitâche préemptifEn 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é.
Round-robin (informatique)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.
Commutation de contexteUne commutation de contexte (context switch) en informatique consiste à sauvegarder l'état d'un processus ou d'un thread pour restaurer à la place celui d'un autre dans le cadre de l'ordonnancement d'un système d'exploitation multitâche. Elle peut être plus ou moins coûteuse en temps processeur suivant l'architecture matérielle, le système d'exploitation, ou le type de processus utilisé. En effet, dans le cas des processus lourds elle nécessite toujours un changement d’espace d’adressage, alors que les processus légers de même père partagent ce dernier, qui n'a alors pas besoin d'être rechargé.
Système d'exploitationEn informatique, un système d'exploitation (souvent appelé OS — de l'anglais operating system — ou parfois SE — en français) est un ensemble de programmes qui dirige l'utilisation des ressources d'un ordinateur par des logiciels applicatifs. Il reçoit des demandes d'utilisation des ressources de l'ordinateur de la part des logiciels applicatifs. Le système d'exploitation gère les demandes ainsi que les ressources nécessaires évitant les interférences entre les logiciels.
Temps CPUdroite|vignette|450x450px|Temps CPU sur un système multitâche à CPU unique Le temps CPU (ou temps de traitement) est la durée pendant laquelle une unité centrale de traitement (CPU) est utilisée pour traiter les instructions d'un programme informatique ou d'un système d'exploitation, par opposition au temps écoulé, qui comprend par exemple l'attente d'une entrée/sortie (E/S) ou l'activation du mode à faible consommation («inactif»). Le temps CPU est mesuré en tics d'horloge ou en secondes.
Réponse impulsionnellevignette|300px|right|Réponses impulsionnelles d'un système audio simple (de haut en bas) : impulsion originale à l'entrée, réponse après amplification des hautes fréquences et réponse après amplification des basses fréquences. En traitement du signal, la réponse impulsionnelle d'un processus est le signal de sortie qui est obtenu lorsque l'entrée reçoit une impulsion, c'est-à-dire une variation soudaine et brève du signal.
Réponse en fréquenceLa réponse en fréquence est la mesure de la réponse de tout système (mécanique, électrique, électronique, optique, etc.) à un signal de fréquence variable (mais d'amplitude constante) à son entrée. Dans la gamme des fréquences audibles, la réponse en fréquence intéresse habituellement les amplificateurs électroniques, les microphones et les haut-parleurs. La réponse du spectre radioélectrique peut faire référence aux mesures de câbles coaxiaux, aux câbles de catégorie 6 et aux dispositifs de mélangeur vidéo sans fil.
Système d'exploitation temps réelUn système d'exploitation temps réel, en anglais RTOS pour real-time operating system (généralement prononcé à l’anglaise, en séparant le R de l’acronyme : Are-toss), est un système d'exploitation pour lequel le temps maximum entre un stimulus d'entrée et une réponse de sortie est précisément déterminé. Ces systèmes d'exploitation multitâches sont destinés à des applications temps réel : systèmes embarqués (thermostats programmables, contrôleurs électroménagers, téléphones mobiles, robots industriels, vaisseaux spatiaux, systèmes de contrôle commande industriel, matériel de recherche scientifique).
Réponse indicielleEn automatique la réponse indicielle est la réponse d'un système dynamique à une fonction marche de Heaviside communément appelée échelon. Si le système est un système linéaire invariant (SLI) à temps continu ou discret, alors la réponse indicielle est définie par les relations respectives suivantes : Lorsque le système est asymptotiquement stable, la réponse indicielle converge vers une valeur limite (asymptote horizontale) appelée valeur stationnaire ou finale.
History of operating systemsComputer operating systems (OSes) provide a set of functions needed and used by most application programs on a computer, and the links needed to control and synchronize computer hardware. On the first computers, with no operating system, every program needed the full hardware specification to run correctly and perform standard tasks, and its own drivers for peripheral devices like printers and punched paper card readers. The growing complexity of hardware and application programs eventually made operating systems a necessity for everyday use.
Tableau synoptique des systèmes d'exploitationThese tables provide a comparison of operating systems, of computer devices, as listing general and technical information for a number of widely used and currently available PC or handheld (including smartphone and tablet computer) operating systems. The article "Usage share of operating systems" provides a broader, and more general, comparison of operating systems that includes servers, mainframes and supercomputers.
Constante de tempsEn physique, une constante de temps est une grandeur, homogène à un temps, caractérisant la rapidité de l'évolution d'une grandeur physique dans le temps , particulièrement lorsque cette évolution est exponentielle . La constante de temps est liée à l'étude de la réponse impulsionnelle d'un système. La durée nécessaire au retour à l'équilibre après la disparition d'une perturbation est appelée temps de relaxation.
Traitement par lotsEn informatique, un traitement par lots (batch processing en anglais) est un enchaînement automatique d'une suite de commandes (processus) sur un ordinateur sans intervention d'un opérateur. Une fois que ce processus est terminé (quel que soit le résultat), l'ordinateur traite le lot suivant. Le traitement des lots se termine une fois que tous les lots de la pile ont été exécutés. Le déclenchement de ces traitements peut ainsi être automatisé, par exemple grâce au programme cron dans un système Unix.
Network schedulerA 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.
Ordonnancement de travaux informatiquesIl s'agit de l'automatisation de traitement d'une tâche informatique. Concerne exclusivement la manière de lancer des traitements ("batch") sur un ou plusieurs composants de son système d'information au moyen de progiciels spécifiques. Ces progiciels allient la théorie de l'ordonnancement avec des techniques propres à l'informatique (queues de traitements, gestion de fichiers, équilibrage de charge...). Dans la littérature, est généralement associé au mode dit "évènementiel".
Système temps réelEn informatique, on parle d'un système temps réel lorsque ce système est capable de contrôler (ou piloter) un procédé physique à une vitesse adaptée à l'évolution du procédé contrôlé. Les systèmes informatiques temps réel se différencient des autres systèmes informatiques par la prise en compte de contraintes temporelles dont le respect est aussi important que l'exactitude du résultat, autrement dit le système ne doit pas simplement délivrer des résultats exacts, il doit les délivrer dans des délais imposés.
Système d'exploitation embarquéUn système d'exploitation embarqué est un système d'exploitation pouvant être installé sur un système embarqué. Ce système d'exploitation est conçu avec des spécificités à gérer afin de répondre à des besoins spécifiques au type de système embarqué. Un système d'exploitation est un programme qui gère le matériel. Il sert d'intermédiaire entre l'application logicielle et le matériel informatique (périphériques, capteurs, moteurs...).