0% ont trouvé ce document utile (0 vote)
0 vues45 pages

Introduction

Le document présente une introduction aux systèmes d'exploitation, définissant leur rôle en tant qu'intermédiaire entre l'utilisateur et le matériel. Il aborde les concepts de gestion des ressources, de mémoire, de processus, de fichiers, ainsi que de protection et de sécurité. La virtualisation est également discutée comme un moyen d'exécuter des applications sur différents systèmes d'exploitation.

Transféré par

mountassiraboukarim
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
0 vues45 pages

Introduction

Le document présente une introduction aux systèmes d'exploitation, définissant leur rôle en tant qu'intermédiaire entre l'utilisateur et le matériel. Il aborde les concepts de gestion des ressources, de mémoire, de processus, de fichiers, ainsi que de protection et de sécurité. La virtualisation est également discutée comme un moyen d'exécuter des applications sur différents systèmes d'exploitation.

Transféré par

mountassiraboukarim
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Architecture des Systèmes

d’Exploitation
Chapitre 1 : Introduction
C’est quoi un Système d’Exploitation ?

 Programme servant d'intermédiaire entre l'utilisateur et le matériel informatique.


 Objectifs du système d'exploitation :
• Exécuter les programmes utilisateur et faciliter la résolution des problèmes des
utilisateurs.
• Rendre le système informatique convivial.
• Exploiter efficacement le matériel informatique.

28/09/2025 Systèmes d'Exploitation 3


Vue abstraite des composants d’un ordinateur

28/09/2025 Systèmes d'Exploitation 4


Vue abstraite des composants d’un ordinateur

 Deux points de vue : utilisateurs vs système.


 Les utilisateurs recherchent la commodité, la simplicité d'utilisation et de bonnes
performances.
 L'utilisation des ressources ne les préoccupe pas.
 C’est le premier point de vue : Machine étendue qui fait abstraction du détail matériel
 Mais un ordinateur partagé, comme un ordinateur central ou un mini-ordinateur, doit
satisfaire tous les utilisateurs.
 Le système d'exploitation est un programme d'allocation de ressources et de contrôle qui
optimise l'utilisation du matériel et gère l'exécution des programmes utilisateur.
 C’est le deuxième point de vue : Gestionnaire de ressources.

28/09/2025 Systèmes d'Exploitation 5


Machine étendue (abstraite)

28/09/2025 Systèmes d'Exploitation 6


Système d’Exploitation : Définition

 Aucune définition universellement acceptée.


 « Tout ce qu'un fournisseur fournit lorsque on commande un système d'exploitation » est
une bonne approximation.
Mais la définition varie considérablement.
 « Le seul programme exécuté en permanence sur l'ordinateur » est le noyau, une partie
du système d'exploitation.
Tout le reste est soit
 un programme système (fourni avec le système d'exploitation, mais ne faisant pas partie
du noyau), soit
 un programme d'application, c'est-à-dire tous les programmes non associés au système
d'exploitation.

28/09/2025 Systèmes d'Exploitation 7


Structure d’un ordinateur

28/09/2025 Systèmes d'Exploitation 8


Fonctionnement de l’ordinateur : Exemple E/S

 Les périphériques d'E/S et le processeur peuvent s'exécuter simultanément.


 Chaque contrôleur de périphérique gère un type de périphérique spécifique.
 Chaque contrôleur de périphérique dispose d'une mémoire tampon locale.
 Chaque type de contrôleur de périphérique est géré par un pilote de système
d'exploitation.
 Le processeur transfère les données de la mémoire principale vers les mémoires
tampon locales.
 Les E/S s'effectuent du périphérique vers la mémoire tampon locale du contrôleur.
 Le contrôleur de périphérique informe le processeur qu'il a terminé son opération en
provoquant une interruption.

28/09/2025 Systèmes d'Exploitation 9


Cycle interruption E/S

28/09/2025 Systèmes d'Exploitation 10


