Vous êtes sur la page 1sur 49

Cours Théorie des SEs /LINUX 1ere Année CI

Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

Pr. F.YAKINE
: yakine.ensa@gmail.com

ENSA FES 20/21 Page 1


Cours Théorie des SEs /LINUX 1ere Année CI

 Intitulé de module M5 : théories des systèmes d’exploitation


/Linux
1. ½ module : Théories des SE (cours )
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

2. ½ module : Unix/Linux (cours + TP)


 Objectifs du module :
L'objectif est double : connaître les mécanismes internes des
Systèmes d'Exploitation en général, et appliquer ces
connaissances au système Linux en particulier, en étudiant
Interpréteur de commandes (SHELL), les filtres, le SGF ainsi
que les processus système et Threads et les problèmes de
synchronisation associés.

ENSA FES 20/21 Page 2


Cours Théorie des SEs /LINUX 1ere Année CI

1. Introduction aux systèmes d’exploitation


2. Gestion des processus/Threads
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 Ordonnancement , problèmes de synchronisation, sémaphores


3. Gestion de la mémoire
4. Gestion des fichiers
5. Gestion des ressources partagées
 Section critique , interblocage …

ENSA FES 20/21 Page 3


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 4


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

Pr.YAKINE: Novembre 2020

ENSA FES 20/21 Page 5


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 6


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 7


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 8


Cours Théorie des SEs /LINUX 1ere Année CI

 Un Système d’Exploitation SE (Operating System ou OS) est un


logiciel assurant le bon fonctionnement d'un ordinateur.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 C’est un ensemble de programmes responsables de la liaison


entre les ressources matérielles d’un ordinateur et les
applications informatiques de l’utilisateur.
 Il offre à l'utilisateur une vue plus abstraite et plus simple que la
vue matérielle.

Invite de commandes : C'est la version « mode texte » du SE qui


permet d 'exécuter des processus.

ENSA FES 20/21 Page 9


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 10


Cours Théorie des SEs /LINUX 1ere Année CI

 Autres
 Première couche logicielle au dessus du matériel
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 Seul programme permanent dans une machine

ENSA FES 20/21 Page 11


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 12


Cours Théorie des SEs /LINUX 1ere Année CI

 Décharger le programmeur
 Tâche de programmation énorme et fastidieuse
un système d'exploitation comme Linux ou Windows est de
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

l'ordre de 5 millions de lignes de code ou plus.


 Permet au programmeur de se concentrer sur l’écriture de son
application
 Protéger le système et ses usagers
 mauvaises manipulations
 Gérer les ressources
 Offrir une vue simple, uniforme et cohérente de la machine et de ses
ressources

ENSA FES 20/21 Page 13


Cours Théorie des SEs /LINUX 1ere Année CI

 Unix : Créé en 1969, rapidement multi-utilisateur, écrit en langage C.


 Linux : Clone gratuit d’UNIX pour les PC, open source.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 Mac OS : Premier à proposer le concept des fenêtres, du glisser-


déposer, la corbeille, le plug-and-play; aujourd’hui possède le noyau
Linux, avec une interface graphique élégante et ergonomique, et
optimisation particulière des traitement multimédia.
 MS-DOS (Microsoft disque operating system) : SE des premiers PC,
mono-utilisateur, mono-tâche, interface ligne de commande.
 Windows NT : Système d’exploitation indépendant de DOS. Il a permis
à Microsoft et son partenaire Intel d'entrer sur le marché des serveurs.

ENSA FES 20/21 Page 14


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 15


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 16


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 17


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

Système d’exploitation utilisateur

ENSA FES 20/21 Page 18


Cours Théorie des SEs /LINUX 1ere Année CI

 Le matériel (hardware) est constitué par les éléments physiques


de la machine.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 19


Cours Théorie des SEs /LINUX 1ere Année CI

 Gestion du processeur :
 Le système doit gérer l'allocation du processeur aux différents
programmes pouvant s'exécuter.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 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.

ENSA FES 20/21 Page 20


