Différence entre microkernel et monolithique

Auteur: Laura McKinney
Date De Création: 1 Avril 2021
Date De Mise À Jour: 10 Peut 2024
Anonim
Différence entre microkernel et monolithique - La Technologie
Différence entre microkernel et monolithique - La Technologie

Contenu


Le noyau est la partie principale d'un système d'exploitation; il gère les ressources du système. Le noyau est comme un pont entre l’application et le matériel de l’ordinateur. Le noyau peut être classé plus loin en deux catégories, Microkernel et Monolithic Kernel. Le micro-noyau est celui dans lequel les services utilisateur et les services du noyau sont conservés dans un espace d'adressage séparé. Toutefois, dans les services utilisateur monolithiques du noyau et les services du noyau, les deux sont conservés dans le même espace d'adressage. Laissez-nous discuter de quelques autres différences entre les noyaux Microkernel et Monolithic à l’aide du tableau de comparaison présenté ci-dessous.

  1. Tableau de comparaison
  2. Définition
  3. Différences Clés
  4. Conclusion

Tableau de comparaison

Base de comparaisonMicro-noyauNoyau Monolithique
De baseDans les services utilisateur et le noyau du micro-noyau, les services sont conservés dans un espace d'adressage séparé.Dans le noyau monolithique, les services utilisateur et les services du noyau sont conservés dans le même espace d'adressage.
TailleLes micro-noyaux sont plus petits.Le noyau monolithique est plus gros que le microkernel.
ExécutionExécution lente.Exécution rapide.
ExtensibleLe micro-noyau est facilement extensible.Le noyau monolithique est difficile à étendre.
SécuritéSi un service tombe en panne, cela affecte le fonctionnement du micro-noyau.Si un service tombe en panne, tout le système se bloque dans le noyau monolithique.
CodePour écrire un micro-noyau, davantage de code est requis.Pour écrire un noyau monolithique, moins de code est requis.
ExempleQNX, Symbian, L4Linux, Singularity, K42, Mac OS X, Intégrité, PikeOS, HURD, Minix et Coyotos. Linux, BSD (FreeBSD, OpenBSD, NetBSD), Microsoft Windows (95,98, Me), Solaris, OS-9, AIX, HP-UX, DOS, OpenVMS, XTS-400, etc.


Définition du microkernel

Le micro-noyau étant un noyau, gère toutes les ressources du système. Mais dans un micro-noyau, le services utilisateurs et le services du noyau sont mis en œuvre dans un espace d'adressage différent. Les services utilisateurs sont conservés espace d'adressage utilisateuret les services du noyau sont conservés sous espace d'adressage du noyau. Cette réduit la taille du noyau et réduit encore la taille du système d'exploitation.

Outre la communication entre l'application et le matériel du système, le micro-noyau fournit des services minimaux de gestion des processus et de la mémoire. La communication entre le programme client / l’application et les services exécutés dans l’espace adresse de l’utilisateur est établie par passage. Ils n'interagissent jamais directement. Cela réduit la vitesse d'exécution du micro-noyau.


Dans un micro-noyau, les services utilisateur sont isolés des services du noyau. Ainsi, en cas d'échec d'un service utilisateur, cela n'affecte pas le service du noyau et donc le système d'exploitation. rester non affecté. C'est l'un des avantages du micro-noyau. Le micro-noyau est facilement extensible. Si les nouveaux services doivent être ajoutés, ils le sont dans l'espace d'adressage de l'utilisateur et par conséquent, l'espace du noyau ne nécessite aucune modification. Le micro-noyau est également facilement portable, sécurisé et fiable.

Définition du noyau monolithique

Le noyau monolithique gère les ressources système entre l'application et le matériel du système. Mais contrairement au micro-noyau, les services utilisateur et les services du noyau sont implémentés sous le même espace d'adressage. Cela augmente la taille du noyau augmente encore la taille du système d'exploitation.

Le noyau monolithique fournit la planification du processeur, la gestion de la mémoire, la gestion des fichiers et d'autres fonctions du système d'exploitation via des appels système. Comme les services utilisateur et les services du noyau résident tous deux dans le même espace d'adressage, le système d'exploitation s'exécute rapidement.

L’un des inconvénients du noyau monolithique est la défaillance de tout service sur l’ensemble du système qui tombe en panne. Si un nouveau service doit être ajouté dans le noyau monolithique, l'ensemble du système d'exploitation doit être modifié.

Différences clés entre le micro-noyau et le noyau monolithique

  1. Le point fondamental sur lequel on distingue le noyau microkernel et monolithique est le suivant: micro-noyau mettre en œuvre des services utilisateurs et des services de noyau dans différents espaces d'adressage et noyau monolithique mettre en œuvre les services utilisateurs et les services du noyau sous même espace d'adressage.
  2. La taille du micro-noyau est petit seuls les services du noyau résident dans l’espace adresse du noyau. Cependant, la taille du noyau monolithique est comparativement plus grande micro-noyau, car les services du noyau et les services des utilisateurs résident dans le même espace d'adressage.
  3. L’exécution du noyau monolithique est plus rapide la communication entre l’application et le matériel est établie à l’aide de la appel système. D'autre part, l'exécution du micro-noyau est lent la communication entre l’application et le matériel du système est établie par le biais de qui passe.
  4. Il est facile d’étendre le micro-noyau car un nouveau service doit être ajouté à l’espace adresse de l’utilisateur isolé de l’espace noyau, de sorte que le noyau n’a pas besoin d’être modifié. Le contraire est le cas avec le noyau monolithique si un nouveau service doit être ajouté dans le noyau monolithique, le noyau entier doit alors être modifié.
  5. Microkernel est plus sécurise noyau monolithique comme si un service échouait dans le micro-noyau, le système d’exploitation restait inchangé. D'autre part, si un service échoue dans le système monolithique du noyau, tout le système échoue.
  6. La conception de noyau monolithique nécessite moins de code, ce qui conduit en outre à moins de bugs. D'autre part, la conception d'un micro-noyau nécessite plus de code, ce qui conduit à plus de bogues.

Conclusion:

Le micro-noyau est plus lent mais plus sûr et fiable que le noyau monolithique. Le noyau monolithique est rapide mais moins sécurisé car toute défaillance du service peut entraîner un crash du système.