CHAPITRE I : INTRODUCTION AU SYSTEME D’EXPLOITATION
INTRODUCTION
Pour qu’un ordinateur soit capable de faire fonctionner un programme
informatique (appelé application ou logiciel), la machine doit être en mesure
d’effectuer un certain nombre d’opérations préparatoires afin d’assurer les échanges
entre le processeur, la mémoire, et les périphériques. Ces opérations préparatoires
sont effectuées par un SE sans lequel l’ordinateur sera sans utilité. Au cours de ce
chapitre nous verrons ce qu’est un SE.
I. NOTION DE SYSTEME D’EXPLOITATION
1. Définitions
1.1. Système d’exploitation
Un système d’exploitation peut être définit comme un ensemble de programmes qui
contrôle et dirige l’utilisation d’un ordinateur à travers différentes applications. Ou encore le
système d’exploitation (noté SE ou OS, abréviation du terme anglais Operating System), est
le super logiciel chargé d’assurer la liaison entre les ressources matérielles, l’utilisateur et les
applications.
1.2. Programme système
Programmes systèmes (system programs): gère le fonctionnement de l’ordinateur
1.3. programme d’application
Programmes d’application: exécute le travail demandé par les utilisateurs
1.4. Appel Système
Un appel système est une fonction fournie par le noyau (kernel) d’un SE et utilisée
par les programmes s’exécutant dans l’espace utilisateur (en d’autres termes, tous les
programmes distincts du noyau).
1.5. Le système de fichiers (file system, noté FS), permettant d'enregistrer les
fichiers dans une arborescence
2. Rôle d’un SE
Le système d’exploitation joue deux rôles :
- d’une machine virtuelle (abstraite)
Le SE présente au programmeur une interface d’accès aux ressources de l’ordinateur (sous
forme d’appels système). Ainsi le programmeur peut faire abstraction des détails de
fonctionnement des ressources.
- d’un administrateur de ressources
Le SE gère l’utilisation des ressources par différents utilisateurs et les éventuels conflits
II. COMPOSANTS
1. Constitution du SE
Un SE est composé d’un noyau, de bibliothèque, d’un ensemble d’outil système et de
programme d’application.
L’ensemble constitué de bibliothèque, d’outils système et des programmes
d’application est appelé partie externe (utilisateur ou user).
Le noyau (kernel) est un espace mémoire isolé et protégé dans lequel sont stockés
tous les programmes nécessaires au fonctionnement de la machine depuis sa mise sous
tension jusqu’à son arrêt complet.
L'interpréteur de commande (shell) permettant la communication avec le système
d'exploitation par l'intermédiaire d'un langage de commandes.
2. Taches d’un SE
Le SE est de :
• La gestion des processus,
• La gestion de la mémoire,
• La gestion des entrées-sorties,
• La gestion des fichiers
Les programmes utilisateurs peuvent accéder à ces différentes fonctionnalités à l’aide
des appels système.
3. Interaction du matériel et le SE (mode double)
Le matériel permet 2 modes de fonctionnement: avec le SE
- Mode moniteur ou superviseur ou système ou privilégié (Monitor mode, supervisor
mode, system mode): exécution de la part du SE Instructions privilégiées: instructions
machine risquant de nuire. Les instructions privilégiées sont exécutées seulement en
mode superviseur.
- Mode utilisateur (User Mode): exécution de la part de l’utilisateur. S’il se produit une
tentative d’exécuter une instruction privilégiée, le matériel ne la réalise pas mais traite
l’instruction comme illégale et bloque le SE.
4. Fonctionnement en mode double
Au moment d’initialiser le système, le matériel démarre en mode superviseur
Ensuite le SE est chargé et démarre les processus utilisateurs en mode utilisateur. Chaque
fois qu’un déroutement (trap) ou une interruption se produit, le matériel commute du mode
utilisateur au mode superviseur. Chaque fois que le SE prend le contrôle de l’ordinateur, il
est en mode superviseur. Le système commute toujours au mode utilisateur avant de donner
la main à un programme utilisateur
5. Les modules du noyau
Le noyau est composé de plusieurs modules qui assurent chacun une fonctionnalité :
- L’allocateur (dispatcheur) : responsable de la sélection des processus à exécuter
- Le planificateur (scheduler) : répartit le temps disponible de l’unité de traitement
entre les différents processus (affecte une priorité), sauvegarde d’état lorsque le
processus s’interrompt, indique au CPU le processus suivant
- Le gestionnaire d'interruptions : détermine la source de l’interruption, active la
procédure associée
III. TYPOLOGIES
Le système multi-tâches
1.
Un système d'exploitation est dit «multi-tâche» (en anglais multithreaded) lorsque plusieurs
«tâches» (également appelées processus) peuvent être exécutées simultanément.
Un système est dit préemptif lorsqu'il possède un ordonnanceur (aussi appelé planificateur),
qui répartit, selon des critères de priorité, le temps machine entre les différents processus qui
en font la demande.
Le système est dit à temps partagé lorsqu'un quota de temps est alloué à chaque processus
par l'ordonnanceur (systèmes multi-utilisateurs).
2. Le système multi-processeurs
Le multiprocessing est une technique consistant à faire fonctionner plusieurs processeurs en
parallèle afin d'obtenir une puissance de calcul plus importante.
3. Les systèmes embarqués
Les systèmes embarqués sont des systèmes d'exploitation prévus pour fonctionner sur des
machines de petite taille, telles que des PDA (personal digital assistants ou en français
assistants numériques personnels) ou des appareils électroniques autonomes (sondes
spatiales, robot, ordinateur de bord de véhicule, etc.).
Les principaux systèmes embarqués «grand public» pour assistants numériques personnels
sont : PalmOS, Windows CE / Windows Mobile / Window Smartphone
4. Le Système multitâches
C’est un système qui permet l’exécution de plusieurs taches simultanément
5. Système centralisé : Le système ne gère que les ressources de la machine sur
laquelle il est présent.
6. Système réparti : Ensemble de machines autonomes connectées par un réseau, et
équipées d’un logiciel dédié à la coordination des activités du système ainsi qu’au
partage de ses ressources
Fonctionnalités
7.
-
Permet l’exploitation des périphériques matériels dont il coordonne et optimise
l’utilisation
- propose les logiciels d’application et des interfaces de programmation standard
- réalise les fonctions servant à assurer la fiabilité r la sécurité du système
Le SE assure également d’autre fonction tels que :
- la coordination et l’exécution des processus
- la réservation de l’espace mémoire pour les programmes
- l’organisation du contenu de mémoire de masse
IV. ARCHITECTURE
1. Parties d’un SE
De manière générale les SE ont 04 parties principales à savoir :
- La gestion des procéssus
- La gestion de la mémoire
- La gestion de fichier
- La Gestion des Entrées/Sorties
2. Gestions des Processus
Un processus est un programme qui est en cours d’exécution. Son exécution dure un
certain temps avec un début et une fin. Les applications utilisateur sont des (ensembles de)
processus. Un processus doit être chargé en mémoire centrale pour pouvoir s’exécuter
(dans la RAM).
Le système d'exploitation est chargé de gérer l'allocation du processeur entre les
différents programmes. Cette allocation se fait grâce à un algorithme d'ordonnancement. Le
type d'ordonnanceur est totalement dépendant du système d'exploitation.
3. Gestion de la mémoire
Le système d'exploitation est chargé de gérer l'espace mémoire alloué à chaque
application.
En cas d'insuffisance de mémoire physique, le système d'exploitation crée une zone
mémoire sur le disque dur, appelée «mémoire virtuelle»
4. Gestion de système de fichier
Le système d'exploitation gère la lecture et l'écriture dans le système de fichiers et les
droits d'accès aux fichiers par les utilisateurs et les applications.
5. La gestion des Entrées/Sorties
Prendre en charge le transfert d’information entre, l’unité centrale, les périphériques
et le réseau. Configurer le matériel par le biais de fichiers systèmes, Gérer les échanges
entre ces composants.
Conclusion
SE l’est d’une importance capitale pour les équipements électronique ayant une
interface graphique, c’est lui qui permet de dé complexifier l’équipement et donner
un accès simple et facile aux ressources matériels.