Académique Documents
Professionnel Documents
Culture Documents
Chapitre 1 I. Introduction :
Architecture de base d’un ordinateur: Architecture de Von Neumann
Processeur
l’unité de calcul (Unité Arithmétique et
Logique : UAL )
l’unité de contrôle (UC)
Les registres
d’exploitation Registres
AC
PC
MAR
CIR
MDR
La mémoire : interne (RAM ) ou secondaires.
Les BUS (bus de données, bus de commandes,
bus d’adresse) pour faire le lien.
Bus d’entrée/sortie
D’autres périphériques ou unités d’Entrées /
Périphériques
d’entrée/sortie Sorties).
Mounira Ebdelli - ISSATSO 6 Mounira Ebdelli - ISSATSO 7
I. Introduction I. Introduction
Architecture de base d’un ordinateur Architecture de base d’un ordinateur
Le processeur (Central Processing Unit ou CPU) : est un circuit L’Unité Arithmétique et Logique(UAL) : composée de 3
Mémoire
électronique qui assure les fonctions parties :
Bus de communication
données/adresses
centrales de l’ordinateur. Il exécute les Processeur
Les registres qui sont des unités de stockage.
logique).
tâches demandées à l’ordinateur. Registres PC CIR
Périphériques
d’entrée/sortie
d’instructions.
I. Introduction I. Introduction
Architecture de base d’un ordinateur Architecture de base d’un ordinateur
L’Unité de contrôle (UC) : permet de Mémoires : sont des composants électroniques pouvant garder des
Chercher dans la mémoire l’instruction suivante d’un
informations temporairement ou à long terme.
programme (pointeur ordinal).
Les mémoires centrales : sont utilisées pour stocker les
Décoder et déterminer ce qui doit être fait.
Envoyer les bonnes commandes à l’UAL, la mémoire et les informations nécessitant un accès rapide par le processeur. On
contrôleurs d’entrée/sortie. distingue
Mémoriser le résultat.
les mémoires vives (Random Access Memory ou RAM)
Les instructions exécutées par l’ordinateur sont exprimées en
langage machine (code binaire) : et les mémoires mortes (Read Only Memory ou ROM).
op codes : opération (instruction) à effectuer. Les mémoires de masse : ou mémoires auxiliaires sont utilisées
Adresse : endroit en mémoire où doit s’effectuer l’opération.
pour stocker les informations à plus long terme comme les disques,
Les instructions en langage machine sont organisées avec le op
code en premier, suivi des adresses mémoire. les flash disques, etc.
Mounira Ebdelli - ISSATSO 10 Mounira Ebdelli - ISSATSO 11
II. Nécessité d’un système d’exploitation II. Définition d’un système d’exploitation
II. Définition d’un système d’exploitation III. Rôles d’un système d’exploitation
Un SE est chargé d'assurer la liaison entre les ressources L'architecture d'un SE est composée
matérielles, l'utilisateur et les applications (traitement de d’un ensemble de couches
texte, jeu vidéo, etc.).
fonctionnelles. Chaque couche repose
sur les fonctionnalités offertes par la
précédente mais ne voit pas les détails
de la réalisation de ces fonctions.
Machine virtuelle (ou Virtualisation de la machine) machine virtuelle à la place de la machine physique permettant de
Vue uniforme des E/S gérer les ressources d’une manière transparente.
Gestion du système de fichiers, réseau, etc. Cette machine virtuelle est un ensemble de programmes qui
Gestion des ressources masque la complexité du matériel aux utilisateurs et fournit une
Fonctionnement des ressources (processeur, délais, ...) interface entre l'utilisateur et les composants électroniques de la
Contrôle d’accès aux ressources (Allocation CPU,
machine réelle.
disque, mémoire, canal de communication réseau, ...)
Cette interface est plus simple et facile à utiliser que le matériel.
Gestion des erreurs
Elle peut être graphique (cas de Windows) ou un simple
Gestion des conflits
interpréteur de commande (cas d’Unix).
Mounira Ebdelli - ISSATSO 16 Mounira Ebdelli - ISSATSO 17
III. Rôles d’un système d’exploitation III. Rôles d’un système d’exploitation
a) Virtualisation de la machine b) Gestion des ressources
Un SE contrôle l’utilisation efficace et optimale des ressources
Exemple : Sauvegarde d’un fichier sur disque
matérielles (Processeur, Mémoire, Imprimante, etc.) et
Le disque est composé de plusieurs plateaux logicielles (applications utilisateurs, Word, Excel, etc.) qui
peuvent être sollicitées par les différents processus
Le plateau est composé de secteurs et de pistes
(programme en cours d’exécution) s’exécutant dans le
Fonctions du système d’exploitation (SE) : système.
Un SE doit donc contrôler l’allocation des ressources aux
Comment l’utilisateur peut chercher une adresse vide, un différents processus qui y font appel pour s'adapter au mieux
aux demandes des utilisateurs.
espace disque nécessaire, etc.
En pratique chaque programme encours d’exécution reçoit :
Comment faire tourner la tête de lecture du disque. une tranche de la mémoire
une fraction de temps de traitement processeur.
Mounira Ebdelli - ISSATSO 18 Mounira Ebdelli - ISSATSO 19
III. Rôles d’un système d’exploitation III. Rôles d’un système d’exploitation
b) Gestion des ressources b) Gestion des ressources
Pour chacune des ressources d’un ordinateur, le système Exemple : Gestion de l'imprimante
d’exploitation doit :
Supposons que deux processus utilisateurs P1 et P2
connaître à tout moment l’utilisateur de la ressource,
veulent lancer simultanément l'impression de leurs
en accorder l’usage de manière équitable,
éviter les conflits d’accès entre les différents programmes ou résultats. Ainsi, ces deux processus vont utiliser la même
utilisateurs. ressource physique à savoir l’imprimante. Si le contrôle
Le Système d’Exploitation doit assurer et la gestion de l'imprimante ne sont pas assurés par le
Le partage des ressources.
système d’exploitation, nous risquons d’avoir les résultats
La protection de l'accès aux ressources.
du processus P1 mélangé avec ceux de P2.
Mounira Ebdelli - ISSATSO 20 Mounira Ebdelli - ISSATSO 21
III. Rôles d’un système d'exploitation III. Rôles d’un système d'exploitation
Gestion de la mémoire vive (1/2): Gestion de la mémoire vive (2/2):
Le système d'exploitation (SE) est chargé de gérer La gestion de la mémoire comporte un ensemble de routines
mémoire vive disponible sur le système. En contrepartie Traiter le va et vient (lecture et écriture) entre le disque et la mémoire
cette mémoire est beaucoup plus lente. centrale lorsque le système met en œuvre la mémoire virtuelle.
Un processus est un programme en cours d'exécution = un supérieures une abstraction des E/S physiques en associant à
programme actif en mémoire centrale. chaque type de périphérique connecté à la machine un
Le SE est responsable de:
programme particulier appelé souvent pilote.
allocation de ressources aux processus
Le travail du pilote consiste à transformer l’entrée/sortie
création, terminaison des processus
suspension, reprise des processus. abstraite en une séquence de commandes destinée à être
synchronisation, communication entre processus. exécutée par le contrôleur du périphérique.
Mounira Ebdelli - ISSATSO 24 Mounira Ebdelli - ISSATSO 25
Un système d'exploitation est Le noyau : le noyau (en anglais kernel) représente les fonctions
fondamentales du système d'exploitation telles que :
typiquement composé de :
gestion des files d'exécution (aussi nommée processus) :
un noyau attribution de la mémoire à chaque processus
IV. Les composants d’un système d'exploitation V. Histoire des systèmes d'exploitation
Unix : créé en 1969, rapidement multi-utilisateur, écrit en langage C. L’histoire des SE peut être classée en cinq générations :
Quelques versions ou distributions : AIX, OpenBSD, FreeBSD
La 1ère génération (1945-1955) : Prototypes d’ordinateurs à base de
Linux : clone gratuit d’UNIX pour les PC, open source. Quelques distributions
parmi les plus connues : Ubuntu, Red-Hat, Mandrake / Mandriva, Debian
tubes électroniques à vide. Le plus connu des ordinateurs non
Mac OS : premier à proposer le concept des fenêtres, du glisser-déposer, la mécaniques est l'ENIAC (Electronic Numerical Integrator And Computer)
corbeille, le plug-and-play. Aujourd’hui, il possède le noyau Linux, avec une qui lit les données au moyen d'un lecteur de cartes perforées, et fournit
interface graphique élégante et ergonomique, et optimisation particulière des les résultats sur cartes perforées ou imprimés avec une machine à écrire
traitement multimédia. électrique.
MS-DOS (Microsoft disque operating system) : SE des premiers PC, mono-
La 2ème génération (1955-1965) : le traitement par lots.
utilisateur, mono-tâche, interface ligne de commande.
MS-Windows : inspiré par l’interface Macintosh; tout d’abord, une coquille La 3ème génération (1965-1980) : la multiprogrammation (multitâches).
graphique pour DOS. Seulement à partir de Windows 95 nous commençons à La 4ème génération (1980- 1990) : le temps partagé, les ordinateurs
assister à un transfert de nombreuses fonctionnalités de DOS vers Windows. personnels.
Quelques versions les plus connues :2.0, 3.1, 3.11, 95, NT4 et NT4 serveur, La 5ème génération (1990- ) : le temps réel, les systèmes distribués,
98, 98se, Me, 2000 et 2000 serveur, XP, 2003 serveur, Vista,seven,8,10 les ordinateurs personnels portables et de poche.
Windows NT : SE indépendant de DOS. Techniquement nettement supérieur
Mounira Ebdelli - ISSATSO 32 Mounira Ebdelli - ISSATSO 33
à Windows.
VI. Types des systèmes d’exploitation VI. Types des systèmes d’exploitation
VI. Types des systèmes d’exploitation VI. Types des systèmes d’exploitation
b) SE de 3ème génération : Systèmes multitâches Systèmes multi-utilisateurs
Un système d'exploitation est dit «multi-tâches» (en anglais Multi-utilisateurs c’est la capacité à pouvoir gérer un panel
d'utilisateurs utilisant simultanément les mêmes ressources
multithreaded) lorsque plusieurs «tâches» (également appelées
matérielles.
processus) peuvent être exécutées simultanément.
Un système multiutilisateurs est capable d'exécuter de façon
Les applications sont composées en séquence d'instructions que concurrente et indépendante des applications appartenant à
l'on appelle «processus légers» (en anglais «threads»). Ces plusieurs utilisateurs.
threads seront tour à tour actifs, en attente, suspendus ou détruits, Concurrente : les applications peuvent être actives au même
suivant la priorité qui leur est associée ou bien exécutés moment et se disputer l'accès à différentes ressources comme
le processeur, la mémoire, les disques durs, etc.
séquentiellement.
Indépendante : chaque application peut réaliser son travail
Un système est dit préemptif lorsqu'il possède un ordonnanceur sans se préoccuper de ce que font les applications des autres
(aussi appelé planificateur), qui répartit, selon des critères de utilisateurs.
priorité, le temps machine entre les différents processus qui en font Remarque : Un système multi-utilisateurs est nécessairement
la demande. multitâches mais la réciproque est fausse.
Mounira Ebdelli - ISSATSO 38 Mounira Ebdelli - ISSATSO 39
VI. Types des systèmes d’exploitation VI. Types des systèmes d’exploitation
c) SE de 4ème génération : Systèmes à temps partagé Systèmes multiprocesseurs
Le système est dit à temps partagé lorsqu'un quota de temps Systèmes multiprocesseurs : le multiprocessing est une
est alloué à chaque processus par l'ordonnanceur. C'est le cas technique consistant à faire fonctionner plusieurs processeurs
des systèmes multi-utilisateurs qui permettent à plusieurs en parallèle afin d'obtenir une puissance de calcul plus
utilisateurs d'utiliser simultanément, sur une même machine, importante que celle obtenue avec un processeur haut de
des applications différentes ou bien similaires : le système est gamme ou bien afin d'augmenter la disponibilité du système (en
alors dit « système transactionnel ». cas de panne d'un processeur).
Un système multiprocesseurs doit être capable de gérer le
VI. Types des systèmes d’exploitation VI. Types des systèmes d’exploitation
Systèmes multicœurs Systèmes multicœurs
Systèmes multicœurs : un processeur multicœurs est un processeur Avantages :
doté de plusieurs cœurs qui peuvent lire et exécuter individuellement des Ces systèmes sont économes en énergie car ils permettent des
instructions de programme, donnant l’impression que le système performances plus élevées à moindre consommation d’énergie.
informatique a plusieurs processeurs.
Dans ces systèmes, il y aura moins de trafic (cœurs intégrés dans
Les instructions peuvent être des calculs, des instructions de transfert de
une seule puce et nécessitera moins de temps).
données, des instructions de branchement, etc.
Désavantages :
Le processeur peut exécuter des instructions sur des cœurs séparés en
même temps. Cela augmente la vitesse globale d’exécution du Le processeur double cœur ne fonctionne pas à deux fois la vitesse
programme dans le système. Ainsi, la chaleur générée par le processeur d’un processeur unique. Ils n’obtiennent que 60 à 80 % de vitesse
est réduite et augmente la vitesse globale d’exécution. en plus.
Les systèmes multicœurs prennent en charge le multithreading et Le système d’exploitation compilé pour un processeur multicœurs
le calcul parallèle. Ils sont largement utilisés dans de nombreux domaines fonctionnera légèrement plus lentement sur un processeur
d’applications : réseau, traitement du signal numérique (DSP) et monocœur.
graphiques (GPU). Mounira Ebdelli - ISSATSO 42 Mounira Ebdelli - ISSATSO 43
VI. Types des systèmes d’exploitation VI. Types des systèmes d’exploitation
SE de 5ème génération : Systèmes temps réels Systèmes embarqués
Les systèmes temps réel (real time systems), Les systèmes embarqués sont des systèmes d'exploitation
essentiellement utilisés dans l'industrie, sont des systèmes prévus pour fonctionner sur des machines de petite taille, telles
dont l'objectif est de fonctionner de manière fiable selon des que des PDA (personal digital assistants) ou des appareils
électroniques autonomes (sondes spatiales, robot, ordinateur de
contraintes temporelles spécifiques, c-à-d qu'il doit être
bord de véhicule, etc.), possédant une autonomie réduite. Ainsi,
capable de délivrer un traitement correct des informations
une caractéristique essentielle des systèmes embarqués est leur
reçues à des intervalles de temps bien définis (réguliers ou
gestion avancée de l'énergie et leur capacité à fonctionner avec
non).
des ressources limitées.
Exemples de SE temps réel : OS-9 , RTLinux (RealTime Exemples de SE embarqués : PalmOS, Windows CE, Windows
Linux) , QNX , VxWorks. Mobile, Window Smartphone
Mounira Ebdelli - ISSATSO 44 Mounira Ebdelli - ISSATSO 45
DOS 16 bits X X
Windows3.1 16/32 bits X non préemptif