Cycle interruption E/S

28/09/2025 Systèmes d'Exploitation 11


La mémoire

 Mémoire principale : seul support de stockage volumineux auquel le processeur peut


accéder directement.
 Accès aléatoire
 Généralement volatile
 Généralement une mémoire vive sous forme de mémoire vive dynamique (DRAM).
 Mémoire secondaire : extension de la mémoire principale offrant une grande capacité
de stockage non volatile.

28/09/2025 Systèmes d'Exploitation 12


La mémoire

 Disques durs (HDD) – plateaux rigides en métal ou en verre recouverts d'un matériau
d'enregistrement magnétique.
 La surface du disque est logiquement divisée en pistes, elles-mêmes subdivisées en secteurs.
 Le contrôleur de disque détermine l'interaction logique entre le périphérique et l'ordinateur.
 Mémoires non volatiles (NVM) – plus rapides que les disques durs, non volatiles.
 Diverses technologies.
 Gagnant en popularité avec l'augmentation de la capacité et des performances, leur prix baisse.

28/09/2025 Systèmes d'Exploitation 13


Les disques

28/09/2025 Systèmes d'Exploitation 14


Hiérarchie de la mémoire

 Systèmes de stockage hiérarchisés


 Vitesse
 Coût
 Volatilité
 Mise en cache : copie des informations dans un système de stockage plus rapide ; la
mémoire principale peut être considérée comme un cache pour le stockage secondaire.
 Pilote de périphérique pour chaque contrôleur de périphérique afin de gérer les E/S.
 Fournit une interface uniforme entre le contrôleur et le noyau.

28/09/2025 Systèmes d'Exploitation 15


Hiérarchie de la mémoire

28/09/2025 Systèmes d'Exploitation 16


Hiérarchie de la mémoire

28/09/2025 Systèmes d'Exploitation 17


La mémoire

L'unité de base du stockage informatique est le bit. Un bit peut contenir deux valeurs : 0 et 1. Tout
autre stockage informatique repose sur des ensembles de bits.
Avec suffisamment de bits, il est étonnant de voir combien de choses un ordinateur peut
représenter : des nombres, des lettres, des images, des films, des sons, des documents et des
programmes, pour n'en citer que quelques-uns. Un octet est composé de 8 bits et, sur la plupart
des ordinateurs, il constitue la plus petite unité de stockage pratique. Un terme moins courant est
mot, qui est l'unité de données native d'une architecture informatique donnée. Un mot est composé
d'un ou plusieurs octets. Par exemple, un ordinateur doté de registres 64 bits et d'un adressage
mémoire 64 bits possède généralement des mots de 64 bits (8 octets). Un ordinateur exécute de
nombreuses opérations dans sa taille de mot native plutôt qu'un octet à la fois.

Le stockage informatique, comme la plupart des débits informatiques, est généralement mesuré et
manipulé en octets et en ensembles d'octets. Un kilo-octet, ou Ko, équivaut à 1 024 octets ; un
mégaoctet, ou Mo, équivaut à 1 0242 octets ; un gigaoctet, ou Go, équivaut à 1 0243 octets ; un
téraoctet, ou To, équivaut à 1 0244 octets ; et un pétaoctet, ou Po, équivaut à 1 0245 octets.

28/09/2025 Systèmes d'Exploitation 18


Fonctionnement d’un ordinateur

28/09/2025 Systèmes d'Exploitation 19


Accès direct à la mémoire (DMA)

 Utilisé pour les périphériques d'E/S à haut débit capables de transmettre des
informations à des vitesses proches de celles de la mémoire.
 Le contrôleur de périphérique transfère des blocs de données du stockage tampon
directement vers la mémoire principale, sans intervention du processeur.
 Une seule interruption est générée par bloc, au lieu d'une interruption par octet.

28/09/2025 Systèmes d'Exploitation 20


