3 Fonctions d'un système d'exploitation

 
 
Le système d'exploitation (figure 6) présente donc comme une couche logicielle placée entre la machine matérielle et les applications. Il s'interface avec la couche matérielle, notamment par le biais du mécanisme des interruptions. Il s'interface avec les applications par le biais des primitives qu'il offre : appels système et commandes. Le système d'exploitation peut être découpé en plusieurs grandes fonctions présentées sur la figure ci-dessous Dans une première approche, ces fonctions qui seront étudiées plus en détails dans les chapitres suivants du cours sont :
  • Gestion du processeur : le système doit gérer l'allocation du processeur aux différents programmes pouvant s'exécuter. Cette allocation se fait par le biais d'un algorithme d'ordonnancement qui planifie l'exécution des programmes. Selon le type de système d'exploitation, l'algorithme d' ordonnancement répond à des objectifs différents
  • Gestion de la mémoire : le système doit gérer l'allocation de la mémoire centrale entre les différents programmes pouvant s'exécuter (pagination/segmentation). Comme la mémoire physique est souvent trop petite pour contenir la totalité des programmes, la gestion de la mémoire se fait selon le principe de la mémoire virtuelle : à un instant donné, seules sont chargées en mémoire centrale, les parties de code et données utiles à l'exécution
  • Gestion des entrées/sorties : le système doit gérer l'accès aux périphériques, c'est-à-dire faire la liaison entre les appels de haut niveau des programmes utilisateurs (exemple getchar()) et les opérations de bas niveau de l'unité d’échange responsable du périphérique (unité d’échange clavier) : c'est le pilote d'entrées/sorties (driver) qui assure cette correspondance
  • Gestion de la concurrence : Comme plusieurs programmes coexistent en mémoire centrale, ceux-ci peuvent vouloir communiquer pour échanger des données. Par ailleurs, il faut synchroniser l'accès aux données partagées afin de maintenir leur cohérence. Le système offre des outils de communication et de synchronisation entre programmes
  • Gestion des objets externes : La mémoire centrale est une mémoire volatile. Aussi, toutes les données devant être conservées au-delà de l'arrêt de la machine, doivent être stockées sur une mémoire de masse ( disque dur, disquette, cédérom...). La gestion de l'allocation des mémoires de masse ainsi que l'accès aux données stockées s'appuient sur la notion de fichiers et de système de gestion de fichiers (SGF).
  • Gestion de la protection : le système doit fournir des mécanismes garantissant que ses ressource s (CPU, mémoire, fichiers) ne peuvent être utilisées que par les programmes auxquels les droits nécessaires ont été accordés. Il faut notamment protéger le système et la machine des programmes utilisateurs (mode d'exécution utilisateur et superviseur)

Fig 6 : Les grandes fonctions du système d’exploitation
Introduction Introduction aux systèmes d'exploitation Fonction du système