77
Systèmes d’Exploitation I Chapitre I : Introduction aux systèmes d'exploitation Amine DHRAIEF

Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

Embed Size (px)

Citation preview

Page 1: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

Systèmes d’Exploitation I

Chapitre I :

Introduction aux systèmes d'exploitation

Amine DHRAIEF

Page 2: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 2

Lectures● Chapitre 1 Introduction. Avi Silberschatz, Peter Baer

Galvin, and Greg Gagne. Operating System Concepts Ninth Edition. John Wiley & Sons, Inc., 2012.

● Chapitre 1 Computer system overview. William Stallings. Operating Systems : Internals and Design Principles. Prentice Hall, SEVENTH EDITION, 2011.

● Chapitre 1 Introduction. Andrew Tanenbaum. Systèmes d’exploitation. Pearson 3e Ed, 2008.

Page 3: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 3

Est-ce qu'il y a une définition d'un OS ?

Page 4: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 4

Introduction● Un système d'exploitation (Operating System OS) :

– un programme qui gère le hardware– Intermédiaire entre l'utilisateur et le hardware

● Selon les exigences des équipements des OS différents– Serveur vs. Ordinateur Portable vs. Supercalculateur – Smartphone vs. Téléviseur vs. Console de jeux– Compteur d'électricité/gaz/eau intelligent vs. Voiture vs. Drone

● Système complexe = décomposé en unité plus simple à modéliser et implémenter

Page 5: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 5

Introduction

● Un « ordinateur » (computer system) est constitué essentiellement de

1)Hardware

2)OS

3)Applicatifs

4)Utilisateurs

Page 6: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 6

Introduction● Le hardware

– CPU + Mémoires + périphériques d'E/S– → Ressources du système

● Le applicatifs– Compilateur/navigateurs/Jeux/…– → Utilisent les ressources du système pour satisfaire les besoins

des utilisateurs

● L'OS – Contrôle le hardware et coordonne son utilisation par les différents

applicatifs des utilisateurs.

Page 7: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 7

L'OS de point de vue de l'utilisateur

● La plupart des utilisateurs utilisent des équipements mono-utilisateurs – Les ressources sont monopolisées par un seul utilisateur

● De point vue de l'utilisateur : l'objectif de l'OS est d'optimiser la facilité de l'utilisation de l’équipement– Peu d'attention est donnée aux performances du système– L'OS ne cherche pas à optimiser l'utilisation/partage des ressources

→ des OS optimisés pour un seul utilisateur

Page 8: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 8

L'OS de point de vue de l'utilisateur

● Dans l'industrie et la recherche, un utilisateur utilise un terminal pour accéder à des serveurs/calculateurs...– Au même moment d'autres utilisateurs accèdent à ces

équipements via d'autres terminaux.

→ Les utilisateurs partagent les ressources disponibles et peuvent s'échanger des messages.

→ De point vue de l'utilisateur : L'objectif de l'OS est le partage équitable des ressources (CPU/Mémoire/…) entre les utilisateurs

Page 9: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 9

L'OS de point de vue de l'utilisateur

De point vue de l'utilisateur

Facilité de l'utilisation de l’équipement

Partage équitable des ressources

Page 10: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 10

L'OS de point de vue de système● L'OS est vue comme un dispatcher de ressources

– Temps CPU– Espace mémoire– Périphériques d'E/S

● Gère les requêtes et les conflits des différent programmes/utilisateurs qui demandent l'accès à ces ressources.

Page 11: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 11

Est-ce qu'il y a une définition d'un OS ?

● Le terme « système d'exploitation » couvre un grand nombre de fonctionnalités– Une grande diversité d'architecture d'équipement ayant besoin

d'un OS (supercalculateurs → smartphones → capteurs)

● Loi de Moore : nombre de transistors dans un CPU double tous les 18 mois

→ puissance des équipements en constante augmentations

→ émergence de nouvelles fonctionnalités/besoins

Page 12: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 12

Loi ou Conjoncture de Moore● Gordon Moore● Né le 3 janvier 1929 à San Francisco

