Vous êtes sur la page 1sur 10

CHAPITRE 1 : GENERALITE SUR LES

SYSTEMES D’EXPLOITATION
PLAN
 Introduction à l’informatique
 Evolution des ordinateurs et des systèmes d’exploitation
 Architectures matérielles des ordinateurs
 La nécessité d’un système d’exploitation
 Les rôles du système d’exploitation
 Les caractéristiques du système d’exploitation
 Les composantes d’un système d’exploitation
 Les différents types d’architecture des systèmes d’exploitation

Qu’est-ce qu’un ordinateur ?


 Le mot ordinateur dut introduit par IBM France en 1955
 Il veut dire ordonnateur : celui qui met en ordre
 Mot Ordinant : utilisé dans l’église
 Propose encore Ordinatrice électronique

Les caractéristiques fondamentales nécessaire pour être considérer comme


un ordinateur
 Qu’il soit électronique
 Numérique au lieu analogique
 Qu’il soit programmable
 Qu’il puisse exécuter les quatre opérations élémentaire addition,
soustraction, multiplication ; division
 Qu’il puisse exécuter des programmes enregistres en mémoire

Processeur : Le composant qui exécute les programmes, en anglais CPU


RAM : La mémoire vive (Random Access Memory)
R.O.M : Mémoire Volatile (Read Only Memory)
Disque Dur : Mémoire de stockage permanente avec une grande capacité de
stockage
Programme : Une suite d’opération prédéterminés destinées à être exécutés de
manière automatique par un appareil informatique ne vue d’effectuer des travaux,
des calculs arithmétiques ou logiques
LA NECESSITE D’UN SYSTEME D’EXPLOITATION
Les deux besoins majeurs sont ;
1. POINT DE VUE UTILISATEUR
Comment un utilisateur ou plusieurs peuvent exploiter les ressources
matérielles ? Trouver des mécanismes pour optimiser l’utilisateur du matériels
facilité, rapidité, partage
2. POINT DE VUE SYSTEME
Comment exploiter d’une manière optimale les ressources matérielles
pour améliorer leur fonctionnement ? Trouver des mécanismes pour gérer
efficacement les ressources matérielles mémoire centrales, disque dur, temps
processeur

DEFINITION D’UN SYSTEME D’EXPLOITATION


Le terme système d’exploitation couvre un grand nombre de fonctionnalités ;
 Une grande diversité d’architecture d’Equipment ayant besoin d’un SE
 Une grande évolution du matériel informatique
 Puissance des équipements en constante augmentation émergence de
nouvelles fonctionnalité/besoins
 Il n’y a pas une définition consensuelle
NB : Un système d’exploitation correspond à Middleware
Selon professeur Avi Silberschartz : We have no completely adequate
definition of an operating system

LES ROLES DU SYSTEME D’EXPLOITATION


a) Le rôle du système d’exploitation en tant que machine étendue (« ou
machine virtuelle »)
b) Le rôle du système d’exploitation en tant que gestionnaire de
ressources

LE ROLE EN TANT QUE MACHINE VIRTUELLE


 Le SE correspond à « l’interface » entre les applications et le matériel
 De ce point de vue le système d’exploitation est assimilé à une
machine étendue ou virtuelle plus facile à programmer ou à utiliser que
le matériel
 Un programmeur doit se concentrer sur les fonctionnalités de son
logiciel et non pas sur le fonctionnement du matériel
 Un utilisateur peut aussi manipuler un système d’exploitation, sans
pour autant avoir à créer un programme ou connaître le matériel.
(Masquer la complexité du matériel).

LE ROLE EN TANT QUE GESTIONNAIRE DE RESSOURCES


Les différentes composants d’un ordinateur doivent coopérer et partager des
ressources dans cette optique le travail dans un système d’exploitation consiste à :
 Ordonnancer
 Contrôler l’allocation des ressources
 Pour chacune des ressources d’un ordinateur, le système
d’exploitation doit :
-Connaître à tout moment l’utilisateur de la ressource
-En accorder l’usage de manière équitable
-Eviter les conflits d’accès entre les différents programmes ou
utilisateur
 Le SE doit assurer
-Le partage des ressources
-La protection de l’accès aux ressources

LES TACHES (DE BASE) D’UN SE


1. La gestion des processus
Qui correspondent à l’exécution des programmes
2. La gestion de la mémoire
Qui permet de gérer les transferts entre les mémoires principales et
secondaires
3. Le système de fichiers
Qui offre à l’utilisateur une version homogènes et structurée des
données et des ressources : disques, périphériques
4. Les entrées-sorties
Qui correspondent aux mécanismes qu’utilisent les processus pour
communiquer avec l’extérieur

AUTRES TACHES D’UN SE


 Les réseaux d’ordinateurs
Avec les protocoles de communication, d’interconnexion et
d’application
 Les systèmes repartis
