| SYSTÈME
D'EXPLOITATION |
|
Architecture des
systèmes informatiques |
Voir aussi : LOGICIEL, CONFIGURATION
INFORMATIQUE

REPRÉSENTATIONS/EXEMMPLES/APPLICATIONS
La place du système
d'exploitation dans le système informatique | Les fonctions du système
d'exploitation | Structure d'un système
d'exploitation | Classification des systèmes
d'exploitation
La place du système d'exploitation dans le
système informatique
Le schéma
suivant montre que le système d'exploitation constitue la couche
inférieure du logiciel de base.
| Machine virtuelle |
Logiciels
applicatifs |
| Logiciel de
base |
Utilitaires |
| Systèmes
d'exploitation |
| Machine physique |
Processeur(s) |
Mémoire centrale |
Périphériques |
Les fonctions du système d'exploitation
- Gestion de l'unité centrale
- Il
s'agit de répartir le temps d'activité du processeur
entre les différents travaux à exécuter et de
synchroniser ceux-ci.
- Les systèmes les plus simples
sont les systèmes en monoprogrammation
(ou systèmes monotâches) où un programme
dispose de l'ensemble des ressources pour
s'exécuter.
- Les processeurs actuels autorisent
la multiprogrammation. Des mécanismes
logiciels permettent alors de partager le temps
d'activité du processeur entre plusieurs
programmes qui s'exécutent : l'interruption
causée par l'impulsion de l'horloge est mise à
profit pour "commuter" les différents
programmes en cours d'exécution (principe du
temps partagé). Aussi les systèmes
d'exploitation actuels fonctionnent-ils en multitâche :
ils sont capables de gérer plusieurs processus
(ou tâches) correspondant aux instances de
programmes exécutables. Un système
d'exploitation multitâche est dit préemptif si,
lors de l'exécution d'un processus, le
processeur peut être réquisionné au profit
d'un autre processus.
- Certains systèmes d'exploitation
sont qualifiés de multithreads
lorsqu'ils sont capables de gérer le découpage
d'un processus en unités d'exécution (threads)
se partageant les ressources requises par le
processus. En environnement multithread,
tout processus peut se découper en un thread
primaire qui active d'autres threads
s'exécutant parallèlement. Les systèmes multithreads
tirent parti des architectures parallèles.
- Gestion de la mémoire centrale
- Il
s'agit d'allouer des zones de mémoire aux différents
usagers et d'assurer la protection mutuelle des espaces
ainsi alloués. Afin d'optimiser le temps d'accès à la
mémoire et son occupation, plusieurs mécanismes sont
mis en uvre.
- La mémoire cache est une
mémoire à accès très rapide qui s'intercale
entre le processeur et la mémoire vive pour
stocker les informations les plus fréquemment
utilisées ou par anticipation celles qui
risquent d'être exploitées.
- L'allocation d'espace mémoire
dans un système en multiprogrammation est
optimisé lorsque le système est capable
d'allouer à un processus des emplacements
mémoire non contigus et de mettre à la
disposition d'un processus une zone mémoire
suffisamment grande pour son exécution. Ces deux
principes contribuent à définir le concept de mémoire
virtuelle, espace théorique d'adressage qui
n'est pas réduit à l'espace physique disponible
en mémoire mais fonction d'un système
d'adressage. Celui-ci permet de gérer une zone
de mémoire sur disque comme extension de la
mémoire principale, lorsque l'espace requis
excède les ressources disponibles. Le système
assure alors la correspondance entre l'adresse
virtuelle gérée par le processus (qui
"croit" disposer d'un espace contigu et
suffisant) et l'adresse réelle.
- Afin d'éviter que des défauts de
fonctionnement d'un processus n'altèrent le
déroulement des autres, la mémoire est dotée
de mécanismes de protection.
- Gestion des entrées-sorties
- Il
s'agit de gérer les demandes d'entrée et de sortie,
d'allouer les organes d'entrée-sortie aux différents
usagers ou de les partager.
Pour un
périphérique traitant les demandes de manière
séquentielle, le système d'entrée-sortie gère une
file d'attente (ou spoule, dérivé de l'anglais spool,
acronyme de Simultaneous Peripheral Operation On-Line)
selon la règle PEPS (premier entré, premier sorti).
- Gestion des fichiers
- Le
système d'exploitation intègre un système de gestion
de fichiers, c'est-à-dire qu'il permet de définir et de
stocker des fichiers et de transmettre des informations
aux organes d'entrée-sortie. Dans un système
multiutilisateur, les fichiers peuvent être
caractérisés par des droits d'accès réservés
à certains usagers ou groupes d'usagers. Ce mécanisme
contribue à garantir la cohérence et la
confidentialité des informations. Ainsi, lors d'accès
concurrents à un même fichier, notamment lorsqu'il
s'agit de le mettre à jour, le système mettra en
uvre un mécanisme de verrouillage qui
garantira l'intégrité des informations traitées.
- Communication Homme-Machine
- La
partie visible du système d'exploitation est l'interface
qui permet à l'utilisateur de communiquer avec le
système à l'aide de commandes. Cette interface peut
être en mode texte ou en mode graphique.
Structure d'un système d'exploitation
Un
système d'exploitation est formé de modules logiciels qui
s'appellent mutuellement.
- Le noyau est le module principal
qui sert d'interface avec le matériel. Il est résident
en mémoire tandis que les autres modules sont
généralement stockés sur disque et chargés
dynamiquement en mémoire lors de leur utilisation. Le
noyau assure des fonctions essentielles telles que la
gestion des interruptions, la gestion de l'unité
centrale, la synchronisation entre processus.
Dans
certains systèmes, on parle de "micronoyau"
lorsque le noyau a été réduit au minimum. Dans ce type de
système, les autres fonctions du système d'exploitation sont
gérées comme des applications, ce qui permet de faire cohabiter
sur une même machine des systèmes d'exploitation différents,
au dessus d'un même "micronoyau".
Classification des systèmes d'exploitation
La
classification proposée ci-dessous repose sur la distinction
entre les systèmes conçus pour les postes de travail
individuels et les systèmes multiutilisateurs.
Outre les
fonctions présentées précédemment, les systèmes
multiutilisateurs doivent gérer les utilisateurs
(identification, attribution des droits sur les ressources,
etc.). On distingue les systèmes d'exploitation
"généraux" adaptés à la gestion des systèmes
centraux et les systèmes d'exploitation "réseau"
capables de gérer des systèmes fédérés. Contrairement aux
systèmes fédérateurs, les systèmes "centraux"
nécessitent une couche logicielle supplémentaire pour gérer
une infrastructure multipostes.
| Systèmes pour
poste de travail |
Systèmes
multiutilisateurs |
| monotâche |
multitâche |
centraux |
fédérateurs |
| DOS. |
Windows NT
Workstation,
Windows 95,
OS/2 Warp |
Systèmes
ouverts : Unix,
Systèmes exclusifs : OS/400, MVS (IBM), GCOS
(Bull). |
Netware,
Windows NT. |
