Sommaire

Architecture d’un système UNIX

Les systèmes UNIX, en particulier les systèmes sous Linux, sont particulièrement modulaires. Différentes couches sont définies, chacune interagissant avec les autres de certaines manières.

Au plus bas se trouve le noyau (dans notre cas, il s’agit de Linux). C’est lui qui gère les interactions entre les différents logiciels (quels qu’ils soient) et le matériel. Par-dessus se situent les bibliothèques (par exemple les bibliothèques du projet GNU - acronyme de GNU is Not UNIX, un projet définissant un système de type UNIX entièrement libre) : ce sont des bouts de code exécutable qui permettent de simplifier l’interaction entre les logiciels et le noyau. Ce sont notamment elles qui permettent d’utiliser le langage de notre choix lorsque l’on développe un logiciel, les bibliothèques traduisant les instructions du langage dans des appels système exécutés par le noyau. Au-dessus de cela, on retrouve tous les logiciels qui composent le système d’exploitation. Parmi ces logiciels on trouve bien sûr nos applications habituelles (le navigateur web, le logiciel de traitement de texte, le gestionnaire de fichiers, le lecteur de musique, etc.), mais également des choses un peu moins évidentes comme l’environnement graphique, généralement composé d’un gestionnaire de fenêtres (qui gère ...