Démarrage et opération de l’ordinateur

 Programme d'amorçage (Bootstrap) – code simple pour initialiser le système et charger


le noyau
 Chargement du noyau
 Démarrage des « démons » système (services fournis en dehors du noyau)
 Interruptions du noyau (matérielles et logicielles)
 Interruption matérielle par l'un des périphériques
 Interruption logicielle (exception ou trap) :
 Erreur logicielle (par exemple, division par zéro)
 Requête de service du système d'exploitation – appel système
 D'autres problèmes de processus incluent une boucle infinie, des processus se modifiant entre eux ou modifiant le système
d'exploitation

28/09/2025 Systèmes d'Exploitation 21


Multiprogrammation (Système en batch)

 Un utilisateur unique ne peut pas toujours occuper le processeur et les périphériques


d'E/S.
 La multiprogrammation organise les tâches (code et données) de sorte que le
processeur en ait toujours une à exécuter.
 Un sous-ensemble des tâches du système est conservé en mémoire.
 Une tâche est sélectionnée et exécutée via la planification des tâches.
 Lorsqu'une tâche doit attendre (pour des E/S par exemple), le système d'exploitation
bascule vers une autre tâche.

28/09/2025 Systèmes d'Exploitation 22


Traitement par lots (batch)

28/09/2025 Systèmes d'Exploitation 23


Multitâche (Temps partagé)

 Extension logique des systèmes Batch : le processeur change de tâche si fréquemment


que les utilisateurs peuvent interagir avec chaque tâche pendant son exécution, créant
ainsi une interaction informatique.
 Le temps de réponse doit être inférieur à 1 seconde.
 Chaque utilisateur dispose d'au moins un programme exécuté en mémoire (processus).
 Si plusieurs tâches sont prêtes à être exécutées simultanément (ordonnancement du processeur).
 Si les processus ne tiennent pas en mémoire, la permutation (swapping) les déplace vers l'intérieur et
l'extérieur pour les exécuter.
 La mémoire virtuelle permet l'exécution de processus qui ne sont pas entièrement en mémoire.

28/09/2025 Systèmes d'Exploitation 24


Opération en deux modes

 Le fonctionnement en deux modes permet au système d'exploitation de se protéger et


de protéger les autres composants du système.
 Mode utilisateur et mode noyau
 Bit de mode fourni par le matériel
 Permet de distinguer si le système exécute du code utilisateur ou du code noyau.
 Lorsqu'un utilisateur exécute le bit de mode est « utilisateur ».
 Lorsque le code noyau s'exécute, celui-ci est « noyau ».
 Comment garantir que l'utilisateur ne définit pas explicitement le bit de mode sur
« noyau » ?
 L'appel système bascule en mode noyau, et le retour de l'appel le réinitialise en mode utilisateur.
 Certaines instructions sont désignées comme privilégiées et ne sont exécutables qu'en
mode noyau.
28/09/2025 Systèmes d'Exploitation 25
Transition entre modes

28/09/2025 Systèmes d'Exploitation 26


Gestion des processus

 Un processus est un programme en cours d'exécution. C'est une unité de travail au sein du
système. Le programme est une entité passive ; le processus est une entité active.
 Le processus a besoin de ressources pour accomplir sa tâche.
 CPU, mémoire, E/S, fichiers
 Données d'initialisation
 L'arrêt du processus nécessite la récupération de toutes les ressources réutilisables.
 Un processus monothread possède un compteur de programme spécifiant l'emplacement de
la prochaine instruction à exécuter.
 Un processus exécute les instructions séquentiellement, une à la fois, jusqu'à leur achèvement.
 Un processus multithread possède un compteur de programme par thread.
 En général, un système comporte plusieurs processus, des utilisateurs, d'autres systèmes
d'exploitation, exécutés simultanément sur un ou plusieurs processeurs.
 Concurrence par multiplexage des processeurs entre les processus/threads.

28/09/2025 Systèmes d'Exploitation 27


