Noyau de système d'exploitationUn noyau de système d’exploitation, ou simplement noyau, ou kernel en anglais, est une des parties fondamentales de certains systèmes d’exploitation. Il gère les ressources de l’ordinateur et permet aux différents composants — matériels et logiciels — de communiquer entre eux. En tant que partie du système d’exploitation, le noyau fournit des mécanismes d’abstraction du matériel, notamment de la mémoire, du (ou des) processeur(s), et des échanges d’informations entre logiciels et périphériques matériels.
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.
Noyau Linuxvignette|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.
Interrupt latencyIn computing, interrupt latency refers to the delay between the start of an Interrupt Request (IRQ) and the start of the respective Interrupt Service Routine (ISR). For many operating systems, devices are serviced as soon as the device's interrupt handler is executed. Interrupt latency may be affected by microprocessor design, interrupt controllers, interrupt masking, and the operating system's (OS) interrupt handling methods. There is usually a trade-off between interrupt latency, throughput, and processor utilization.
Latence (informatique)En informatique, la latence (ou délai de transit, ou retard) est le délai de transmission dans les communications informatiques (on trouve souvent l’anglicisme lag). Il désigne le temps nécessaire à un paquet de données pour passer de la source à la destination à travers un réseau. À n'importe quel paquet transmis par réseau correspond donc une valeur de latence. Le terme est néanmoins utilisé pour désigner les délais plus longs, perceptibles par les utilisateurs.
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é.
Symmetric multiprocessingUn multiprocesseur symétrique (à mémoire partagée), ou symmetric shared memory multiprocessor (SMP), est une architecture parallèle qui consiste à multiplier les processeurs identiques au sein d'un ordinateur, de manière à augmenter la puissance de calcul, tout en conservant une unique mémoire. Disposer de plusieurs processeurs permet d'exécuter simultanément plusieurs processus du système, utilisateur ou noyau en leur allouant l'un ou l'autre des processeurs disponibles, ce qui augmente la fluidité lors de l'exécution de plusieurs programmes, et permet à un processus d'utiliser plus de ressources de calcul en créant plusieurs threads.
Processus (informatique)Un processus (en anglais, process), en informatique, est un programme en cours d'exécution par un ordinateur. De façon plus précise, il peut être défini comme : un ensemble d'instructions à exécuter, pouvant être dans la mémoire morte, mais le plus souvent chargé depuis la mémoire de masse vers la mémoire vive ; un espace d'adressage en mémoire vive pour stocker la pile, les données de travail ; des ressources permettant des entrées-sorties de données, comme des ports réseau.
Thread (informatique)thumb|Un processus avec deux threads. Un thread ou fil (traduction normalisés par ISO/CEI 2382-7:2000 (autres appellations connues : processus léger, fil d'exécution, fil d'instruction, processus allégé, exétron, tâche, voire unité d'exécution ou unité de traitement) est similaire à un processus car tous deux représentent l'exécution d'un ensemble d'instructions du langage machine d'un processeur. Du point de vue de l'utilisateur, ces exécutions semblent se dérouler en parallèle.
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é.
Windows NTWindows NT (« New technology » ou « nouvelle technologie ») désigne la série de systèmes d'exploitation multitâche préemptif, multi-utilisateur, multiprocesseur, créés par Microsoft et ne reposant pas sur le système historique MS-DOS de Microsoft, contrairement à Windows 1.0, 2, 3.x, 95, 98 et Me. Il a permis à Microsoft et son partenaire Intel d'entrer sur le marché des serveurs, une nouvelle stratégie qui a contribué à la très forte hausse des sociétés de technologie de la seconde partie des années 1990.
Appel systèmeEn informatique, un appel système (c'est-à-dire appel au système [d'exploitation]) (en anglais, system call, abrégé en syscall) désigne le moment où un programme s'interrompt pour demander au système d'exploitation d'accomplir pour lui une certaine tâche. L'expression désigne donc aussi la fonction primitive elle-même fournie par le noyau d'un système d'exploitation. Sont ainsi contrôlées et uniformisées les applications de l'espace utilisateur ; certains droits d'accès peuvent de plus être réservés au noyau.
Anneau de protectionUn anneau de protection (ring en anglais) est l’un des niveaux de privilèges imposés par l’architecture d’un processeur. De nombreuses architectures modernes de processeurs (architectures parmi lesquelles on trouve le populaire Intel x86) incluent une certaine forme de protection en anneau, bien que les logiciels d’exploitation ne l’exploitent pas toujours entièrement. Les rings étaient parmi les concepts les plus révolutionnaires mis en œuvre par le système d’exploitation Multics, un prédécesseur fortement sécurisé de la famille actuelle des systèmes d’exploitation UNIX.
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).
Memory pagingIn computer operating systems, memory paging (or swapping on some Unix-like systems) is a memory management scheme by which a computer stores and retrieves data from secondary storage for use in main memory. In this scheme, the operating system retrieves data from secondary storage in same-size blocks called pages. Paging is an important part of virtual memory implementations in modern operating systems, using secondary storage to let programs exceed the size of available physical memory.
LinuxLinux ou GNU/Linux est une famille de systèmes d'exploitation open source de type Unix fondés sur le noyau Linux créé en 1991 par Linus Torvalds. De nombreuses distributions Linux ont depuis vu le jour et constituent un important vecteur de popularisation du mouvement du logiciel libre. Si, à l'origine, Linux a été développé pour les ordinateurs compatibles PC, il n'a jamais équipé qu'une très faible part des ordinateurs personnels.
VxWorksVxWorks est un système d'exploitation temps réel multitâche, généralement utilisé dans les systèmes embarqués. Ce système d'exploitation propriétaire, développé par la firme Wind River (acquise par Intel en 2009), a été employé par la NASA pour les missions spatiales du programme Discovery, Mars Pathfinder, Stardust, Messenger, Dawn, les rovers martiens (Spirit, Opportunity, Curiosity et Perseverance) et la sonde Mars Reconnaissance Orbiter. Il a également été utilisé par l'Agence spatiale européenne sur le satellite PROBA-1.
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.
Grappe de serveursOn parle de grappe de serveurs, de cluster, de groupement de serveurs ou de ferme de calcul (computer cluster en anglais) pour désigner des techniques consistant à regrouper plusieurs ordinateurs indépendants appelés nœuds (node en anglais), afin de permettre une gestion globale et de dépasser les limitations d'un ordinateur pour : augmenter la disponibilité ; faciliter la montée en charge ; permettre une répartition de la charge ; faciliter la gestion des ressources (processeur, mémoire vive, disques durs,
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.