est un docteur en chimie et en physique, un chef d'entreprise américain.

● Il est le cofondateur avec Robert Noyce et Andrew Grove de la société Intel en 1968, premier fabricant mondial de microprocesseurs.

● Il est connu pour avoir publié une loi empirique portant son nom, la loi de Moore, le 19 avril 1965 dans le magazine Electronics – Source : wikipedia

Page 13: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 13

Loi ou Conjoncture de Moore

● le nombre de transistors des microprocesseurs sur une puce de silicium double tous les 18 mois

Page 14: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 14

Est-ce qu'il y a une définition d'un OS ?

● Non : il n'y a pas une définition consensuelle – Selon Prof. Avi Silberschatz (Professor of Computer Science at Yale

University) : « we have no completely adequate definition of an operating system »

● Est-ce qu'on connaît exactement quels sont les composants fondamentales d'un OS ? Non– « we have no universally accepted definition of what is part of the

operating system »

● Une vision simpliste : « the operating system is the one program running at all times on the computer »

Page 15: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 15

Est-ce qu'il y a une définition d'un OS ?

Avi Silberschatz, Peter Baer Galvin, and Greg Gagne. Operating System Essentials. Second Edition. John Wiley & Sons, Inc., 2012.

Page 16: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 16

Quels sont les constituants d'un OS ?

● Procès antitrust contre Microsoft (justice américaine): Windows® offre des fonctionnalités ne faisant pas partie d'un OS (Internet Explorer) → concurrence déloyale– La vente couplée de Windows et d'Internet Explorer a eu pour

effet de laminer la concurrence, et particulièrement Netscape.

● Les OS des smartphone inclus en plus du noyau (kernel) un middelware (iOS/Android)– Des APIs pour les développeurs

Page 17: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 17

Noyau (Kernel) + Programmes Systèmes + Applications = ?

Noyau

Programmes Systèmes

Applications

OS

Page 18: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 18

Architecture des machines

Page 19: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 19

Architecture des machines● Un ordinateur à usage générale (general purpose computer) contient

– Un ou plusieurs CPUs

– Des contrôleurs au niveau de chaque équipements (device)

– Un bus relie le tout à la mémoire

Page 20: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 20

Architecture des machinesLe CPU échange des données avec la mémoire

Pour cela il utilise deux registres

● MAR : memory address register → contient l'adresse mémoire du prochain R/W

● MBR : memory buffer register

→ contient les données

Page 21: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 21

Architecture des machines● Mise sous tension de la machine → démarrage d'un bootstrap

program

● Le bootstrap program : – Un programme aussi simple que possible, connu sous le nom de

firmware/micro-code.

– Enregistré dans la Read Only Memory (ROM) ou Electrically Erasable Read Only Memory

● EPROM= ROM programmable qui peut être effacé et réutilisée

– Initialise les équipements (Registre CPU, contenu de la mémoire,...)

→ Charge le noyau de l'OS (kernel) dans la mémoire.

Page 22: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 22

Architecture des machines

● Une fois que le noyau (kernel) est chargé et exécuté, il peut fournir ses services au système et aux utilisateurs.

– Les systèmes basés sur UNIX lancent après le démarrage le processus « init ».

● Init lance à son tour d'autre processus.

– À ce stade, l'OS est complètement démarré, et il attends l'occurrence d'un quelconque événement.

Page 23: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 23

Architecture des machines

● L’occurrence d'un événement est signalé par une interruption logicielle ou matérielle

– Le hardware peut déclencher une interruption à tous moments en envoyant un signal au CPU.

– Un programme peut déclencher une interruption en exécutant un appel système.

Page 24: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 24

Architecture des machinesStructure de stockage

● Le CPU charge les instructions uniquement de la mémoire principale, donc tous les programmes doivent être enregistrés en mémoire

● Les ordinateurs à usage générale (General-Purpose Computers) exécutent leurs programmes à partir d’une mémoire réinscriptible (re-writable) appelée RAM (Random-Access Memory) → mémoire principale

