Dans le monde des ordinateurs , un noyau est un programme de base qui gère les ressources d'un ordinateur pour le système d'exploitation . Les ressources gérées incluent les processus ( programmes en cours ), la mémoire , le processeur et les périphériques matériels. Le noyau Linux fournit la gestion des ressources pour le système d'exploitation Linux. Il s'agit d'un noyau monolithique qui supporte plus de matériel que n'importe quel autre système d'exploitation dans l'histoire, selon Greg Kroah - Hartman , l'un des développeurs du noyau Linux . Open Source
Le noyau Linux est constitué de plus de quatre millions de lignes de code, ce qui en fait un des plus grands projets open-source . L' ensemble de la base de code peut être consulté et modifié par n'importe qui. Avec un grand nombre de développeurs d'afficher le code source , les problèmes de sécurité peuvent être repérés et corrigés rapidement . Il permet également aux développeurs d'écrire le code nécessaire pour soutenir le nouveau matériel et de l'adapter à l'évolution des technologies et des conditions .
Monolithique avec le support de modules chargeables dynamiquement
Le Linux noyau est monolithique - tous les services de base sont regroupées dans le noyau. Un noyau monolithique offre un accès direct au matériel. Il n'ya pas de file d'attente pour le temps processeur . Les processus peuvent communiquer les uns avec les autres. Matériel supporté fonctionne automatiquement , sans avoir besoin de logiciel supplémentaire.
Le noyau Linux supporte aussi les modules chargeables dynamiquement . Seuls les modules nécessaires sont chargés pendant le processus de démarrage. Les utilisateurs peuvent charger des modules supplémentaires quand ils sont nécessaires , sans avoir à redémarrer le système d'exploitation .
Véritable multitâche
Le noyau Linux est conçu pour supporter plusieurs utilisateurs exécutant plusieurs processus (programmes) simultanément . Chaque processus en cours d'exécution dispose de son propre espace d'adressage virtuel . Les espaces d'adressage sont complètement séparés les uns des autres . Cela permet de maintenir un processus qui a échoué de causer l'ensemble du système à l'échec. Le noyau alloue les ressources du système pour chaque processus individuellement .
Support pour le matériel et les systèmes de fichiers
Linux prend en charge peut être exécuté sur différentes architectures informatiques, y compris ARM , PA- RISC , IBM, Intel , x86 et SPARC . Il prend également en charge un grand nombre de périphériques tels que les périphériques USB, les lecteurs de CD /DVD , des webcams et des imprimantes, le tout sans avoir besoin de pilotes supplémentaires. Le noyau reconnaît l'architecture et les enfiché périphériques pendant le processus de démarrage et charge le logiciel approprié pour les exécuter.
Linux prend en charge plusieurs systèmes de fichiers , y compris l' Ext3 , ReiserFS , HPFS , MS -DOS , NFS et Les systèmes de fichiers SysV . Les systèmes de fichiers Linux les plus couramment utilisés sont Ext3 et Ext4 . Vous pouvez choisir d'utiliser un autre type, comme ReiserFS . Linux prend en charge MS- DOS et NFS afin de lire de Windows et les lecteurs réseau .