Avec les protocoles d’appels de procédures à distance
 Les systèmes de fenêtrage graphique

CARACTERISTIQUE DES SE
Généralement on distingue les systèmes multitâches, les systèmes mono-
tache, les systèmes multi-utilisateur et les système mono-utilisateur
 Un système est dit « multitâches » lorsque plusieurs « taches »
(processeur) peuvent être exécuté simultanément et mono-taches
lorsqu’une seule tache peut être exécuté
 Un système est dit préemptif lorsqu’il possède un ordonnanceur, qui
repartit, selon des critères de priorité, le temps machine entre les
différents processus qui font la demande
Remarque : Un système multiutilisateurs est nécessairement multitâches
mais la réciproque est fausse

Systèmes multi/mono utilisateur


 Multiutilisateur : c’est la capacité à pouvoir gérer un panel
d’utilisateur utilisant simultanément les mêmes ressources matérielles
 Un système multiutilisateur est capable d’exécuter de façon
concurrente indépendante des applications appartenant à plusieurs
utilisatrices
-Concurrente signifie que les applications peuvent être actives au
même moment
-Indépendante signifie que chaque application peut réaliser son travail
sans se préoccuper de ce que font les applications des autres utilisateurs

SYSTEMES MULTI/MONO PROCESSEURS


 Systèmes monoprocesseur (temps partager ou
multiprogrammation)
Ressource processeur unique : Il a fallu développer un
mécanisme de gestion des processus pour offrir un (pseudo)
Parallélisme a l’utilisateur : c’est la multiprogrammation, il
s’agit d’une commutation rapide entre les différents processus pour
donner l’illusion d’un parallélisme
 Systèmes multiprocesseurs (parallélisme)
-SIMD (Single Instruction Multiple Data) : Tous les processeurs
exécutent les mêmes instructions mais sur des données différentes
-MIMD (Multiple Instruction Multiple Data) : Chaque processeur est
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 de traitement a effecteur

COMPARAISON DES SE
Système Codage Mono/multi- Mono/multitâche
utilisateur
DOS 16 Mono Mono
Windows 3.1 16/32 Mono Non préemptif
Windows 95 32 Mono Coopératif
Win.NT/2000 32 Multi Préemptif
Windows XP, 32/64 Multi Préemptif
Vista, Seven
Unix/Linux 32/64 Multi Préemptif
Mac OS X 32 Multi Préemptif

COMPOSITION DU SYSTEME D’EXPLOITATION


(Image)

NOYAU (KERNEL)
Le noyau assure les fonctionnalités suivantes :
-Gestion des périphériques (au moyen de pilotes)
-Gestion des files d’exécution (aussi nommée Pipeline) :
 Attribution de la mémoire à chaque processus
 Ordonnancement des processus (répartition du temps d’exécution sur
le ou les processeurs)
 Synchronisation et communication entre processus (services de
synchronisation, d’échange de messages, mise en commun de
segments de mémoire)
-Gestion des fichiers (au moyen de systèmes de fichiers)
-Gestion des protocoles réseau (TCP/IP)
Au lancement
-Boot : le programme qui initialise l’ordinateur
-Permet aux premiers services d’accéder aux applications système, gestion de la
mémoire, accès aux périphériques
 Mémoire centrale (vive) : repartions
-Réservée pour le système
-Réservée pour les applications
 Assure une indépendance entre les applications et les matériels

LES BIBLIOTHEQUES (Librairies) DYNAMIQUES


 Regroupent les opérations souvent utilisées, selon les fonctionnalités (E/S,
fichiers)
 Ces opérations sont disponibles pour être appelées et exécutées par
d’autres programmes

LE SYSTEMES DE FICHIERS
Un système de fichiers est une structure de données permettant de stocker
les informations et de les organiser dans des fichiers sur des mémoire secondaire
(disque dur, disquette, CD-ROM, clé USB)
 Ce stockage de l’information est persistant
 Une telle gestion des fichiers permet de traiter, de conserver des quantités
importantes de données ainsi que de les partager entre plusieurs
programmes informatiques
 Il offre à l’utilisateur une vue abstraite sur ses données et permet de les
localiser à partir d’un chemin d’accès

INTERFACE UTILISATEUR-MACHINE
 Via ligne de commande (Interpreteur de commandes)
-shell, MSDOS
 Interface graphique (Graphical User Interface)
-Xterm, Linus, Windows, Macintosh

SHELL
 Shell (coquille par opposition au noyau) : L’interpréteur de commandes
permettant la communication avec le SE par l’intermédiaire d’un langage de
commandes
 Permet à l’utilisateur de piloter les périphériques en ignorant toutes les
caractéristiques du matériel qu’il utilise, (exemple : la gestion des adresses
physique)
 E.g. sur Unix/Linux : csh, tcsh
