Vous êtes sur la page 1sur 8

Introduction aux systmes

dexploitation
Partie 1: Introduction

Jalil BOUKHOBZA
UBO / Lab-STICC
Email : boukhobza@univ-brest.fr

Partie 1 : Introduction

PLAN DU COURS
1.
2.

Introduction aux systmes dexploitation


Les processus
1.
2.
3.
4.

3.

La structure des processus


Lexclusion
L
exclusion mutuelle
Communication inter processus
Ordonnancement des processus

La gestion de la mmoire

Cours
daujourdhui
Cours 2
Cours 3
Cours 4

Partie 1 : Introduction

Partie 1 : Introduction

1.
2.
3.
3
4.

5.

6.

Prambule
Quest-ce quun systme dexploitation ?
La
a doub
double
e fonction
o c o d
dun
u sys
systme
ed
dexploitation
e po a o
Dcomposition fonctionnelle dun systme
dexploitation
Les diffrents types darchitecture de systmes
dexploitation
Autre classification des OS

Partie 1 : Introduction

1. PREAMBULE

Ce cours a pour objet de :


z dcrire le rle et le fonctionnement dun du systme dexploitation
mono-processeur et multi-tches
z Apprendre manipuler certains concepts de base

Ces concepts de base seront essentiellement illustrs au


travers du systme UNIX/Linux qui est un systme :

trs homogne,
trs riche,
trs souple.

z
z
z

Partie 1 : Introduction

2. QUEST-CE QUUN SYSTEME DEXPLOITATION (1)

Un ordinateur est constitu :

Utilisateur 1

Du matriel.

1.

Compilateur

Dispositifs
f physiques
Langage machine

Utilisateur 2

Editeur

Utilisateur N

Base de donnes

Applications
Systme dexploitation

Dun systme dexploitation.

2.

Matriel

De programmes.

3.

Programmes systme
Programmes dapplications

Partie 1 : Introduction

2. QUEST-CE QUUN SYSTEME DEXPLOITATION (2)


Le matriel (Hardware): Les dispositifs physiques constituent la
couche la plus basse du matriel.
z
z
z
z
z
z

le processeurs,
la mmoire principale
principale,
des disque,
des imprimantes
des interfaces de connexion rseau ,

Partie 1 : Introduction

2. QUEST-CE QUUN SYSTEME DEXPLOITATION (3)


Le systme dexploitation (Operating System ou OS ou
SE): cest le plus important des programmes systmes :
1.
2.

Il contrle les ressources de lordinateur.


Il libre le programmeur de la complexit du matriel.

Il se compose:
z

Dun noyau (kernel): partie la plus critique dun OS. Il permet aux lments
matriel et logiciel de communiquer entre eux, de fonctionner ensemble et de
former un tout. Pour ces raisons, il est le premier logiciel charg en mmoire.

Des outils systme: partie permettant lutilisateur de tirer profit de


lOS, de grer les priphriques, les configurer En bref, ils fournissent
une interface daccs au systme.

Exemple de tche:
z

LIRE UN BLOC DU FICHIER,


Partie 1 : Introduction

2. QUEST-CE QUUN SYSTEME DEXPLOITATION (4)

Les programmes (Software, applications): ils sont


crits
z
z

par les utilisateurs


ou par les diteurs de logiciels

But: rsoudre des problmes spcifiques tels que:


z
z
z

le traitement des donnes commerciales,


les calculs scientifiques,
etc.

Partie 1 : Introduction

3. LA DOUBLE FONCTION DUN SYSTME


DEXPLOITATION

Un systme dexploitation permet de rpondre deux


besoins qui ne sont pas forcment lis :
z

le systme dexploitation en tant que machine tendue (ou


machine virtuelle ),

le systme dexploitation en tant que gestionnaire de


ressources.

Exemple de systmes dexploitation:


z