Gestion des processus

 Le système d'exploitation est responsable des activités suivantes liées à la gestion des
processus :
 Création et suppression des processus utilisateur et système
 Suspendre et reprendre les processus
 Fournir des mécanismes de synchronisation des processus
 Fournir des mécanismes de communication entre les processus
 Fournir des mécanismes de gestion des blocages

28/09/2025 Systèmes d'Exploitation 28


Gestion de la mémoire

 Pour exécuter un programme, la totalité (ou une partie) des instructions doit être en
mémoire.
 La totalité (ou une partie) des données nécessaires au programme doit être en mémoire.
 La gestion de la mémoire détermine ce qui est en mémoire et quand.
 Optimisation de l'utilisation du processeur et des réponses de l'ordinateur aux utilisateurs.
 Activités de gestion de la mémoire.
 Suivi des parties de la mémoire actuellement utilisées et par qui.
 Décision des processus (ou parties de processus) et des données à déplacer vers et hors de la mémoire.
 Allocation et désallocation de l'espace mémoire selon les besoins.

28/09/2025 Systèmes d'Exploitation 29


Gestion des fichiers

 Le système d'exploitation offre une vue logique et uniforme du stockage des informations.
 Résume les propriétés physiques de l'unité de stockage logique : le fichier.
 Chaque support est contrôlé par un périphérique (par exemple, un lecteur de disque, un
lecteur de bande).
 Les propriétés varient, notamment la vitesse d'accès, la capacité, le taux de transfert de
données et la méthode d'accès (séquentielle ou aléatoire).

 Gestion du système de fichiers


 Fichiers généralement organisés en répertoires.
 Contrôle d'accès sur la plupart des systèmes pour déterminer qui peut accéder à quoi.
 Les activités du système d'exploitation comprennent :
 Création et suppression de fichiers et de répertoires.
 Primitives pour manipuler les fichiers et les répertoires.
 Sauvegarde de fichiers sur un support de stockage stable (non volatile).
28/09/2025 Systèmes d'Exploitation 30
Protection et sécurité

 Protection – tout mécanisme de contrôle de l'accès des processus ou des utilisateurs


aux ressources définies par le système d'exploitation.
 Sécurité – défense du système contre les attaques internes et externes.
 Vaste éventail de menaces, incluant les attaques par déni de service, les vers, les virus, l'usurpation
d'identité et le vol de service.
 Les systèmes distinguent généralement d'abord les utilisateurs afin de déterminer qui
peut faire quoi.
 Les identités des utilisateurs (identifiants utilisateur, identifiants de sécurité) comprennent le nom et le
numéro associé, un par utilisateur.
 L'identifiant utilisateur est ensuite associé à tous les fichiers et processus de cet utilisateur afin de
déterminer le contrôle d'accès.
 L'identifiant de groupe (ID de groupe) permet de définir un ensemble d'utilisateurs et de gérer les
contrôles, puis de l'associer à chaque processus et fichier.

28/09/2025 Systèmes d'Exploitation 31


Virtualisation

 Permet aux systèmes d'exploitation d'exécuter des applications sur d'autres systèmes
d'exploitation.
 Secteur vaste et en pleine croissance.
 Émulation utilisée lorsque le type de processeur source est différent du type cible (par
exemple, de PowerPC à Intel x86).
 Méthode généralement la plus lente.
 Langage informatique non compilé en code natif – Interprétation.
 Virtualisation – Système d'exploitation compilé nativement pour le processeur,
exécutant des systèmes d'exploitation invités également compilés nativement.
 Exemple : VMware exécute des invités Windows XP, chacun exécutant des applications, le tout sur un
système d'exploitation hôte Windows XP natif.
 VMM (Virtual Machine Manager) fournit des services de virtualisation.

28/09/2025 Systèmes d'Exploitation 32


Virtualisation

 Les cas d'utilisation concernent des ordinateurs portables et de


