Un processeur exécute des programmes en mode utilisateur ou en mode noyau. Et lorsque vous utilisez votre PC, votre processeur bascule régulièrement entre les deux en fonction de ce qu'il fait. Mais qu'est-ce que le mode utilisateur et le mode noyau, et quelle est la différence entre les deux?
Voyons quels sont ces modes et pourquoi un processeur doit basculer entre ces modes.
Qu'est-ce que le « mode utilisateur » dans Windows ?
Lorsque vous démarrez un programme sous Windows, il se lance en mode utilisateur. Chaque fois qu'un programme en mode utilisateur veut s'exécuter, Windows crée un processus pour lui. Un processus est simplement un programme qu'un processeur exécute ou que Windows a programmé pour être exécuté. Et chaque fois que Windows crée un processus, il crée également un espace d'adressage virtuel pour ce processus.
UNE espace d'adressage virtuel est la collection d'adresses logiques (non physiques) que Windows attribue à un processus. Les processus peuvent utiliser ces adresses pour stocker des données sur la mémoire physique.
De plus, les espaces d'adressage virtuels sont isolés. Ainsi, l'espace d'adressage virtuel d'un processus n'interfère pas avec l'espace d'adressage d'un autre processus. Et parce que les programmes en mode utilisateur ont des espaces d'adressage séparés, si un programme se bloque, il se bloque seul et ne supprime pas les autres programmes ou l'ensemble du système d'exploitation avec lui.
En rapport: Conseils pour vous aider à corriger l'erreur d'écran bleu de Windows 10
Une autre façon de décrire les applications en mode utilisateur consiste à utiliser le terme « moins privilégié ». Windows empêche les applications en mode utilisateur d'accéder directement aux ressources système critiques, les rendant ainsi moins privilégiées. Par exemple, si une application souhaite accéder au matériel, elle doit passer par le noyau du système d'exploitation en utilisant des appels système.
En termes simples, les programmes d'application comme les jeux vidéo fonctionnent en mode utilisateur. Ils sont moins privilégiés et n'ont donc pas un accès illimité aux ressources système. Chaque application en mode utilisateur possède son propre espace d'adressage. Une application ne peut pas modifier l'espace d'adressage d'une autre application. Par conséquent, si une application plante, cela n'affecte pas les autres programmes exécutés sur l'ordinateur.
En rapport: Signes d'avertissement que votre ordinateur va planter (et que faire)
Qu'est-ce que le "mode noyau" sous Windows ?
Avant de discuter du mode noyau, nous devons d'abord définir ce qu'est un "noyau" et comment il fonctionne avec Windows.
Le noyau est le cerveau d'un système d'exploitation. C'est le composant logiciel de base sur lequel reposent tous les autres composants du système d'exploitation. Le noyau gère le matériel informatique, planifie les processus exécutés sur l'ordinateur et à quel moment, et gère les interactions entre le matériel et le logiciel d'application.
En bref, le noyau est le morceau de code le plus privilégié exécuté sur le système. C'est parce que c'est le code qui interagit directement avec le matériel. Tout autre programme qui souhaite utiliser les ressources matérielles doit demander l'accès via le noyau.
Lorsqu'un programme d'application s'exécute en mode utilisateur et souhaite accéder à du matériel comme la webcam, il doit demander le noyau en utilisant un appel système. Pour répondre à ces requêtes, la CPU, au moment de l'exécution du programme, passe du mode utilisateur au mode noyau.
Une fois l'exécution d'un processus terminée, la CPU repasse en mode utilisateur et commence à exécuter le prochain processus planifié. C'est ce qu'on appelle le « changement de contexte ».
Quelle est la différence entre le mode utilisateur et le mode noyau ?
La principale différence entre le mode utilisateur et le mode noyau est le niveau de privilège offert par chaque mode. En mode utilisateur, les applications ont moins de privilèges. Ils n'ont pas accès directement aux ressources matérielles et ne peuvent pas non plus écrire dans les espaces d'adressage d'autres applications.
En rapport: Comment utiliser le gestionnaire de périphériques pour dépanner Windows 10
Le code qui s'exécute en mode noyau a des privilèges élevés. Il a non seulement un accès direct au matériel informatique, mais tous les programmes exécutés en mode noyau, y compris le système d'exploitation, partagent également un espace d'adressage. Ainsi, si un programme en Le mode noyau se bloque, il peut détruire tout le système d'exploitation avec. Pour éviter que de tels plantages ne se produisent, Windows n'autorise que certains processus à s'exécuter en mode noyau.
Windows adopte une approche en couches pour séparer les programmes utilisateur des ressources système
Windows utilise un modèle en couches pour déterminer le niveau de privilège des processus. Les applications qui résident sur la couche la plus externe sont celles avec le privilège de bail. Au cœur de ces couches se trouve le noyau. En conséquence, le noyau a un accès illimité aux ressources du système d'exploitation.
L'approche en couches protège également les fonctionnalités vitales du système d'exploitation. Lorsque les programmes de la couche supérieure se bloquent de manière aléatoire, cela n'affecte pas le système d'exploitation. D'un autre côté, lorsque le noyau plante, tout le système d'exploitation tombe en panne.
Pourquoi Windows n'arrête pas de planter? Voici les raisons les plus courantes des plantages de Windows et plusieurs astuces pour les corriger.
Lire la suite
- les fenêtres
- les fenêtres
Fawad est un écrivain indépendant à temps plein. Il aime la technologie et la nourriture. Lorsqu'il ne mange pas ou n'écrit pas sur Windows, il joue à des jeux vidéo ou rêve de voyager.
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !
Cliquez ici pour vous abonner