Vous êtes sur la page 1sur 31

NOTIONS FONDAMENTALES

DES SYSTÈMES
D’EXPLOITATION

Responsables du cours:

Dr. Mabrouka CHOUCHANE JAIDI


Docteur en Informatique
Assistante à ISG de Gabès

Année universitaire 2021/2022


PLAN DU COURS

1. Notion fondamentales du systèmes d’exploitation


2. Gestion de processeur
3. Synchronisation du processus
4. Allocations de la mémoire

2
2. QU’EST-CE QU’UN SYSTEME D’EXPLOITATION (1)

 Un ordinateur est constitué : Utilisateur 1 Utilisateur 2 … Utilisateur N

1. Du matériel Compilateur Editeur Base de données


Applications
 Dispositifs physiques
Système d’exploitation
 Langage machine
2. D’un système d’exploitation
Matériel
3. De programmes
 Programmes système
 Programmes d’applications

3
2. QU’EST-CE QU’UN SYSTEME D’EXPLOITATION (2)

Le matériel (Hardware): Les dispositifs physiques constituent la couche


la plus basse du matériel.

 le processeurs,
 la mémoire principale,
 des disques,
 des imprimantes
 des interfaces de connexion réseau ,
…

4
2. QU’EST-CE QU’UN SYSTEME D’EXPLOITATION (3)

Le système d’exploitation (Operating System ou OS ou SE):


c’est le plus important des programmes systèmes :
1. Il contrôle les ressources de l’ordinateur.
2. Il libère le programmeur de la complexité du matériel.
Il se compose:
 D’un noyau (kernel): partie la plus critique d’un OS. Il permet aux éléments
matériel et logiciel de communiquer entre eux, de fonctionner ensemble et de
former un tout. Pour ces raisons, il est le premier logiciel chargé en mémoire.
 Des outils système: partie permettant à l’utilisateur de tirer profit de l’OS, de
gérer les périphériques, les configurer …En bref, ils fournissent une interface
d’accès au système.
Exemple de tâche:
 LIRE UN BLOC DU FICHIER, … 5
2. QU’EST-CE QU’UN SYSTEME D’EXPLOITATION (4)

Les programmes (Software, applications): ils sont écrits


 par les utilisateurs
 ou par les éditeurs de logiciels

 But: résoudre des problèmes spécifiques tels que:


 le traitement des données commerciales,
 les calculs scientifiques,
 etc.

6
3. LA DOUBLE FONCTION D’UN SYSTÈME
D’EXPLOITATION

 Un système d’exploitation permet de répondre à deux


besoins qui ne sont pas forcément liés :

1. le système d’exploitation en tant que machine étendue (ou


« machine virtuelle »),

2. le système d’exploitation en tant que gestionnaire de ressources.


 Exemple de systèmes d’exploitation:
 Linux, Mac OS, Windows 9X, Me, 2000, XP, MS-DOS, MINIX, etc.
7
3.1 EN TANT QUE MACHINE ÉTENDUE
 Le système d’exploitation correspond à « l’interface » entre les
applications et le matériel.

 De ce point de vue le système d’exploitation peut être assimilé à


une machine étendue ou virtuelle plus facile à programmer ou à
utiliser que le matériel :

 Un programmeur va utiliser le système d’exploitation par


l’intermédiaire “ d’appels système ”.

 Un utilisateur peut lui aussi – dans une certaine mesure – manipuler


un système d’exploitation, sans pour autant avoir à créer un
programme (commandes shell). 8
3.2 EN TANT QUE GESTIONNAIRE DE RESSOURCES
 Les différents composants d’un ordinateur doivent coopérer et
partager des ressources.

 Dans cette optique, le travail du système d’exploitation


consiste à :
 ordonnancer,
 contrôler l’allocation des ressources :
 processeurs,
 mémoires,

 périphériques d’E/S,

 ...

entre les différents programmes qui y font appel.

9
3.2 EN TANT QUE GESTIONNAIRE DE RESSOURCES
(3)
 Pour chacune des ressources d’un ordinateur, le système
d’exploitation doit :
 connaître à tout moment l’utilisateur de la ressource,
 en accorder l’usage de manière équitable,
 éviter les conflits d’accès entre les différents programmes ou
utilisateurs.

 Les deux tâches essentiels du Système d’exploitation en tant


que gestionnaire des ressources sont :
 Le partage des ressources.
 La protection de l'accès aux ressources.