bureau exécutant plusieurs systèmes d'exploitation à des fins
d'exploration ou de compatibilité.
 Ordinateur portable Apple exécutant Mac OS X en hôte, Windows en invité.
 Développement d'applications pour plusieurs systèmes d'exploitation sans avoir
recours à plusieurs systèmes.
 Tests d'assurance qualité d'applications sans avoir recours à plusieurs systèmes.
 Exécution et gestion d'environnements de calcul au sein de centres de données.

28/09/2025 Systèmes d'Exploitation 33


Virtualisation

28/09/2025 Systèmes d'Exploitation 34


Architecture des ordinateurs

 La plupart des systèmes utilisent un seul processeur généraliste.


 La plupart des systèmes disposent également de processeurs spécifiques.
 Les systèmes multiprocesseurs gagnent en popularité et en importance.
 Également appelés systèmes parallèles ou systèmes à couplage étroit.
 Les avantages incluent :
 Débit accru.
 Économies d'échelle.
 Fiabilité accrue : dégradation progressive ou tolérance aux pannes.

 Deux types :
 Architecture asymétrique : chaque processeur se voit attribuer une tâche spécifique.
 Architecture symétrique : chaque processeur exécute toutes les tâches.
28/09/2025 Systèmes d'Exploitation 35
Architecture symétrique

28/09/2025 Systèmes d'Exploitation 36


Processeur Dual-core

28/09/2025 Systèmes d'Exploitation 37


Clusters

28/09/2025 Systèmes d'Exploitation 38


Environnement informatique

 Traditionnel
 Mobile
 Client-Serveur
 Peer-to-Peer
 Cloud computing
 Temps réel embarqué

28/09/2025 Systèmes d'Exploitation 39


Cloud Computing

28/09/2025 Systèmes d'Exploitation 40


Services du SE

 Les systèmes d'exploitation fournissent un environnement d'exécution de


programmes et de services aux programmes et aux utilisateurs.
 Un ensemble de services du système d'exploitation fournit des fonctions utiles à
l'utilisateur :
 Interface utilisateur : Presque tous les systèmes d'exploitation possèdent une interface
utilisateur (IU).
 On distingue : ligne de commande (CLI), interface graphique (GUI), écran tactile, traitement par lots.
 Exécution de programme : Le système doit être capable de charger un programme en
mémoire, de l'exécuter et de le terminer, normalement ou anormalement (avec indication
d'une erreur).
 Opérations d'E/S : Un programme en cours d'exécution peut nécessiter des E/S, qui
peuvent impliquer un fichier ou un périphérique d'E/S.
 Manipulation du système de fichiers : Les programmes doivent lire et écrire des
fichiers et des répertoires, les créer et les supprimer, les rechercher, répertorier les
informations des fichiers et gérer les autorisations.
28/09/2025 Systèmes d'Exploitation 41
Appels système

 Interface de programmation pour les services fournis par le système


d'exploitation
 Généralement écrite dans un langage de haut niveau (C ou C++)
 Les programmes y accèdent principalement via une interface de
programmation d'application (API) de haut niveau plutôt que par appel
système direct.
 Les trois API les plus courantes sont l'API Win32 pour Windows, l'API
POSIX pour les systèmes POSIX (y compris la quasi-totalité des versions
d'UNIX, Linux et Mac OS X) et l'API Java pour la machine virtuelle Java
(JVM).
28/09/2025 Systèmes d'Exploitation 42
Appels système : Exemple copie fichier

28/09/2025 Systèmes d'Exploitation 43


Appels système : Exemple API

 int fd : le descripteur de fichier à lire


 void *buf : un tampon dans lequel les données seront lues
 size_t count : le nombre maximal d'octets à lire dans le
tampon

28/09/2025 Systèmes d'Exploitation 44


API - Appels système

28/09/2025 Systèmes d'Exploitation 45

Vous aimerez peut-être aussi