Architecture d'un système Unix

Dernière modification: Wed Mar 8 17:58:23 2000


Unix est traditionnellement construit d'un bloc (système monolithique). Son architecture est schématiquement la suivante : architecture d'Unix

Pour faire appel aux services du système on passe généralement par des fonctions définies dans des bibliothèques qui fournissent une interface de programmation (API) conforme à une norme (ex: POSIX, XPG, SVID). Il est toutefois possible d'appeler directement le système en utilisant des interruptions logicielles prédéfinies (mieux vaut encore faire appel à syscall() même si cela n'est pas recommandé).

Le noyau du système Unix est divisé en deux modules : le premier dont le rôle est de gérer tout ce qui concerne les entrées/sorties et le second dédié à la gestion des processus (ordonnancement, gestion mémoire, communication inter-processus, etc.).

Les entrées/sorties sont de deux types : en mode caractère pour des périphériques dont la nature même est de communiquer par caractères (ex : terminaux, modems, etc.), et en mode bloc (ex : disques, etc.). Les entrées/sorties en mode caractère ne font pas appel au système de cache réservé aux blocs. Ce système est utilisé afin de minimiser les accès vers les périphériques concernés généralement bien plus lents que la mémoire.