Cours Théorie des SEs /LINUX 1ere Année CI

 La gestion de la Mémoire
 La mémoire est une ressource importante qui doit être gérée avec
prudence.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 Le GM doit :
 connaître les parties libres et les parties occupées de la mémoire
 allouer de la mémoire aux processus qui en ont besoin,
 récupérer la mémoire utilisée par un processus lorsque celui-ci
se termine

ENSA FES 20/21 Page 21


Cours Théorie des SEs /LINUX 1ere Année CI

 Gestion des entrées/sorties


Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 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
et les opérations de bas niveau des périphériques.

 c'est le pilote d'entrées/sorties (driver) qui assure cette


correspondance

ENSA FES 20/21 Page 22


Cours Théorie des SEs /LINUX 1ere Année CI

Fonctions d’un SE
 La gestion des fichiers

 Une des tâches fondamentales du système d’exploitation est de


Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

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.

ENSA FES 20/21 Page 23


Cours Théorie des SEs /LINUX 1ere Année CI

 Gestion de la concurrence

 Comme plusieurs programmes coexistent en mémoire principale,


Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

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 pour éviter les interblocages.

ENSA FES 20/21 Page 24


Cours Théorie des SEs /LINUX 1ere Année CI

 Gestion de la protection

 le système doit fournir des mécanismes garantissant que ses


Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ressources (CPU, mémoire, fichiers) ne peuvent être utilisées que


par les programmes auxquels les droits nécessaires ont été
accordés.

ENSA FES 20/21 Page 25


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 26


Cours Théorie des SEs /LINUX 1ere Année CI

On peut classifier les SE :


 Par la configuration matérielle :
 Un seul processeur : système monoprocesseur.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 Plusieurs processeurs : système multiprocesseur.


 Basée sur un réseau : système réseau (système distribué).

 Par la politique de partage des ressources physiques et logiques :


 Partage de la mémoire entre plusieurs programmes : système
multiprogrammé.
 Partage du temps processeur entre les programmes en exécution :
temps partagé (partage par quantum de temps) ou Temps Réel
(partage par priorité des tâches).

ENSA FES 20/21 Page 27


Cours Théorie des SEs /LINUX 1ere Année CI

 Par la capacité d’exécuter plusieurs tâches simultanément:


 La plupart des systèmes d'exploitation modernes permettent l'exécution de
plusieurs tâches à la fois ce sont des systèmes multitâches.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 C'est le cas d'UNIX, Linux et de Windows 95.

 Par le nombre d’usagers simultanés :


 Système mono-utilisateur.
 Système multi-utilisateur.
• Plusieurs utilisateurs peuvent utiliser le même système simultanément
• Chaque utilisateur possède un compte protégé par un mot de passe et
appartient à un groupe
Un système multi-utilisateurs est nécessairement multitâche mais
la réciproque est fausse.

ENSA FES 20/21 Page 28


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 29


Cours Théorie des SEs /LINUX 1ere Année CI

 Systèmes d’exploitation des PC:


 Leur rôle est de fournir une interface conviviale
 Leur travail consiste à fournir un bon support à un utilisateur unique. Ils
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

sont largement utilisés pour le traitement de texte, tableurs, jeux et accès


à Internet.
 Des exemples courants sont : Linux, FreeBSD, Windows 7, Windows 8 et
OS X d’Apple.

Mac X OS Windows Linux


APPLE Microsoft Open Source
ENSA FES 20/21 Page 30
Cours Théorie des SEs /LINUX 1ere Année CI

 Systèmes d’exploitation des serveurs :


 Ils fonctionnent sur des serveurs, qui sont soit de très gros ordinateurs
personnels, des stations de travail, voire des ordinateurs centraux.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 Ils servent plusieurs utilisateurs à la fois sur un réseau et permettent aux


utilisateurs de partager du matériel et des ressources logicielles (web,
stockage , …)
 Les systèmes d’exploitation de serveur typiques sont Solaris, FreeBSD,
Linux et Windows Server 200x.

ENSA FES 20/21 Page 31