10
4. LES FONCTIONS DE BASE D’UN SYSTÈME
D’EXPLOITATION

1. La gestion des processus


 qui correspondent à l’exécution des programmes.
2. La gestion de la mémoire
 qui permet de gérer les transferts entre les mémoires principale et secondaire.
3. Le système de fichiers
 qui offre à l’utilisateur une vision homogène et structurée des données et des
ressources : disques, périphériques.
4. Les entrées-sorties
 qui correspondent aux mécanismes qu’utilisent les processus pour
communiquer avec l’extérieur.

11
4. AUTRES FONCTIONS D’UN SYSTÈME
D’EXPLOITATION

 Les réseaux d’ordinateurs


 avec les protocoles de communication, d’interconnexion et d’application.

 Les systèmes répartis


 avec les protocoles d’appels de procédures à distance (RPC)
 ou les objets distribués.

 Les systèmes de fenêtrage graphiques.

12
5. LES DIFFÉRENTS TYPES D’ARCHITECTURE DE
SYSTÈMES D’EXPLOITATION
 Porte ouverte ou exploitation self service (1945-1955)
 Les machines de la 1ère génération appelées Machines à Tubes, étaient
dépourvues de tout logiciel. Les programmes utilisateurs étaient
exécutés depuis un pupitre de commande.

 Ces machines étaient énormes, remplissaient les salles avec des


centaines de tubes à vide (Vacuum Tubes).

 Au début de 1950, la procédure s'est améliorée grâce à l'introduction de


cartes perforées.

 Les périphériques d’entrée/sortie en ce temps étaient respectivement le


lecteur de cartes perforées et l’imprimante. 13
Utilisation de la machine en Porte Ouverte

 Inconvénients
✓ Temps perdu dans l’attente pour lancer l’exécution d’un programme.
✓ Vitesse d’exécution de la machine limitée par la rapidité de l’opérateur qui
appuie sur les boutons et alimente les périphériques.
✓ Pas de différences entre : concepteurs ; constructeurs ; programmeurs
;utilisateurs ; mainteneurs.

14
 Traitement par lots (Batch Processing, 1955-1965) :
 Ce sont des systèmes réalisant le séquencement des jobs ou travaux selon
l’ordre des cartes de contrôle à l’aide d’un moniteur d’enchaînement.

 L’objectif était de réduire les pertes de temps occasionnées par l’oisiveté du


processeur entre l’exécution de deux jobs ou programmes durant cette
période il y a eu apparition des machines à transistor avec unités de bandes
magnétiques, donc évolution des ordinateurs.

 L’idée directrice était de collecter un ensemble de travaux puis de les


transférer sur une bande magnétique en utilisant un ordinateur auxiliaire
(Ex.IBM 1401). Cette bande sera remontée par la suite sur le lecteur de
bandes de l’ordinateur principal.

 Les résultats seront récupérés sur une autre bande pour qu’ils soient
imprimés par un ordinateur auxiliaire.
15
Système de traitement par lots

 Inconvénients
✓ Perte de temps dû à l’occupation du processeur durant les opérations d’E/S. (En
effet, le processeur restait trop inactif, car la vitesse des périphériques
mécaniques était plus lente que celle des dispositifs électroniques).
✓ Les tâches inachevées sont abandonnées.

16
17
 Multiprogrammation (Multiprogramming, 1965-1970) :

 L'introduction des circuits intégrés dans la construction des machines a permis


d'offrir un meilleur rapport coût/performance.

 L’introduction de la technologie des disques a permis au système d’exploitation


de conserver tous les travaux sur un disque, plutôt que dans un lecteur de cartes
(Arrivée des unités disques à stockage important et introduction de canaux
d’E/S).

 L’idée était alors, pour pallier aux inconvénients du traitement par lots, de
maintenir en mémoire plusieurs travaux ou jobs prêts à s’exécuter, et partager
efficacement les ressources de la machine entre ces jobs.

18
19
 Le principe de Spooling :

L’arrivée sur le marché des unités de disques (et des tambours


magnétiques à des prix abordables).

 Les jobs sont lus et stockés sur disque au fur et à mesure de


leur soumission aux opérateurs : C’est la notion de
SPOOLING (Simulatneous Peripheral Operation On-Line).
 Le SPOOL consiste à créer des fichiers-disque qui
correspondent aux jobs soumis et qui sont utilisés par le
moniteur au moment de l’exécution, à la place des supports
d’informations lents.