Linux, Mac OS, Windows 9X, Me, 2000, XP, MS-DOS, MINIX,
etc.
Partie 1 : Introduction

3.1 En tant que machine tendue


z

Le systme dexploitation correspond linterface entre les


applications et le matriel.

De ce point de vue le systme dexploitation peut tre assimil


une machine tendue ou virtuelle plus facile programmer ou
utiliser que le matriel :
z

Un programmeur va utiliser le systme dexploitation par


lintermdiaire dappels systme .

Un utilisateur peut lui aussi dans une certaine mesure manipuler


un systme dexploitation, sans pour autant avoir crer un
programme (commandes shell).
Partie 1 : Introduction

10

3.2 En tant que gestionnaire de ressources


z

Les diffrents composants dun ordinateur doivent cooprer et


partager des ressources.

Dans cette optique, le travail du systme dexploitation


consiste :
z
z

ordonnancer,
contrler lallocation des ressources :
z processeurs,
z mmoires,
z priphriques dE/S,
z ...

entre les diffrents programmes qui y font appel.


Partie 1 : Introduction

11

3.2 En tant que gestionnaire de ressources (2)


Exemple : Gestion des impressions
Edition
Fic1

SPOOL
Impression

Edition
Fic2

Fic2

Fic1

Imprimante

Partie 1 : Introduction

12

3.2 En tant que gestionnaire de ressources (3)


z

Pour chacune des ressources dun ordinateur, le systme


dexploitation doit :
z
z
z

connatre tout moment lutilisateur de la ressource,


en accorder lusage de manire quitable,
viter les conflits daccs entre les diffrents programmes ou
utilisateurs.
tili t

Les deux tches essentiels du Systme dexploitation en tant


que gestionnaire des ressources sont :
z
z

Le partage des ressources.


La protection de l'accs aux ressources.

Partie 1 : Introduction

13

4. LES FONCTIONS DE BASE DUN SYSTME


DEXPLOITATION
La gestion des processus

1.
z

qui correspondent lexcution des programmes.

La gestion de la mmoire

2.
z

qui permet de grer les transferts entre les mmoires principale et


secondaire.

Le systme de fichiers

3.
z

qui offre lutilisateur une vision homogne et structure des donnes


et des ressources : disques, priphriques.

Les entres-sorties

4.
z

qui correspondent aux mcanismes quutilisent les processus pour


communiquer avec lextrieur.

Partie 1 : Introduction

14

4. Autres fonctions dun systme dexploitation


z

Les rseaux dordinateurs


z

Les systmes rpartis


z
z

avec les protocoles de communication, dinterconnexion et dapplication.

avec les
l protocoles
t
l d
dappels
l d
de procdures
d
di
distance
t
(RPC)
ou les objets distribus.

Les systmes de fentrage graphiques.

Partie 1 : Introduction

15

5. Les diffrents types darchitecture de systmes


dexploitation
z

Diffrents types de systmes dexploitation:


z
z
z
z
z

Monolithiques
Modulaire / Multicouches
Micronoyaux
Exonoyaux
Machine virtuelle

Le noyau est gnralement excut dans un espace mmoire spar de


lespace des applications: espace noyau. Par opposition lespace
utilisateur. Le passage entre ces deux espaces se fait via des appels
systmes. Lintrt de cette sparation est que le systme ne crash/se
plante pas si une application plante.

Partie 1 : Introduction

16

OS Monolithiques
z

z
z
z

z
z

Un seul bloc contenant


lensemble des services
systme (mode noyau).
Usine gaz !!
Facilit de conception
Performance peut tre au
RDV
Code dur maintenir
Dos, trs vieux UNIX et
Linux, etc.

Application

service

Application

service

service

Application

service

service

service

service

service

Systme
dexploitation

Matriel

Partie 1 : Introduction

17

OS Multicouches
z