● Le CPU interagit avec la mémoire à travers des séquences de load et store.

– L'instruction load copie une mot mémoire de la mémoire principale vers un registre interne du CPU

– L'instruction store copie un contenu d'un registre CPU vers la mémoire principale

Page 25: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 25

Architecture des machinesStructure de stockage

● Idéalement, nous voudrions que les programmes et leurs données soient d'une manière permanente en mémoire → Ceci est évidement impossible car :– La taille de la mémoire principal est insuffisante pour accueillir tous les

programmes et leurs données.– La mémoire principal est volatile et les données sont perdus lorsqu'on

éteint la machine.

→ Les machines sont équipées de mémoires secondaires qui étendent les capacités de la mémoire principal– Stockage permanent – Grande capacité

Page 26: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 26

Architecture des machinesHiérarchie de mémoire

Page 27: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 27

Architecture des machinesHiérarchie de mémoire

● Mémoire principale (RAM)– Programmes doivent être « chargés » dans la RAM

pour être exécutées– Les instructions et les données sont copiées depuis

la RAM dans des registres

● Or :– La RAM est volatile– De taille et vitesse moyennes

Page 28: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 28

Architecture des machinesHiérarchie de mémoire

● D'autres mémoires volatiles ont des tailles réduites, sont rapides et ont un coût par bit élevé– Registres– Caches CPU

● Mémoires non-volatiles (permanentes) ont des tailles importantes, lentes et ont un coût réduit par bit– Disque magnétique– Disque optique

Page 29: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 29

Architecture des machinesles E/S

● Une large portion du code des OS est dédiée à la gestion des E/S à cause de la variété de types d'E/S.

● Un ordinateur à usage générale est formé – de CPU(s) – et de contrôleurs de périphériques connectés à travers un

bus commun.● Un contrôleur est en charge d'un type spécifique de périphérique.● Selon le type de contrôleur, plusieurs équipements peuvent y être

attaché.– Par exemple : 7 périphériques peuvent être attaché simultanément au

contrôleur d’équipement small computer-systems interface ( SCSI )

Page 30: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 30

Architecture des machinesles E/S

● Le contrôleur de périphérique maintien un buffer (mémoire) local pour y stocker temporairement les données émises/reçues par périphérique.

● Un OS utilise un pilote de périphérique (device driver) pour chaque contrôleur de périphérique.

● Le pilote est l’intermédiaire entre le contrôleur de périphérique et l'OS.

Page 31: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 31

Structure et Concepts de Base des Systèmes d'Exploitation

Page 32: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 32

Finalité des OS● Un OS fournit l'environnement nécessaire pour

que les programme puissent s’exécuter.

● Pour cela, l'OS :– Alloue les ressources matérielles et logicielles pour

satisfaire les besoins des programmes.– Présente aux programme une interface mieux

adaptée à leurs besoins que celle fournie directement par le matériel.

Page 33: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 33

Le système d'exploitation en tant que machine virtuelle

Peu de programmes seraient développés si

chaque programmeur devait connaître le

fonctonnement du hardware

Peu de programmes seraient développés si

chaque programmeur devait connaître le

fonctonnement du hardware

trouver un moyen de libérer les programmeurs

de la complexité du hardware

trouver un moyen de libérer les programmeurs

de la complexité du hardware

L’ABSTRACTIONL’ABSTRACTION

Page 34: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 34

Le système d'exploitation en tant que machine virtuelle

Hardware

API

Applicatons

1- Enrober le matériel avec une couche de logiciel qui gère l'ensemble du système.

