système d`exploitation

publicité
Introduction aux
systèmes d'exploitation
des ordinateurs
Système
y
informatique
q
„
Définition :
… C’est
l’ensemble des matériels et logiciels
qui mettent en jjeu
destinés à réaliser des tâches q
le traitement automatique de l'information.
L objectif d’un
L’objectif
d un système informatique est
d’automatiser le traitement de l’information.
„ Un système informatique est constitué de
deux entités : le matériel et le logiciel.
g
„
Système informatique
fa x
m odem
C D -R O M
DVD
d is q u e tte
im p rim a n te
u n ité c e n tra le
m é m o ire
c e n tra le + C P U
d is q u e d u r
m a g n é tiq u e
Unité centrale
é c ra n
ta b le tte à
n u m é ris e r
s o u ris
son
c la v ie r
Rappel : fonctions de base
d’un système
y
informatique
q
„
Communication avec l'utilisateur
…
…
„
Calcul (ou traitement)
…
„
élaboration des résultats à partir des données
Séquencement
…
…
„
entrée : entrée des information à traiter : les données
sortie : communication des résultats
Les opérations sont exécutées l'une après l'autre selon un certain plan
appelé un programme.
Le choix d'une opération peut éventuellement dépendre du résultat des
opérations
é ti
précédentes
é éd t
Mémorisation
…
…
Les données et les résultats doivent pouvoir être mémorisés
La séquence des opérations à effectuer (programme) est également
mémorisée
Exploitation d’un système informatique
Système informatique : le logiciel
„
Un système informatique est composé de deux
niveaux bien distincts : le système d’exploitation
et les applications.
… L’objectif
du logiciel est d’offrir aux utilisateurs des
fonctionnalités adaptées à leurs besoins.
… Le principe est de masquer les caractéristiques
physiques du matériel.
… La solution consiste à structurer en couches le
logiciel chacune offrant des services de plus en plus
logiciel,
évolués au niveau supérieur.
Système informatique : le logiciel
Système d’exploitation
„
„
Le système d'exploitation (SE, en anglais Operating
S t
System
ou OS) estt un ensemble
bl de
d programmes
responsables de la liaison entre les ressources
matérielles
té i ll d'
d'un ordinateur
di t
(H
(Hardware)
d
) ett lles
applications de l'utilisateur (traitement de texte, jeu
vidéo...)
idé ) (Software).
(S ft
)
Il assure le démarrage de l'ordinateur, et fournit aux
programmes applicatifs des interfaces standardisées
pour l’accès aux périphériques.
Services à fournir pour l’exploitation
l exploitation
d’un système
y
informatique
q
ƒ
ƒ
ƒ
ƒ
ƒ
Gestion de la mémoire centrale
centrale,
Gestion de la mémoire de masse (disques),
Communication avec les périphériques : pilotage des
unités d'échanges,
Partage des ressources entre plusieurs usagers (pour les
systèmes multi-utilisateurs)
Communication avec l'utilisateur par l'interprétation d'un
langage
g g de commande ((shell))
S tè
Système
d’
d’exploitation
l it ti
„
Fonctions : fournir des services adaptés aux
problèmes usuels :
… la
gestion de l'information : désignation, stockage,
recherche communication
recherche,
… la préparation et la mise au point de programmes
… ll'exploitation
exploitation de programmes (applications)
„
L'ensemble des services fournis aux usagers
constitue une nouvelle machine souvent qualifiée
d'abstraite ou de virtuelle.
Interface du système
y
informatique
q
„
„
L'interface du système informatique est constituée
des outils disponibles pour accéder aux services
fournis.
fournis
Ces outils définissent le langage de la machine
abstraite
b t it quii permett aux usagers de
d communiquer
i
avec le système.
Organisation schématique d'un
d un
système
y
informatique
q
„
Les fonctions communes à une grande majorité des
applications sont réalisées par un ensemble de programmes
appelés logiciel de base.
exemples :
…
…
„
la gestion de fichiers et de répertoires (dossiers),
ll’impression
impression de documents
Un logiciel d'application réalise une application spécifique
en utilisant des services fournis par le logiciel de base.
exemples : traitement de texte, tableur
Organisation
O
i ti schématique
hé ti
d'
d'un système
tè
q : modèle en couches
informatique
Interface du système
informatique tout entier
(machine virtuelle 2)
Interface des fonctions
communes
(machine virtuelle 1)
M hi réelle
Machine
é ll
La ffrontière entre les niveaux
est assez floue :
• application
• logiciel de base
• machine
Logiciels
g
d'application
pp
Logiciel de base
Matériel
Logiciel de base et
système
y
d'exploitation
p
Dans le logiciel de base on
distingue habituellement deux
niveaux :
• les outils et services :
compilateur, chargeur, utilitaires ;
• le système d'exploitation :
couche
h inférieure,
i fé i
plus
l proche
h de
d
la machine.
Outils et services sont interchangeables et
peuvent être partiellement ou complètement absents
Par opposition le système d’exploitation est indispensable,
c’est lui qui masque le matériel
Logiciels
g
d'application
pp
Outils, services
Système
d'exploitation
Matériel
Définition du système d'exploitation
C'est l'ensemble de programmes qui
fournissent tous les services nécessaires à la
gestion de l'ordinateur.
g
Il fournit les fonctions permettant :
…
lla réalisation
é li ti
de
d la
l machine
hi virtuelle
i t ll qu'il
'il
représente,
… la gestion et le partage des ressources.
F
Fonctions
ti
du
d système
tè
d'
d'exploitation
l it ti
„
„
Gestion de l'information : structuration,
conservation,
ti
ttransfert,
f t désignation
dé i
ti d
de
l'information. Fonction réalisée par le
S tè
Système
de
d G
Gestion
ti d
de Fi
Fichiers
hi
(SGF)
(SGF).
Fonction d'exécution : exécution de
programmes en séquence, en parallèle,
composition de programmes. Fonction
réalisée par l'interprète du langage de
commande.
Fonctions du système d'exploitation
d exploitation
„
Gestion des ressources physiques
… allocation
de la mémoire principale,
… allocation de la mémoire secondaire,
… allocation des organes d'entrée-sortie,
… allocation du processeur
„
„
Partage et échange d
d'informations
informations entre usagers:
messagerie, liens symboliques, gestion des droits
d accès
d'accès.
Protection mutuelle des usagers.
Fonctions du système d'exploitation
„
Services divers :
… aide
à la mise au point de programmes (débogueurs),
… traitement des défaillances,
défaillances
… mesure du temps,
… facturation
f t ti des
d ressources,
… statistiques d'utilisation des ressources,
… mesure de performances,
… etc.
Modèle en couche
Modèle en couche
Noyau
Le noyau d’un système d’exploitation est le logiciel qui assure :
ƒ la communication entre les logiciels et le matériel ;
ƒ la gestion des divers logiciels (tâches) d’une machine :
lancement des programmes
programmes, ordonnancement
ordonnancement, … ;
ƒ la gestion du matériel : mémoire, processeur, périphérique,
g , )
stockage,…).
ƒ La majorité des systèmes d’exploitation est construite autour
de la notion de noyau. L’existence d’un noyau, c’est-à-dire
d’un programme unique responsable de la communication
entre le matériel et le logiciel, résulte de compromis
complexes
l
portant
t t sur des
d questions
ti
de
d performance,
f
de
d
sécurité et d’architecture des processeurs.
Importance du langage de commande
„
C'est un point clé du système d'exploitation, on
di ti
distingue:
… Langages
de commande textuels qui sont puissants
mais
i diffi
difficiles
il à utiliser
tili
par un utilisateur
tili t
non iinitié
itié :
Shell Windows (issu des commandes MS-DOS),
„ Shell
Sh ll UNIX
UNIX.
„
… langages
de commandes graphiques d'usage plus
simple
i l mais
i plus
l lilimités
ité :
Bureaux Windows ou MacOS,
„ X-Windows,
X Windows Gnome ou KDE sous UNIX
„
Classes de systèmes d'exploitation
d exploitation
„
Systèmes mono
mono-usager
usager
…
…
…
…
„
MS-DOS (Microsoft)
P
Premières
iè
versions
i
d
de M
MacOS
OS
Premières versions de Windows (Microsoft)
Palm OS, Windows CE (assistants personnels)
Systèmes multi-usagers
multi usagers
…
…
…
UNIX, Linux
Windows récents (NT
(NT, 2000
2000, XP
XP, Vista)
Vista), MacOS
Tous les systèmes des gros ordinateurs
("mainframes")
Exemples de systèmes
d’
d’exploitation
l it ti
L’ di t
L’ordinateur
personnell
L’ di t
L’ordinateur
personnell
ƒ
Usages :
… création,
é ti
conservation,
ti
dé
désignation
i
ti d
de fifichiers,
hi
… exécution de programmes,
… création de nouveaux programmes
programmes.
ƒ
Qualités attendues :
… efficacité
(
(bonne
exploitation
p
des capacités),
p
),
… simplicité d'utilisation,
… facilité d'extension par adjonction
„
„
de nouveaux programmes
d
de nouveaux périphériques
Système à temps partagé
Fonctions
F
ti
d’un
d’ système
tè d’ordinateur
d’ di t
personnel
+ Gestion des utilisateurs
espaces de travail, droits d’accès
+ Partage de ressources
imprimantes disques,
imprimantes,
disques etc.
etc
+ Gestion des communications
informations partagées,
comm nication entre utilisateurs
communication
tilisate rs
C t ôl d
Contrôle
de procédé
édé
Dans une usine de produits chimiques :
synthèse de C à partir de A et de B
vannes
A
B
C
capteur
signaux
de mesure
g
signaux
de commande
Enregistrement
Contrôle de procédé
p
C t ôl d
Contrôle
de procédé
édé
Le système
…p
peut
agir
g sur des organes
g
externes
… prend en compte le temps (déclenchements
périodiques de contrôles))
… enregistre de l'information : journalisation
Caractéristiques des applications "temps
temps réel"
réel
(surveillance médicale, robots, missiles, etc.)
Principale qualité attendue : la fiabilité
… le
système doit avoir un fonctionnement qui
corresponde exactement aux spécifications
spécifications.
L systèmes
Les
tè
à ttransactions
ti
Exemples :
„ Systèmes de réservation de places dans
d ttrains
des
i ou d
des avions,
i
„ Systèmes
y
d'achat à distance.
L systèmes
Les
tè
à ttransactions
ti
Fonctions :
… gère
un ensemble d'informations ou une base
de données de taille importante,
… exécution d'un certain nombre d'opérations
prédéfinies,, ou transactions,, portant
p
p
sur ces
informations ; opérations souvent interactives,
… grand nombre de points d'accès
d accès et grand
nombre de transactions simultanées.
Les systèmes à transactions
Qualités attendues :
…
…
…
disponibilité : les temps de réponse doivent
satisfaisants,
satisfaisants
fiabilité,
robustesse : capacité de tolérer des pannes.
Historique
Évolution des systèmes
d’exploitation
d
exploitation (à travers les âges)
Historique
q
L’histoire des systèmes d’exploitation permet
de dégager des concepts de base que l’on
retrouve dans les systèmes actuels :
„ le traitement par lots
„ la multiprogrammation
„ le temps partagé
Historique
Historique
Historique
Traitement p
par lots ((E/S tamponnées)
p
)
ƒ
ƒ
ƒ
Un moniteur d’enchaînement permet
d’exécuter en séquence une série de travaux
préparés
p
p
à l’avance ((les lots).
)
Ce mode de travail est aussi appelé
« batch
b t h processing
i system
t
»
Traitement p
par lots ((E/S tamponnées)
p
)
ƒ Protection de l’ensemble des travaux de
perturbations en cas d’erreur :
ƒ limitation du temps d’exécution,
d exécution,
ƒ supervision des entrées/sorties
ƒ protection de la mémoire occupée par le moniteur
d’enchaînement
ƒ Usage d’une horloge et d’instructions
p
privilégiées
g
Historique
La multiprogrammation
p g
ƒ
ƒ
C’est le partage de la mémoire
entre
t plusieurs
l i
ttravaux en
cours simultanément.
Permet de mieux utiliser le
processeur p
p
pendant les
entrées/sorties (qui sont
gérées p
g
par les unités
d’échange)
Mémoire
Système d’exploitation
d exploitation
Tâche A
Tâche B
Tâche C
Mémoire disponible
La multiprogrammation
p g
ƒ
ƒ
ƒ
Principe :
Un travail en attente peut utiliser le processeur
libéré par un travail qui effectue une opération
d’entrée/sortie.
L processeur peutt changer
Le
h
d’
d’affectation
ff t ti
avant la fin d’un travail pour satisfaire des
contraintes de temps de réponse.
La multiprogrammation
p g
ƒ Pour que cela fonctionne :
ƒ le temps de réaffectation doit être très bref
ƒ il y a présence simultanée en mémoire de
plusieurs programmes ou morceaux de
programme.
ƒ Rôle central de la mémoire
ƒ Importance des flux entre mémoire centrale et
mémoire secondaire
La multiprogrammation
p g
ƒ Des dispositifs spéciaux de réimplantation des
programmes et de protection de la mémoire
sont nécessaires.
ƒ Apports :
ƒ meilleure
ill
utilisation
tili ti d
des ressources : meilleur
ill
équilibre de charge
ƒ réduction du temps de réponse pour les travaux
courts
Temps
p p
partagé
g
ƒ
ƒ
ƒ
Fonction : Partager
g le temps
p de calcul du
processeur et les autres services ou
( ) , afin d’offrir à
ressources commun(e)s,
chaque usager l’équivalent d’une
ac e individuelle.
d due e
machine
Accès au système par des terminaux,
Utilisation interactive
interacti e du
d ssystème.
stème
Temps
p p
partagé
g
Nécessité de garantir un temps de réponse
acceptable pour l’exécution de tâches
élémentaires.
élémentaires
Principe : allocation du processeur aux
programmes des usagers par tranches de
p très brèves ou q
quanta.
temps
Temps
p p
partagé
g
ƒ
ƒ
Problème de la taille de la mémoire centrale :
celle-ci ne peut héberger tous les programmes
en cours de tous les usagers : utilisation de
mémoire virtuelle.
L machines
Les
hi
sontt é
équipées
i é d
de tterminaux
i
graphiques sur lesquels on peut suivre
l’évolution de plusieurs activités dans des
fenêtres distinctes.
Historique
Historique
Situation actuelle
Le Client-Serveur généralisé et mondialisé
ƒ Services Web
ƒ Accès à des bases de
données
ƒ Accès à des plateformes
f
fournissant
i
t des
d ressources
et des services (bureau
virtuel)
ƒ Ressources disponibles de
n’importe où sur Internet
= cloud computing
Cloud Computing :
l’informatique
q dans les nuages
g
„
„
Le "cloud computing" consiste pour les entreprises à
externaliser leurs ressources numériques
numériques. Ces
ressources – serveurs offrant des capacités de calcul,
du stockage, logiciels de messagerie électronique, de
paie
i – sontt mises
i
à di
disposition
iti par d
des sociétés
iété
tierces et accessibles, grâce à un système
d'identification
d
identification, via un PC et une connexion à Internet
Internet.
Il pourrait provoquer une vraie révolution dans le
secteur informatique.
q
Pour beaucoup
p d'acteurs,, il
implique un changement complet de modèle
économique. Jusqu'à présent, c'est la vente de
logiciels et de matériel qui prévalait
prévalait. Là
Là, c'est
c est la
location qui s'impose.
Organisation d’un
d un système
d’exploitation
p
mono-usager
g simple
p
I.L.C.
C
ƒ
SGF
S.G.F
ƒ
E.S.P
ƒ
Machine ƒ
Interprète
p
du langage
g g de
commande
système de gestion des
fichiers
Entrées-sorties primitives
(physiques)
(p
y q
)
Machine physique
Exemple :
Organisation
g
du système
y
MS-DOS
I.L.C.
C
SGF
S.G.F
E.S.P
Machine
ƒ
l’interprète est le fichier
COMMAND COM
COMMAND.COM
ƒ
ƒ
ƒ
Disk Operating
p
g System
y
((MSDOS)
Basic Input Output System
(BIOS)
Machine physique
Organisation d’un
d un système
d’exploitation
p
multi-usagers
g
ƒ
ƒ
Machine virtuelle dont le comportement est
simulé
i lé pour l’usager.
l’
La machine simulée est un sous-ensemble de
la machine physique, excluant les instructions
privilégiées
p
g
et les accès directs aux
périphériques et à certaines zones de la
mémoire réservées au système.
y
Exemple actuel: les serveurs de terminaux
Organisation d’un
d un système
d’exploitation
p
multi-usagers
g
ƒ
ƒ
Certains systèmes réalisent des machines
virtuelles complètes, ce qui permet de
pp des systèmes
y
d’exploitation
p
développer
destinés à cette machine.
Soit « USR » la machine virtuelle simulée
simulée.
Organisation d’un
d un système
d’exploitation
p
multi-usagers
g
I.L.C.
I.L.C.
I.L.C.
USR
USR
USR
Gestionnaire de
mémoire virtuelle
S.G.F
MEM
G.M.S.
E.S.P
Allocation des
ressources p
physiques
y q
Noyau
Machine
Gestion de la
mémoire secondaire
Téléchargement