Hardware mag 40

Page 98

Comprendre

Voyage au coeur d’un systEme d’exploitation

Manuel DA COSTA Que ce soit une distribution Linux, BSD ou Windows, le système d’exploitation est un élément fondamental de tout PC. Pourtant, hormis quelques éléments de base, nous ne savons que très peu de choses sur son fonctionnement. Des lacunes que ce dossier propose de combler.

É

lément indispensable de tout PC, le système d’exploitation peut se définir comme une couche logicielle dont le rôle majeur est d’unifier et de contrôler la structure matérielle du PC, de manière à interagir avec les programmes, tels qu’un gestionnaire de mails, un jeu vidéo, un traitement de texte, ou encore un navigateur Web, et l’utilisateur. Ecrire un programme prenant en compte chaque composant d’un PC demeurant complexe, le système d’exploitation ou OS permet d’allouer les ressources du processeur, des zones de mémoire vive et de mémoire virtuelle, de lecture/écriture ou du système de fichiers, ce qui simplifie la tâche des développeurs. D’une manière générale, l’OS se compose d’un noyau, d’une interface utilisateur caractérisée par un interpréteur de commandes (ou shell), d’une interface graphique (graphic user interface) et d’un système de fichiers. Le but de ce dossier n’est pas de détailler techniquement la structure et le fonctionnement d’un système

98

I Hardware Magazine

d’exploitation, mais simplement d’en saisir les aspects fondamentaux de manière très schématique.

Le noyau Le noyau, caractérisé par l’exécutable ntoskrnl.exe sous Windows Vista et Seven, représente le coeur du système d’exploitation. C’est ce même noyau qui est exécuté lors du démarrage de la machine et que l’on appelle plus couramment boot. On peut d’ailleurs distinguer deux niveaux dans un noyau. Le bas niveau permet de contrôler, de gérer et de faire communiquer entre elles toutes les fonctions les plus fondamentales de la structure matérielle d’un PC (processeur, mémoire, bus, disque dur, GPU, etc.), telles que la gestion et l’ordonnancement de la mémoire, les processus, les bibliothèques, la gestion des protocoles réseau (TCP/IP, IPX, etc.), le système de fichiers ou encore des extensions telles qu’un antivirus ou la gestion des DRM. Sans oublier les périphériques d’entrée/sortie (E/S) généra-

lement caractérisés par un contrôleur spécifique. C’est le contrôleur qui gère le périphérique en recevant les commandes du système d’exploitation au moyen des pilotes (device drivers). Des pilotes qui sont généralement présents dans le noyau sous forme générique, c’est-à-dire que seules les fonctions de base sont implémentées. Il faut alors installer soimême les derniers pilotes constructeur pour bénéficier des fonctions avancées mais aussi des derniers correctifs et autres avancées technologiques. Une couche appelée HAL (Hardware Abstraction Layer) complète ensuite le bas niveau du noyau. Son rôle est de masquer différents types de dépendances matérielles liées aux familles et versions de processeurs (Dual Core, Core 2 Duo, Core i7, Athlon X2, Phenom X2/X4, etc.), aux types de contrôleurs, ou encore aux modèles de cartes mères puisque suivant la version du composant, certaines fonctions, que nous ne détaillerons pas ici, diffèrent d’un constructeur à l’autre : l’horloge temps réel, la priorité


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.