2- Présenter au programmeur une API (Applicaton Programming interface, interface de programmaton d'applicaton)

Page 35: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 35

Le système d'exploitation en tant que machine virtuelle

● Un disque est composé de cylindres, qui contiennent chacun autant de pistes qu'il y a de têtes placées verticalement.

● Les pistes se divisent en secteurs, le nombre de secteurs étant compris entre 8 et 32.

● Tous les secteurs contiennent le même nombre d'octets.

Page 36: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 36

Le système d'exploitation en tant que machine virtuelle

• Prise en charge par Linux:

– /kernels/linux-2.6/drivers/block/hd.c

/* * This struct defines the

HD's and their types. */struct hd_i_struct { unsigned int head,

sect, cyl, wpcom, lzone, ctl; int unit; int recalibrate; int special_op;

};

Les champs représentent les caractéristques géométriques du lecteur :i. le nombre de têtes (autrement dit de

pistes),ii. le nombre de secteurs par piste,iii. le nombre de cylindres

Page 37: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 37

Le système d'exploitation en tant que machine virtuelle

● La plupart des programmeurs ne veulent pas se soucier de la programmation des disques durs. Ils veulent une abstraction simple de haut niveau :– considérer par exemple que le disque contient des

fichiers nommés ; – chaque fichier peut être ouvert en lecture ou en

écriture ; – il sera lu ou écrit, et finalement fermé.

Page 38: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 38

Le système d'exploitation en tant que machine virtuelle

● La partie machine virtuelle des systèmes d'exploitation – soustrait le matériel au regard du programmeur – offre une vue simple et agréable de fichiers

nommés qui peuvent être lus et écrits

Page 39: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 39

Le système d'exploitation en tant que machine virtuelle

Machine virtuelleMachine virtuelle

Cacher les détails de mise en œuvre du matériel

Cacher les détails de mise en œuvre du matériel

Cacher les limitatons physiques (taille

mémoire)

Cacher les limitatons physiques (taille

mémoire)

Page 40: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 40

Le système d'exploitation en tant que gestionnaire de ressources

● Les ordinateurs modernes se composent de processeurs, de mémoires, d'horloges, de disques, de moniteurs, d'interfaces réseau, d'imprimantes, et d'autres périphériques qui peuvent être utilisés par plusieurs utilisateurs en même temps.

● Le travail du système d'exploitation consiste à ordonner et contrôler l'allocation des processeurs, des mémoires et des périphériques entre les différents programmes qui y font appel.

Page 41: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 41

Le système d'exploitation en tant que gestionnaire de ressources

● Imaginez ce qui se produirait si trois programmes qui s'exécutent sur un ordinateur essayaient simultanément d'imprimer leurs résultats sur la même imprimante. – Les premières lignes imprimées pourraient provenir du programme 1,

les suivantes du programme 2, puis du programme 3 et ainsi de suite.

→ Il en résulterait le désordre le plus total.

● Le système d'exploitation peut éviter ce chaos potentiel en transférant les résultats à imprimer dans un fichier tampon sur le disque.

→ Lorsqu'une impression se termine, le système d'exploitation peut alors imprimer un des fichiers se trouvant dans le tampon.

Page 42: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 42

Systèmes multi-tâches

● La plupart des systèmes d'exploitation modernes permettent l'exécution de plusieurs tâches à la fois – un ordinateur peut, pendant qu'il exécute

le programme d'un utilisateur, lire les données d'un disque ou afficher des résultats sur un terminal ou une imprimante.

● On parle de système d'exploitation multi-tâches ou multi-programmé dans ce cas.

Page 43: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 43

Systèmes multi-tâches: les processus

● La notion fondamentale des systèmes d'exploitation multi-tâches est celle de processus.

● Un processus est une instance de programme en train de s'exécuter. – Un processus est représenté par un programme (le code),– mais également par ses données et par les paramètres

indiquant où il en est, lui permettant ainsi de continuer s'il est interrompu (pile d'exécution, compteur ordinal...).

→ On parle de l'environnement du programme.

Page 44: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 44

Systèmes multi-tâches: le temps partagé

● La plupart des systèmes d'exploitation multi-tâches sont implémentés sur un ordinateur ayant un seul micro-processeur.

● Celui-ci, à un instant donné, n'exécute réellement qu'un seul processus, mais le système peut le faire passer d'un programme à un autre

● Ceci donne aux utilisateurs l'impression que tous les programmes sont exécutés en même temps.

Page 45: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 45

Systèmes multi-utilisateurs

