Syst mes d'exploitation
Chapitre1: Introduction
Introduction (1)
} Deux cat gories de logiciels :
} Les programmes syst mes pour le fonctionnement des
ordinateurs,
} les programmes d'application qui r solvent les probl mes des
utilisateurs.
Introduction (2)
} Le programme syst me d'exploitation est le
programme fondamental des programmes syst mes.
} Il contr le les ressources de l'ordinateur et fournit la
base sur laquelle seront construits les programmes
d'application.
D finition
} Le syst me d'exploitation est l'ensemble de
programmes centraux d'un syst me informatique qui
coordonne et uniformise l'utilisation du mat riel par les
logiciels applicatifs.
} Il sert d'interm diaire entre les logiciels applicatifs et le
mat riel et offre une mani re unifi e d'exploiter les
p riph riques de l'ordinateur par l'interm diaire
dinterfaces de programmation banalis es.
D finition (suite)
} Un syst me d'exploitation sert:
} coordonner l'utilisation du ou des processeurs, et accorder
un certain temps pour l'ex cution de chaque processus;
} r server de l'espace dans les m moires pour les besoins des
programmes
} et organiser le contenu des disques durs ou d'autres
m moires de masse en fichiers et r pertoires.
Modes de fonctionnement
} Deux modes de fonctionnement :
} Le mode noyau ou superviseur et
} le mode utilisateur (compilateur, diteur, programmes
utilisateurs ...).
Composition dun ordinateur
} Un ordinateur contient :
} Un ou plusieurs processeurs,
} une m moire principale,
} des horloges,
} des terminaux,
} des disques,
} des interfaces de connexion des r seaux et
} des p riph riques d'entr es/sorties.
R le dun SE
La complexit vidente du
mat riel implique la r alisation
d'une machine virtuelle qui g re le
mat riel :
c'est le syst me d'exploitation.
Couche : Mat riel
Advertisement
} Dispositifs physique = Ils se composent de circuits
int gr s, de fils lectriques, de p riph riques physiques ...
} Microprogramme = C'est un logiciel de contr le des
p riph riques (interpr te).
} Langage machine = C'est un ensemble (entre 50 et
300) d'instructions l mentaires (ADD, MOVE, JUMP)
pour effectuer le d placement des donn es, des calculs,
ou la comparaison de valeurs ( galement appel
ASSEMBLEUR)
Fonctions dun SE
} DEUX FONCTIONS:
} MACHINE ETENDUE ou VIRTUELLE
} GESTIONNAIRE de RESSOURCES
Machine tendue
ou encore machine virtuelle
Son r le est de masquer des l ments fastidieux li s au
mat riel, comme les interruptions, les horloges, la gestion de
la m moire, la gestion des p riph riques (d placement du
bras du lecteur de disquette) ...
Gestionnaire de ressources
} Un ordinateur se compose de ressources (p riph riques,
m moires, terminaux, disques ...).
} Le syst me d'exploitation permet l'ordonnancement et le
contr le de l'allocation des processeurs, des m moires et
des p riph riques d'E/S entre les diff rents programmes
qui y font appel.
Exemples
} Par exemple 3 programmes essaient d'imprimer
simultan ment leurs r sultats sur une m me imprimante :
=> recours un fichier tampon sur disque.
} Autre exemple, l'acc s concurrent une donn e ; lecture
et criture concurrentes (par deux processus) sur un
m me compteur.
Ce r le de gestionnaire de ressources est crucial pour
les syst mes d'exploitation manipulant plusieurs
t ches en m me temps (multit ches).
Plusieurs fonctionalit s de gestion
} du processeur : allocation du processeur aux diff rents
programmes.
} des objets externes : principalement les fichiers.
} des entr es/sorties : acc s aux p riph riques, via les pilotes.
} de la m moire : segmentation et pagination.
} de la concurrence : synchronisation pour l'acc s des
ressources partag es.
} de la protection : respect des droits d'acc s aux ressources.
} des acc s au r seau : change de donn es entre des
machines distantes.
Les diff rentes classes de syst mes
d'exploitation
} Selon les services rendus
} Selon leur architecture
} Selon leur capacit voluer
Advertisement
} Selon l'architecture mat rielle qui les supporte
Selon les services rendus
} mono/multi t ches :
Multit ches : capacit du syst me pouvoir ex cuter
plusieurs processus simultan ment ;
} mono/multi-utilisateurs :
Multiutilisateurs : capacit pouvoir g rer un
ensemble d'utilisateurs utilisant simultan ment les m mes
ressources mat rielles.
Selon leur architecture
Syst mes centralis s :
} 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 .
} Le syst me ne g re que les ressources de la machine sur
laquelle il est pr sent.
Selon leur architecture (2)
Syst mes r partis (distributed systems) :
} Les diff rentes abstractions du syst me sont r parties sur
un ensemble (domaine) de machines (site).
} Avec un syst me r parti, l'utilisateur n'a pas se soucier de
la localisation des ressources. Quand il lance un
programme, il n'a pas conna tre le nom de la machine qui
l'ex cutera.
} Ils offrent des solutions aux probl mes de la r sistance aux
pannes.
Selon leur capacit voluer
Syst mes ferm s (ou propri taires) :
} Extensibilit r duite : 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).
} Il n'y a aucun ou peu d' change possible avec d'autres
syst mes de type diff rent, voir m me avec des types
identiques.
Selon leur capacit voluer (2)
Syst mes ouverts :
} Extensibilit accrue : 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 clients-serveur .
} Cela implique aussi une communication entre syst mes,
n cessitant des modules sp cialis s.
Selon l'architecture mat rielle qui les
supporte
Architecture monoprocesseur (temps partag ou
multiprogrammation):
} Ressource processeur unique : Il a fallu d velopper un
Advertisement
m canisme de gestion des processus pour offrir un
(pseudo) parall lisme l'utilisateur : c'est la
multiprogrammation;
} Il s'agit en fait d'une commutation rapide entre les
diff rents processus pour donner l'illusion d'un
parall lisme.
Selon l'architecture mat rielle qui les
supporte (2)
Architectures multiprocesseurs (parall lisme) :
} On trouve une grande vari t d'architectures
multiprocesseurs :
} SIMD (Single Instruction Multiple Data) : Tous les processeurs
ex cutent les m mes instructions mais sur des donn es
diff rentes.
} MIMD (Multiple Instructions Multiple Data) : Chaque
processeur et compl tement ind pendant des autres et
ex cute des instructions sur des donn es diff rentes.
} Pipeline : Les diff rentes unit s d'ex cution sont mises en
cha ne et font chacune partie du traitement effectuer.
Selon l'architecture mat rielle qui les
supporte (3)
} On parle aussi d'architecture faiblement ou fortement
coupl e.
} Architecture fortement coupl e : Ce sont principalement des
architectures m moire commune.
} Architecture faiblement coupl e : Ce sont des architectures o
chaque processeur poss de sa propre m moire locale ; c'est le
cas d'un r seau de stations.
} Architecture mixte : Ce sont des architectures diff rents
niveaux de m moire (commune et priv e).
Remarques
} Il n'y a pas de syst me universel pour cette multitude
d'architectures.
} Les constructeurs de supercalculateurs ont toujours
d velopp s leurs propres syst mes.
} Aujourd'hui, compte tenu de la complexit croissante des
syst mes d'exploitation et du co t inh rent, la tendance
est l'harmonisation notamment via le d veloppement de
syst mes polyvalents tels que les syst mes r partis.
Un cas particulier:
les syst mes temps-r el
} Ce sont des syst mes, essentiellement utilis s dans
l'industrie, pour lesquels l'ex cution des programmes est
soumise des contraintes temporelles.
} Les r sultats de l'ex cution d'un programme n'est plus
valide au del d'un certain temps connu et d termin
l'avance.
Un cas particulier:
les syst mes embarqu s
} Ce sont des syst mes d'exploitation pr vus pour
fonctionner sur des machines de petite taille ou des
appareils lectroniques autonomes (sondes spatiales,
Advertisement
robot, ordinateur de bord de v hicule, satellites, avions,
trains, t l phones portables, etc.), poss dant une
autonomie r duite.
} Ainsi, une caract ristique essentielle des syst mes
embarqu s est leur gestion avanc e de l' nergie et leur
capacit fonctionner avec des ressources limit es.
Exemples de SE
Syst me Codage
Mono-
utilisateur
Multi-
utilisateur
Mono-
t che
Multit che
DOS
16 bits
Windows
3.1
Windows
95/98/Me
Windows
NT/2000
16/32 bits
32 bits
32 bits
X
X
X
WindowsXP 32/64 bits
Unix /
Linux
MAC/OS X
32/64 bits
32 bits
VMS
32 bits
X
non
pr emptif
coop ratif
pr emptif
pr emptif
pr emptif
pr emptif
pr emptif
X
X
X
X
X