Cours Théorie des SEs /LINUX 1ere Année CI

 Systèmes temps réel ( réactifs)


 Ces systèmes se caractérisent par le respect de strictes contraintes
temporelles.
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

 S’utilisent dans des situations spécifiques à usage industriel :


- Systèmes d’imagerie médicale
- Systèmes de contrôle industriel
- Robotique
- Aéronautique
 Exemple : RTLinux (RealTime Linux)

ENSA FES 20/21 Page 32


Cours Théorie des SEs /LINUX 1ere Année CI

 Les systèmes embarqués (enfouis)


 s'exécutent sur des ordinateurs qui contrôlent des périphériques qui ne
sont généralement pas considérés comme des ordinateurs et qui
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

n'acceptent pas les logiciels installés par l'utilisateur , comme une TV, un
four micro-onde, un téléphone portable ou un lecteur MP3 ….
 On ne peut pas modifier, ni charger un nouveau programme sur un four
micro-onde dont le programme de fonctionnement est inscrit en ROM.
 Les systèmes QNX, VxWorks sont des célèbres OS embarquées

ENSA FES 20/21 Page 33


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 34


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

applications
APPLICATIONS (jeux, outils bureautiques, …)
SYSTEME Interpréteur de commandes, Chargeur du SE
D’EXPLOITATION Noyau=GP+GM+G.E/S+SGF
Langage machine
MATERIEL Dispositifs physiques

ENSA FES 20/21 Page 35


Cours Théorie des SEs /LINUX 1ere Année CI

Structure externe d’un système d’exploitation


 Noyau
 Le noyau (kernel )d’un système d’exploitation se compose de quatre
parties principales : le gestionnaire de tâches (ou des processus,
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

GP), le gestionnaire de mémoire GM, le gestionnaire de fichiers SGF


et le gestionnaire de périphériques d’entrée-sortie G E/S.
 Le Kernel est chargé en mémoire vive à l’initialisation du système et
contient de nombreuses procédures nécessaires au bon
fonctionnement du système.

 le SE possède également deux parties auxiliaires : le chargeur du


système d’exploitation et l’interpréteur de commandes.

ENSA FES 20/21 Page 36


Cours Théorie des SEs /LINUX 1ere Année CI

Structure externe d’un système d’exploitation


 Le chargeur du système d’exploitation

 En général, de nos jours, lorsque l’ordinateur (compatible PC ou


Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

Mac) est mis sous tension, il exécute un logiciel appelé BIOS (Basic
Input Output System)
 Le BIOS est placé en mémoire ROM .
 Il effectue un ensemble de tests internes (test de la mémoire en
particulier), avant de rechercher les différents périphériques de
stockage qu'il peut détecter (disques dur, lecteur CD, clé USB).

ENSA FES 20/21 Page 37


Cours Théorie des SEs /LINUX 1ere Année CI

Structure externe d’un système d’exploitation


 Interpréteur de commandes

 Le programme qui est exécuté pour réaliser l'invite de commande


Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

(prompt) est un interpréteur de commandes (shell).


 Le shell attend que l'utilisateur tape une commande au clavier,
analyse la chaîne et affiche son résultat à l'écran.

ENSA FES 20/21 Page 38


Cours Théorie des SEs /LINUX 1ere Année CI

Système Codage Mono- Multi- Mono-tâche Multitâche


utilisateur utilisateur
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

DOS 16 bits
Windows3.1 16/32 bits
Windows95/98/Me 32 bits

WindowsNT/2000 32 bits

WindowsXP 32/64 bits


Windows7 32/64 bits
Unix / Linux 32/64 bits
MAC/OS X 32 /64 bits
Android

ENSA FES 20/21 Page 39


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 40 Page 40


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 41 Page 41


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 42 Page 42


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 43 Page 43


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 44 Page 44


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 45


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 46


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 47 Page 47


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 48 Page 48


Cours Théorie des SEs /LINUX 1ere Année CI
Systèmes d’exploitation - GTR1&SEII1- F.YAKINE

ENSA FES 20/21 Page 49

Vous aimerez peut-être aussi