● Comme pour les systèmes multi-tâches, la multi-utilisation est émulée en attribuant des laps de temps à chaque utilisateur.

● Naturellement, le fait de basculer d'une application à l'autre ralentit chacune d'entre elles et affecte le temps de réponse perçu par les utilisateurs.

Page 46: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 46

Structure externe des OS

● Le système d'exploitation comporte un certain nombre de routines (sous-programmes). Les plus importantes constituent le noyau (kernel).

● Il gère les ressources de l’ordinateur et permet aux différents composants, matériels et logiciels, de communiquer entre eux.

● Le noyau d'un système d'exploitation se compose de quatre parties principales :

1.le gestionnaire de tâches (ou des processus)/ordonnanceur,

2.le gestionnaire de mémoire,

3.le gestionnaire de fichiers

4.et le gestionnaire de périphériques d'entrée-sortie.

Page 47: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 47

Le gestionnaire de tâches/ Ordonnanceur

● L’ordonnanceur d’un système d’exploitation n’a de sens qu’en système multitâche.

● Il gère l’ordre dans lequel les instructions de différentes tâches sont exécutées

● Il est responsable de la sauvegarde et de la restauration du contexte des tâches (ce contexte est constitué des registres processeurs), appelée également commutation de contexte.

Page 48: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 48

OrdonnanceurCommutation de contexte

● Une commutation de contexte (context switch) consiste à sauvegarder l'état d'un processus pour restaurer à la place celui d'un autre dans le cadre de l'ordonnancement d'un système d'exploitation multitâche.

● La commutation de contexte invoque au moins trois étapes. Par exemple, en présumant que l'on veut commuter l'utilisation du processeur par le processus P1 vers le processus P2 :– Sauvegarder le contexte du processus P1 quelque part en mémoire (usuellement

sur la pile de P1).– Retrouver le contexte de P2 en mémoire (usuellement sur la pile de P2).– Restaurer le contexte de P2 dans le processeur, la dernière étape de la restauration

consistant à reprendre l'exécution de P2 à son point de dernière exécution.

Page 49: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 49

Ordonnanceur● La plupart des ordonnanceurs modernes permettent

d’indiquer sur quel processeur sont exécutées les tâches. – Certains permettent également de migrer des tâches sur d’autres

machines d’une grappe de calcul.

● L’algorithme d’ordonnancement détermine quelle tâche doit s’exécuter en priorité et sur quel processeur. – Cet algorithme doit permettre d’utiliser efficacement les

ressources de la machine

Page 50: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 50

Ordonnanceur● L’ordonnancement peut être de type coopératif

– Les tâches doivent être écrites de manière à coopérer les unes avec les autres et ainsi accepter leur suspension pour l’exécution d’une autre tâche.

● L’ordonnancement peut être également de type préemptif .– L’ordonnanceur a la responsabilité de l’interruption des tâches et du choix

de la prochaine à exécuter.

● Certains noyaux sont eux-mêmes préemptifs – l’ordonnanceur peut interrompre le noyau lui-même pour faire place à une

activité (typiquement, toujours dans le noyau) de priorité plus élevée.

Page 51: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 51

Gestionnaire de mémoire

● Le gestionnaire de mémoire est le sous-ensemble du système d’exploitation qui permet de gérer la mémoire de l’ordinateur.

● Sa tâche la plus basique est d’allouer de la mémoire à des processus lorsqu’ils en ont besoin.

Page 52: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 52

Gestionnaire de mémoire● Le gestionnaire de mémoire

– masque la localisation physique de la mémoire (en mémoire vive ou sur disque dur, dans l’espace de mémoire paginée)

– présente au programme une mémoire globale uniforme dite mémoire virtuelle.

● Ainsi, tout processus croit manipuler une mémoire «logique » qui a les propriétés suivantes :– La mémoire peut être étendue jusqu’aux capacités théoriques de la

machine ;– La mémoire est privée (protégée), un processus ne peut pas

accéder à la mémoire d’un autre processus (sauf allocations et autorisations spécifiques).

Page 53: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 53