-Ls : Lister les répertoires et les fichiers du répertoire courant
-mv x y : Changer le nom du fichier/répertoire « x » en « y »
DEUX MODES D’EXECUTION
 But : protéger l’exécution du système d’exploitation de celles des programmes
utilisateurs
 Le mode utilisateur dans lequel les programmes utilisateurs sont exécutés
Dans ce mode certaines instructions sont interdites, de cette manière ont
contraint les programmes à faire appel au système d’exploitation pour
certaines opérations
 Le mode protège ou superviseur (également appelé mode noyau) est réservé
à l’exécution des primitives du système d’exploitation. Dans ce mode le
processeur peut exécuter toutes les instructions. Les appels système
s’exécutent dans ce mode

Les appels systèmes


Les appels système sont des fonctions :
- Appelées depuis un programme du mode utilisateur
- Dont l’exécution (le traitement) est effectué dans le mode noyau
- Dont le retour est effectué dans le programme appelant dans le mode
utilisateur
LES UTILITAIRES
Ce sont des petites applications utilisé pour accomplir des tâches spécifiques
(Basique)

LES DIFFERENTS TYPES D’ARCHITECTURES DES SE


 On parle de structures du noyau du système d’exploitation
- Monolithiques
- Modulaire / Multicouches
- Micronoyaux
- Exonoyaux
- Machine virtuelle
 Le noyau est généralement exécuter dans un espace mémoire séparer de
l’espace des applications : espace noyau par opposition à l’espace utilisateur.
Le passage entre ces deux espaces se fait via des appels systèmes. L’intérêt
de cette séparation est que le système ne crash/se plante pas si une
application plante.
SE MONOLITHIQUES
 Un seul bloc contenant l’ensemble des service système (mode noyau)
 Facilité de conception
 Rapidité d’exécution
 Code dur à maintenir
 Dos, très vieux Unix et Linux
(Image)

SE MODULAIRE / MULTICOUCHES
 Un système d’exploitation organisé en hiérarchie de couches. Chacune
construite sur la base des services offerts par la couche inférieure
 Facilité de conception et de développement
 Code plus organisé et maintenable
 Chargement des fonctionnalités à la demande
 Linux, BSD, SOLARIS
(Image)
SE MICRONOYAUX
 Déplace plusieurs fonctions de system d’exploitation vers des
« processus serveur » s’exécutant en mode utilisateur réduction au
maximum de la taille du code privilégie (en mode noyau)
 But : gérer les communications entre l’applications et serveurs pour :
- Renforcer la politique de sécurité
- Permettre l’exécution de fonctions système (accès aux registres
d’E/S, etc)
 Fiabilité augmentée : si un processus serveur « crash », le système
continue à fonctionner et il est possible de relancer ce service sans
redémarrer
 Modelé facilement étendu a des systèmes distribue
 MAC OS X, GNU HURD, WindowsNT
(Image)
AUTRE TYPES DE NOYAUX (FAIRE DES RECHERCHE)
 SE a Noyaux hybrides
 SE a Meta-noyaux
 SE a Exo-noyaux
 SE machine virtuelle (VMWARE)
 SE a noyaux temps réel
(Image)
TRAVAUX DIRIGES
QCM
1. Quand ont été écrits les premiers algorithmes ?
C. Il y a plus de 3000 ans
2. Quand Babbage a-t-il imaginé sa machine analytique ?
A. En 1836
3. Combien d’additions était capable de faire l’ENIAC chaque seconde ?
C. 100000
4. En 2010, combien d’opérations était capable de faire le puissant ordinateur du
monde chaque seconde ?
C. Plusieurs millions de milliards
5. Pendant quelle décennie sont apparus les ordinateurs personnels (PC) ?
B. Dans les années 1970
6. Les ordinateurs ont toujours été programmables.
B. Faux
7. Durant l’histoire, les ordinateurs :
A. Se sont miniaturisés
B. Se sont diversifiés
8. Quels est le terme anglais qui fait référence aux aspects logiciels d’un
ordinateur ?
A. Software
9. Qu’est-ce qu’un langage bas-niveau ?
A. C’est un langage plus proche du langage de la machine
10. Le langage C est :
A. Un langage dont l’histoire est liée à celle d’Unix
D. Un langage portable : son code ne dépend pas de la machine utilisée
11. Parmi les proposition ci-dessous, lesquelles sont des systèmes
d’exploitation ?
A. Windows
B. iOS
C. LineageOS
D. Linux
12. Unix est un système d’exploitation notable car :
A. Il a donné naissance à une grande famille de système d’exploitation
C. Il a été le premier système d’exploitation générique (c’est-à-dire qui ne
dépend pas d’une machine)
13. Parmi les propositions suivantes, lesquelles sont des composantes logicielles
d’un système d’exploitation ?
A. Le noyau
D. Les pilotes
E. Les services
G. Les utilitaires

Vous aimerez peut-être aussi