OS organis en hirarchie de
couches. Chacune construite
sur la base des services offerts
par la couche infrieure.
Facilit de conception et de
d l
dveloppement
t
Code plus organis et
maintenable.
Chargement des
fonctionnalits la demande
Linux, BSD, SOLARIS

Application

service

Application

Application

service

service

Systme
dexploitation
service

service

service

service

service

Matriel
Partie 1 : Introduction

18

OS Micronoyau
z

Dplace plusieurs fonctions de lOS vers des processus serveur sexcutant en


mode utilisateur  rduction au maximum de la taille du code privilgi (en mode
noyau).
But: grer les communications entre applications et serveurs pour:
z
z

z
z

Renforcer la politique de scurit


Permettre lexcution de fonctions systme (accs aux registres dE/S, etc.).

Fi
bilit augmente:
t sii un processus serveur crash
h , lle systme
t
ti

Fiabilit
continue
fonctionner et il est possible de relancer ce service sans redmarrer.
Modle facilement tendu des systmes distribus
MAC OS X, GNU HURD, WindowsNT

Processus
client

Processus
client

Processus
serveur

Serveur de
terminaux

Serveur de
fichiers

Serveur de
mmoire

Mode utilisateur

Micronoyau

Mode noyau

Source: Systmes
19
dexploitation , Andrew
Tanenbaum, 2me dition, Pearson
Education 2001

Partie 1 : Introduction

OS Exonoyaux

z
z
z
z

Le noyau se contente de
multiplexer et protger laccs aux
ressources. Tout le traitement
quon trouve habituellement dans
un noyau (mmoire virtuelle,
systme de fichiers, ...) est dlgu
lespace
p
utilisateur via des
bibliothques appeles LibOS.
Plusieurs LibOS peuvent tre
utilises en parallle.
Gain de performance
Pb de scurit
Isolation de bugs
Domaine encore balbutiant. XOK
coupl ExOS comme LibOS (MIT).

Application

LibOS

Application

LibOS

Application

Espace u
utilisateur

LibOS

exonoyau

Matriel

Partie 1 : Introduction

20

Possibilit de mettre
plusieurs OS sur une
machine physique.
Le moniteur de machine
virtuelle
i t ll (h
(hyperviseur)
i
)
intercepte les instructions
privilgies envoyes par
lOS invit, les vrifie
(politique de scurit) et les
excute.
XEN, VMWare, QEMU

Machine Virtuelle

OS Machine virtuelle

Partie 1 : Introduction

Application

Application

Systme
dexploitation
invit

Application

Application

Systme
dexploitation
invit

Moniteur de machine virtuelle


Systme dexploitation hte
Couche matriel

21

5. Autre classification des OS


z

OS temps partag: garantir le partage quitable du temps


processeur et des ressource dans le but de maximiser le temps de
traitement et de rduire le temps de rponse moyen.
OS temps rel: garantir les temps de rponse
z

Systmes contraintes souples/molles: systmes acceptant des variations


minimes de temps de rponse (systmes
(s stmes multimdias)
m ltimdias)
Systmes contraintes dures: gestion stricte du temps pour conserver
lintgrit du systme (dterminisme logique et temporel et fiabilit)

OS embarqu: OS prvus pour fonctionner sur des machines de


petite taille, (PDA ou des appareils lectroniques autonomes:
sondes spatiales, robot, ordinateur de bord, etc.), possdant une
autonomie rduite J gestion avance de l'nergie + ressources
limites.
Partie 1 : Introduction

22

Structure du cours
Sance (2h30)

Contenu

Cours: Introduction aux OS + notions de processus

TD/TP: Processus

TP: manipulation de processus

Cours: Exclusion mutuelle

TD: Exclusion mutuelle et smaphores

TP: Smaphores

Cours: Communication inter processus et ordonnancement

TD: Communication inter-processus

TP: Smaphore 2

10

Cours: Gestion de la mmoire

11

TD: Gestion de la mmoire

12

TP: File de messages et mmoire partage


Partie 1 : Introduction

23