Gestionnaire de fichiers

● Une des tâches fondamentales du système d’exploitation est de masquer les spécificités des disques et des autres périphériques d’entrée-sortie et d’offrir au programmeur un modèle agréable et facile d’emploi.

→ Ceci se fait à travers la notion de fichier.

Page 54: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 54

Le gestionnaire de périphériques

● Le contrôle des périphériques d’entrée-sortie (E/S) de l’ordinateur est l’une des fonctions primordiales d’un système d’exploitation. – Ce dernier doit envoyer les commandes aux

périphériques, intercepter les interruptions, et traiter les erreurs.

– Il doit aussi fournir une interface simple et facile d’emploi entre les périphériques et le reste du système qui doit être, dans la mesure du possible, la même pour tous les périphériques, c’est-à-dire indépendante du périphérique utilisé.

Page 55: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 55

Le gestionnaire de périphériques

De nombreux systèmes d’exploitation offrent un niveau d’abstraction qui permet aux utilisateurs de réaliser des entrées-sorties sans entrer dans le détail du matériel. – Ce niveau d’abstraction fait apparaître chaque

périphérique comme un fichier spécial, qui permettent de traiter les périphériques d’entrée-sortie comme des fichiers.

Page 56: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 56

L’interpréteur de commandes● Le système d’exploitation proprement dit est le code qui

permet de définir les appels système.

– Les programmes système tels que les éditeurs de texte, les compilateurs, les assembleurs, les éditeurs de liens et les interpréteurs de commandes ne font pas partie du système d’exploitation.

– Sous sa forme la plus rudimentaire, l’interpréteur de commandes exécute une boucle infinie qui affiche une invite (montrant par là que l’on attend quelque chose), lit le nom du programme saisi par l’utilisateur à ce moment-là et l’exécute.

Page 57: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 57

Les Appels Système ● Les appels système sont des fonctions :

– appelées depuis un programme de l’espace utilisateur ;– dont l’exécution (le traitement) est effectuée dans l’espace noyau ;– dont le retour est effectué dans le programme appelant dans l’espace

utilisateur.

● En plus d’un changement de mode d’exécution, l’appel système suppose au moins deux commutations de contextes :– Contexte du programme appelant ; – Contexte du noyau ;

Page 58: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 58

Monolithe● Un monolithe (du grec μόνος monos, « un

seul » et λίθος lithos, « pierre ») est un bloc de pierre de grande dimension, constitué d'un seul élément.

Page 59: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 59

Les systèmes monolithiques

● Andrew Tanenbaum appelle système monolithique (d’un seul bloc) un système d’exploitation qui est une collection de procédures, chacune pouvant à tout moment appeler n’importe quelle autre procédure, en remarquant que c’est l’organisation (plutôt chaotique) la plus répandue.

Page 60: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 60

Les systèmes monolithiques

● On considère généralement les noyaux monolithiques, de conception ancienne, comme obsolètes car difficiles à maintenir et moins « propres »– Le noyau Linux était déjà qualifié d’obsolète par

Andrew Tanenbaum, dès sa création en 1992.– Linus vs. Tanenbaum:

http://www.dina.dk/~abraham/Linus_vs_Tanenbaum.html

– Il ne croyait pas, à l’époque, pouvoir faire un noyau monolithique multi plate-forme et modulaire.

Page 61: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 61

Les systèmes monolithiques● Pour construire le code objet du système d’exploitation, il faut

compiler toutes les procédures, ou les fichiers qui les contiennent, puis les réunir au moyen d’un éditeur de liens.

● Dans un système monolithique, il n’y a aucun masquage de l’information : chaque procédure est visible de toutes les autres,

● → par opposition aux structures constituées de modules ou d’unités de programmes et dans lesquelles les informations sont locales aux modules et où il existe des points de passage obligés pour accéder aux modules.– MS-DOS est un exemple d’un tel système.

Page 62: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 62

Noyaux monolithiques non modulaires● Certains systèmes d’exploitation, comme d’anciennes versions de

