Noyau de système d'exploitation

Un noyau est la partie centrale d'un système d'exploitation. Il gère les opérations de l'ordinateur et du matériel, notamment la mémoire et le temps processeur.

Il existe cinq types de noyaux :

  • Un micro-noyau, qui ne contient que des fonctionnalités de base ;
  • Un noyau monolithique, qui contient de nombreux pilotes de périphériques.
  • Noyau hybride
  • Exo Kernel
  • Nano noyau

Un utilisateur d'ordinateur n'interagit jamais directement avec le noyau. Il fonctionne en coulisse et ne peut être vu, sauf pour les journaux de texte qu'il imprime.

Montre le travail d'un noyau dans un ordinateurZoom
Montre le travail d'un noyau dans un ordinateur

Opérations du noyau

Le noyau est la partie la plus fondamentale d'un système d'exploitation. Il peut être considéré comme le programme qui contrôle tous les autres programmes de l'ordinateur. Lorsque l'ordinateur démarre, il passe par certaines fonctions d'initialisation (amorçage), telles que la vérification de la mémoire. Il est responsable de l'attribution et de la désattribution de l'espace mémoire qui permet aux logiciels de fonctionner.

Le noyau fournit des services pour que les programmes puissent demander l'utilisation de la carte réseau, du disque ou d'autres éléments du matériel. Le noyau transmet la demande à des programmes spéciaux appelés pilotes de périphériques qui contrôlent le matériel. Il gère également le système de fichiers et définit des interruptions pour le CPU afin de permettre le multitâche. De nombreux noyaux sont également chargés de veiller à ce que les programmes défectueux n'interfèrent pas avec le fonctionnement des autres en refusant l'accès à la mémoire qui ne leur a pas été allouée et en limitant le temps CPU qu'ils peuvent consommer. C'est le cœur du système d'exploitation.

Micro-noyaux et noyaux monolithiques

Les systèmes d'exploitation utilisent généralement des noyaux monolithiques. Sous Linux, par exemple, les pilotes de périphériques font souvent partie d'un noyau (en particulier les modules de noyau chargeables). Lorsqu'un périphérique est nécessaire, son extension est chargée et "jointe" au noyau, ce qui le rend plus volumineux. Les noyaux monolithiques peuvent causer des problèmes lorsqu'un de ces pilotes est défectueux, par exemple si un pilote bêta est téléchargé. Parce qu'il fait partie du noyau, le pilote défectueux peut passer outre les mécanismes qui traitent les programmes défectueux (voir ci-dessus). Cela peut signifier que le noyau, et donc l'ordinateur tout entier, peut cesser de fonctionner. S'il y a trop de périphériques, le noyau peut également manquer de mémoire, ce qui peut provoquer un plantage du système ou rendre l'ordinateur très lent.

Les micro-noyaux sont un moyen de résoudre ce problème. Dans un système d'exploitation à micro-noyaux, le noyau ne s'occupe que des activités critiques, telles que le contrôle de la mémoire et du processeur, et rien d'autre. Les pilotes et autres fonctions que les noyaux monolithiques devraient normalement inclure dans le noyau sont déplacés à l'extérieur du noyau, où ils sont sous contrôle. Au lieu d'être une partie incontrôlable du noyau, le pilote bêta n'est donc pas plus susceptible de provoquer un crash qu'un navigateur web bêta. Autrement dit, si un pilote se plante, il peut simplement être redémarré par le noyau. Malheureusement, il est très difficile de créer des systèmes d'exploitation basés sur des micro-noyaux et il n'existe pas de système d'exploitation commun basé sur des micro-noyaux. Minix et QNX sont tous deux des systèmes d'exploitation à micro-noyaux.


AlegsaOnline.com - 2020 / 2023 - License CC3