20
 Exemple de multiprogrammation :

Pour les deux jobs A et B :

 On suppose qu’on a un seul périphérique d’E/S.

21
 Système mono-programmé :

22
 Système multiprogrammé :

23
 Temps partagé (Time Sharing, 1970-) :

 C’est une variante du mode multiprogrammé où le temps CPU est


distribué en petites tranches appelées quantum de temps.

 L’objectif est d’offrir aux usagers une interaction directe avec la


machine par l’intermédiaire de terminaux de conversation, et de
leur allouer le processeur successivement durant un quantum de
temps, chaque utilisateur aura l’impression de disposer de la
machine à lui tout seul.

 Il peut aussi contrôler le job qu’il a soumis directement à partir du


terminal (corriger les erreurs, recompiler, resoumettre le job, …)

24
25
COMPOSANTS D’UN SYSTÈME
D’EXPLOITATION
 Plusieurs SE modernes possèdent les composants
suivants :
- Gestion de processeurs.
- Gestion mémoire principale.
- Gestion mémoire auxiliaire.
- Gestion du système d’entrée/sortie.
- Gestion des fichiers.
- Système de protection.
- Gestion de réseaux.
- Système interpréteur de commande.

26
CLASSIFICATION DES SE
Selonles services rendus :
Système mono tâche : A tout instant, un seul programme est exécuté. Un autre
programme ne démarrera –sauf conditions exceptionnelles- que lorsque le premier sera
terminé.

Multitâche : Capacité du système à pouvoir exécuter plusieurs processus (i.e


programmes en cours d’exécution) simultanément (système multiprocesseurs) ou en
pseudo-parallélisme (système en time sharing).

Multi-utilisateurs : Capacité du système à pouvoir gérer un ensemble


d’utilisateurs utilisant simultanément les mêmes ressources matérielles. Un SE ne
possédant pas cette fonctionnalité est dit mono-utilisateur.

Systèmes temps réel :Un système à temps réel est utilisé quand il existe des
exigences impérieuses de temps de réponse pour le fonctionnement d’un processeur ou
pour le jeu de données.
27
 Selon leur architecture

Systèmes centralisés (traditionnels): L’ensemble du système est


entièrement présent sur la machine considérée. Les machines
éventuellement reliées sont vues comme des entités étrangères
disposant elles aussi d’un système centralisé.

Systèmes distribués (répartis): Une tendance récente dans les


systèmes informatiques consiste à répartir le calcul entre plusieurs
processeurs. A l’opposé des systèmes centralisés, dans les
systèmes répartis on ne partage pas de mémoire ou d’horloge. Les
processeurs communiquent entre eux à travers des lignes de
communication, comme des bus rapides ou des lignes
téléphoniques.

28
 Selon leur capacité à évoluer :
Systèmes fermés (ou prioritaires): Quand on veut rajouter des
fonctionnalités à un système fermé, il faut remettre en cause sa
conception et refaire une archive (système complet). C'est le
cas d'UNIX, MSDOS.
Systèmes ouverts: Il est possible de rajouter des fonctionnalités
et des abstractions sans avoir à repenser le système et même
sans avoir à l'arrêter sur une machine. Cela implique souvent
une conception modulaire basée sur le modèle
«client/serveur». Cela implique aussi une communication
entre systèmes, nécessitant des modules spécialisés.

29
 Selon l’architecture matérielle qui les supporte :

Architecture monoprocesseur (time sharing ou


multiprogrammation) .
Architecture multiprocesseurs (parallélisme).

30
5. AUTRE CLASSIFICATION DES OS
 OS temps partagé: garantir le partage équitable du temps
processeur et des ressources dans le but de maximiser le temps de
traitement et de réduire le temps de réponse moyen.
 OS temps réel: garantir les temps de réponse
 Systèmes à contraintes souples/molles: systèmes acceptant des variations
minimes de temps de réponse (systèmes multimédias)
 Systèmes à contraintes dures: gestion stricte du temps pour conserver
l’intégrité du système (déterminisme logique et temporel et fiabilité)
 OS embarqué: OS prévus pour fonctionner sur des machines de
petite taille, (PDA ou des appareils électroniques autonomes:
sondes spatiales, robot, ordinateur de bord, etc.), possédant une
autonomie réduite  gestion avancée de l'énergie + ressources
limitées.

31

Vous aimerez peut-être aussi