Linux, certains BSD ou certains vieux Unix ont un noyau monolithique.– C’est-à-dire que l’ensemble des fonctions du système et des pilotes sont regroupés

dans un seul bloc de code et un seul bloc binaire généré à la compilation.

● De par la simplicité de leur concept mais également de leur excellente vitesse d’exécution, les noyaux monolithiques ont été les premiers à être développés et mis en œuvre.

● Cependant, au fur et à mesure de leurs développements, le code de ces noyaux monolithiques a augmenté en taille et il s’est avéré difficile de les maintenir

Page 63: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 63

Noyaux monolithiques non modulaires● Le support par les architectures monolithiques des chargements à

chaud ou dynamiques – implique une augmentation du nombre de pilotes matériels compilés dans le

noyau, – et par suite, une augmentation de la taille de l’empreinte mémoire des noyaux. – Celle-ci devient rapidement inacceptable.

● Les multiples dépendances créées entre les différentes fonctions du noyau empêchaient la relecture et la compréhension du code.– L’évolution du code s’est faite en parallèle à l’évolution du matériel, et des

problèmes de portage ont alors été mis en évidence sur les noyaux monolithiques.

Page 64: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 64

Noyaux monolithiques modulaires

● Pour répondre aux problèmes des noyaux monolithiques, ces derniers sont devenus modulaires.

– Dans ce type de noyau, seules les parties fondamentales du système sont regroupées dans un bloc de code unique (monolithique).

– Les autres fonctions, comme les pilotes matériels, sont regroupées en différents modules qui peuvent être séparés tant du point de vue du code que du point de vue binaire.

– La très grande majorité des systèmes actuels utilise cette technologie : Linux, la plupart des BSD ou Solaris.

Page 65: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 65

Noyaux monolithiques modulaires

● Les noyaux monolithiques modulaires conservent les principaux atouts des noyaux monolithiques purs dont ils sont issus.

– Ainsi, la facilité de conception et de développement est globalement maintenue et la vitesse d’exécution reste excellente.

– L’utilisation de modules implique le découpage du code source du noyau en blocs indépendants. Ces blocs améliorent l’organisation et la clarté du code source et en facilitent également la maintenance.

Page 66: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 66

Noyaux monolithiques modulaires

● Les noyaux monolithiques modulaires conservent également un important défaut des noyaux monolithiques purs : – Une erreur dans un module met en danger la stabilité de tout le

système. – Les tests et certifications de ces composants doivent être plus

poussés.

● D’un point de vue théorique, le grand nombre de lignes de code exécutées en mode noyau engendre des problèmes de portabilité. – La pratique contredit largement la théorie et les noyaux modulaires

sont aujourd’hui les plus portés.

Page 67: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 67

Systèmes à micro-noyau● Les limitations des noyaux monolithiques ont amené à une

approche radicalement différente de la notion de noyau : les système approche à micro-noyaux.

● Les systèmes à micro-noyaux cherchent à minimiser les fonctionnalités dépendantes du noyau en plaçant la plus grande partie des services du système d’exploitation à l’extérieur de ce noyau, c’est-à-dire dans l’espace utilisateur.

● Ces fonctionnalités sont alors fournies par de petits serveurs indépendants possédant souvent leur propre espace d’adressage.

Page 68: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 68

Systèmes à micro-noyau● Un petit nombre de fonctions fondamentales est

conservé dans un noyau minimaliste appelé « micro-noyau ».

● L’ensemble des fonctionnalités habituellement proposées par les noyaux monolithiques est alors assuré par les services déplacés en espace utilisateur et par ce micro-noyau.

● Cet ensemble logiciel est appelé « micro-noyau enrichi ».

Page 69: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 69

Systèmes à micro-noyau● Ce principe a de grands avantages théoriques :

– en éloignant les services « à risque » des parties critiques du système d’exploitation regroupées dans le noyau,

– il permet de gagner en robustesse et en fiabilité, tout en facilitant la maintenance et l’évolutivité.

● En revanche, les mécanismes de communication (IPC), qui deviennent fondamentaux pour assurer le passage de messages entre les serveurs, sont très lourds et peuvent limiter les performances.

Page 70: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 70

Systèmes à micro-noyau● Les avantages théoriques des systèmes à micro-

noyaux sont la conséquence de l’utilisation du mode protégé par les services qui accompagnent le micro-noyau. – En effet, en plaçant les services dans l’espace utilisateur,

ceux-ci bénéficient de la protection de la mémoire.

● La stabilité de l’ensemble en est améliorée : une erreur d’un service en mode protégé a peu de conséquences sur la stabilité de l’ensemble de la machine.

Page 71: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 71

Systèmes à micro-noyau● Le système gagne également en possibilités de configuration.

– Seuls les services utiles doivent être réellement lancés au démarrage. – Les interdépendances entre les différents serveurs sont faibles. – L’ajout ou le retrait d’un service ne perturbe pas l’ensemble du système. – La complexité de l’ensemble est réduite.

● Le développement d’un système à micro-noyau se trouve également simplifié en tirant parti à la fois – de la protection de la mémoire – et de la faible interdépendance entre les services.

Page 72: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 72

Systèmes à micro-noyau● Les erreurs provoquées par les applications en

mode utilisateur – sont traitées plus simplement que dans le mode noyau – et ne mettent pas en péril la stabilité globale du système.

● L’intervention sur une fonctionnalité défectueuse consiste – à arrêter l’ancien service – puis à lancer le nouveau, sans devoir redémarrer toute la

machine.

Page 73: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 73

Systèmes à micro-noyau

● L’utilisation de nombreux services dans l’espace utilisateur engendre les deux problèmes suivants :– La plupart des services sont à l’extérieur du noyau

et génèrent un très grand nombre d’appels système ;

– Les interfaces de communication entre les services (IPC) sont complexes et trop lourdes en temps de traitement.

Page 74: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 74

Noyaux temps réel● Les noyaux temps réel sont fonctionnellement spécialisés.

– Ce sont des noyaux généralement assez légers qui ont pour fonction de base stricte de garantir les temps d’exécution des tâches.

● Très utilisés dans le monde de l’électronique embarquée,– ils sont conçus pour tourner sur des plates-formes matérielles limitées en taille,

puissance ou autonomie.

● Les noyaux temps réel peuvent adopter en théorie n’importe quelle architecture. – Ils fournissent souvent deux interfaces séparées, l’une spécialisée dans le temps

réel et l’autre générique. – Les applications temps réel font alors appel à la partie temps réel du noyau.

Page 75: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 75

Noyaux hybrides● La dénomination de « noyaux hybrides » désigne

principalement – des noyaux qui reprennent des concepts à la fois des noyaux monolithiques

et des micro-noyaux, – pour combiner les avantages des deux.

● Lorsqu’au début des années 1990 les développeurs et concepteurs se sont aperçus des faiblesses des premiers micro-noyaux, – Certains réintégrèrent diverses fonctionnalités non fondamentales dans le

noyau, pour gagner en performance. – Les micro-noyaux « purs » semblaient condamnés à l’échec.

Page 76: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 76

Noyaux hybrides● Alors que la philosophie générale des systèmes à micro-noyaux

est maintenue (seules les fonctions fondamentales sont dans l’espace noyau), – Certaines fonctions non critiques, mais très génératrices d’appels système,

sont réintégrées dans l’espace noyau. – Ce compromis permet d’améliorer considérablement les performances en

conservant de nombreuses propriétés des systèmes à micro-noyaux.

● Un exemple de ce type de noyau hybride est le noyau XNU de Mac OS X. – Il est basé sur le micro-noyau Mach 3.0 – mais qui inclut du code du noyau monolithique BSD au sein de l’espace noyau.

Page 77: Chapitre I : Introduction aux systèmes d'exploitation fileSystèmes d’Exploitation I Chapitre I : ... d'exploitation Amine DHRAIEF. 18/01/18 OS I 2 Lectures Chapitre 1 Introduction

18/01/18 OS I 77

The END