Systèmes D'exploitation Et Réseaux Informatiques: FILIÈRE: Informatique Décisionnelle Et Sciences Des Données (IDSD-S1)

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 44

Systèmes d’exploitation et

réseaux informatiques
FILIÈRE : Informatique décisionnelle et sciences
des Données (IDSD- S1)

IAID2: S3 PROF : OUZAYR RABHI ANNÉE UNIVERSITAIRE : 2024 /2025


Système d’Exploitation
Réseaux informatique

Introduction au SE
Maîtriser la Gestion de SE Windows
Maîtriser la Gestion de SE Linux
Réseaux informatique - notions de
bases
PARTIE 1
DÉCOUVRIR LES SYSTÈMES
D’EXPLOITATION (SE)

Dans ce module, vous allez :

• Analyser le fonctionnement d’un SE

• Préparer les disques durs

• Découvrir les SE client et serveur

27 heures
CHAPITRE 1
ANALYSER LE FONCTIONNEMENT D’UN SE

Ce que vous allez apprendre dans ce chapitre :

• Décrire un système d'exploitation SE


• Présenter les concepts fondamentaux d’un SE
• Découvrir le principe de fonctionnement d’un SE

10 heures
CHAPITRE 1
ANALYSER LE FONCTIONNEMENT D’UN SE

1. Décrire un système d'exploitation SE


2. Présenter les concepts fondamentaux d’un SE
3. Découvrir le principe de fonctionnement d’un SE
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Système d’exploitation (SE): Définitions


Un Système d’Exploitation abrévié SE et souvent appelé Operating System (OS) en anglais est un programme ou un ensemble de programmes qui permet la
communication entre les différentes composantes matérielles d’une machine informatique (ordinateur, tablette, smartphone…) et les logiciels applicatifs (traitement de texte,
jeu vidéos, etc.). Un SE prend en charge la gestion et le partage des ressources de la machine soit des ressources physiques tel que les ressources de stockage (la mémoire
vive, disque durs, ..) ou les ressources de calcul (processeur,...), soit des ressources logiques ou virtuelles tel que les fichiers et base de données partagés ainsi que les
canaux de communication logiques. De plus, il assure le démarrage de l'ordinateur, et fournit aux programmes applicatifs des interfaces standardisées pour les périphériques.
Un SE est un programme système fondamental qui contrôle d’une manière efficace toutes les ressources d’une machine et représente une base sur laquelle les programmes
d’application sont écrits. Un SE permet de cacher la complexité de la machine pour l’utilisateur pour lui faciliter son utilisation sans savoir ce qui est derrière. Un SE
représente donc une abstraction du système sous-jacent.

Selon Coy : Abstraction du terme “Machine”

{Machine réelle} = Unité centrale + périphériques

{Machine abstraite} = {machine réelle} + {Système d’Exploitation}

{Machine utilisable} = {machine abstraite} + applications


PARTIE 1

6
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Système d’exploitation (SE) : Définitions


• Comme il est illustré dans la Figure 1, un Système d’Exploitation SE joue le rôle de l'intermédiaire entre les applications (l'utilisateur) telles que les applications de
bureautique et le matériel de l'ordinateur tel que le processeur, la RAM et les périphériques (souris, clavier, microphone, etc.).

• Par exemple, si un utilisateur souhaite lancer l’un des logiciels sur son ordinateur comme le navigateur internet ou un jeu vidéo, l’exécution de ces applications nécessite
l’utilisation des ressources de son PC. Ces applications ne peuvent pas accéder et utiliser directement la mémoire, le processeur ou autres ressources. C’est l’OS qui va
jouer le rôle de chef d’orchestre et contrôler l’accès aux ressources.
PARTIE 1

Figure 1 : Le système d’exploitation joue le rôle de l’intermédiaire entre utilisateur et la


machine physique.

7
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Exemples de Systèmes d’Exploitation

Il existe plusieurs types de systèmes d’exploitation :


1. Systèmes d’exploitation pour ordinateurs personnels comme Windows, Linux, MacOSX…
2. Systèmes mainframes (grands systèmes) comme Multics, IBM MVS, BS2000…
3. Systèmes d’exploitation mobile qui sont utilisés avec des appareils mobile comme les smartphones et les tablettes. Il existe plusieurs variants
comme Android, iOS, Backberry OS, Windows Phone, Bada.

• Android : est le système d'exploitation le plus populaire dans le monde utilisé avec les smartphones et les tablettes.

• Apple iOS : le système d'exploitation Apple iOS est le système d'exploitation utilisé avec l'iPhone et l'iPad d'Apple.
4.Systèmes pour TV comme Android TV, Tizen, tvOS, Firefox OS… Et
PARTIE 1

bien d’autres…

8
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Exemples de systèmes d'exploitation pour


ordinateurs
Dans cette formation, on va s’intéresser en particulier aux systèmes d’exploitation pour ordinateurs.

Il existe plusieurs systèmes d’exploitation pour ordinateur. Windows et Linux sont considérés comme les principaux systèmes d’exploitation existants. Ils sont en évolution

continue avec le temps ce qui implique l’existence des plusieurs versions aujourd’hui.

 Microsoft Windows :

C’est le système d'exploitation le plus courant, le plus utilisé et le plus répandu des 3 sur les ordinateurs aujourd'hui. Il a été crée par Microsoft.

Microsoft Windows 11 est la version la plus récente de Windows. Vous pouvez rencontrer d’anciennes versions : Windows 10, Windows 8, Windows 7, Windows Vista ou

encore Windows XP. Ce système est vendu sur différentes marques d’ordinateurs (Acer, Asus, Dell, HP, Sony, Toshiba...).

• Linux :

C’est un système d'exploitation gratuit et open source. Il existe plusieurs variantes de Linux, notamment Ubuntu, Debian, Red Hat et Slackware. Linux est le moins connu
PARTIE 1

des trois systèmes d’exploitation. Il est rarement installé par défaut sur un ordinateur. Il est utilisé surtout par ceux qui ont de bonnes connaissances en informatique.

Chaque SE a son ergonomie et sa propre présentation qui ont un impact sur l’utilisation des logiciels. En effet, il existe des logiciels qui ne peuvent s’exécuter que sur

Windows.

9
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Historique des Systèmes d’Exploitation :

Quatre Générations d’Ordinateurs

Dans l’histoire, on distingue quatre générations d’ordinateurs.

• Première génération (1938 - 1955):

Durant la première génération, les tubes à vide et les tableaux d’interrupteurs sont utilisés pour effectuer certaines opérations simples de calcul. Les machines

informatique étaient énormes, remplissant des pièces entières et la même équipe s’occupait à la fois de la construction, la programmation, l’administration et la

maintenance des machines. Tous les programmes ont été écrits en langage machine (langage binaire), pas de langage abstrait (C,C++,Java, etc.). L’exécution des applications

a été conçue en basculant les tableaux d’interrupteurs afin de contrôler les fonctions de base de la machine. Les calculs numériques ont été simples. Dans la première

génération, il n’y a pas de système d’exploitation.


PARTIE 1

10
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Historique des Systèmes d’Exploitation :

Quatre Générations d’Ordinateurs

• Deuxième génération (1955 - 1965) :

Durant la deuxième génération, les machines ont été construites au moyen de transistors et dotées d’unités de bandes magnétiques. Il y a eu une séparation entre

concepteurs, constructeurs, programmeurs, opérateurs et personnels de maintenance. Les programmes ont étés écrits en FORTRAN puis codés sur des cartes perforées.

C’est un opérateur humain qui se préoccupe du traitement des travaux (jobs) d’une manière séquentielle ainsi que de la gestion de la soumission des entrées (lecture des

cartes perforées) et sorties (sur imprimante). Les opérations possibles ont été les calculs scientifiques et d’ingénierie ainsi que les résolutions d’équations aux dérivées

partielles. Durant cette génération, les premiers systèmes d’exploitation sont apparus, notamment :

 FMS: Fortran Monitor System


PARTIE 1

 IBYS (IBM)

11
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Historique des Systèmes d’Exploitation :

Quatre Générations d’Ordinateurs

• Troisième génération (1965 - 1980) :

Durant la troisième génération, des circuits intégrés sont utilisés pour la production des ordinateurs. Une seule gamme de produits est apparue (IBM). IBM 1401 est une

machine pour E/S (les opérations d’Entrées / Sorties). IBM 7094 est une machine pour le calcul. Puis IBM a proposé des machines avec la même architecture matérielle et

les même jeux d’instructions. De plus, on note l’apparition de la notion de Multiprogrammation qui correspond à l’exécution de plusieurs programmes en parallèle sur la

même machine, la possibilité de communiquer les données entre programmes via le processur SPOOL (Simultaneous Peripheral Operation On-Line) et de partager la

mémoire (mémoire partagée), ainsi que l’utilisation des mécanismes de protection. Enfin, le SE a pris en charge la gestion des E/S.

Exemples des Systèmes d’exploitation: MULTICS, DEC PDP, UNIX


PARTIE 1

12
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Historique des Systèmes d’Exploitation :

Quatre Générations d’Ordinateurs

• Quatrième génération (1980 –Aujourd’hui) :

Un beau jour, les ordinateurs personnels sont apparus. Ce sont des machines à circuit intégrés à haute densité LSI (Large Scale Integration) : des milliers de transistors sur

1mm² de silicium. De plus, elles sont moins coûteuses. Durant cette génération, les systèmes d’exploitation centralisés en réseaux notamment Windows, Linux sont apparus.

Ils offrent la possibilité de connecter deux machines distantes et d’assurer le transfert de fichiers. Chaque machine possède son propre OS et peut être utilisée par

plusieurs utilisateurs, elle donc nommée machine multi-utilisateurs.

De plus, les systèmes d’exploitation répartis (distribués) sont apparus :

 Système distribué sur un domaine ;

 Une machine virtuelle à plusieurs processeurs ;


PARTIE 1

 Les ressources sont localisées d’une manière transparente ;

 Système fiable et tolérant aux pannes.

Exemples des systèmes d’exploitation: CP/M, MS-DOS, MAC OS X, Windows, UNIX, Linux

13
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Historique des Systèmes d’Exploitation


Une Cinquième Génération ?

• Cinquième génération (Aujourd’hui – Futur)

o Le challenge est de concevoir des ordinateurs basés sur l’intelligence artificielle. En effet, l’objectif est essentiellement la réalisation et le développement de l’appareil
qui est capable de répondre correctement au langage naturel et qui a la capacité d’apprendre et de s’organiser lui-même. De plus en plus, les systèmes deviendront
autonomes.

o De plus, on peut aller plus loin et avoir la possibilité d’utiliser du calcul quantique et des technologies moléculaires et nano dans le futur.
PARTIE 1

14
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

Fonctions d’un système d'exploitation

Un système d’exploitation offre un ensemble de services ou fonctions afin de garantir le bon fonctionnement de la partie applicative de l’ordinateur.

Le système d’exploitation assure la gestion des périphériques, la gestion des ressources, la gestions des processus, la gestion de stockage, etc.

La gestion des périphériques :

Le système d'exploitation gère la communication des périphériques : soit les périphériques d’entrée (clavier, souris, scanner,…) soit les périphériques de sorties (écran,

imprimante,…) via leurs pilotes respectifs. Il garde une trace de tous les périphériques. Le contrôleur d'E/S est le responsable de cette tâche. Il permet l’allocation et la

libération des périphériques de manière efficace.

La gestion des fichiers :

Le système d'exploitation alloue et désalloue des ressources. Il régule quel processus obtient le fichier et pour quelle durée. En outre, il garde une trace des informations,

de l'emplacement, des utilisations et de l'état des fichiers. Cette gestion se fait en utilisant un système de fichiers. C’est un mécanisme qui définit comment les données
PARTIE 1

sont sauvegardées et récupérées.

15
01 – Analyser le fonctionnement d’un SE
Décrire un système d'exploitation SE

La gestion des processus :

Chaque programme exécuté sur un ordinateur est un processus, qu'il soit en arrière-plan (back-end) ou en avant-plan (front-end). Le système d'exploitation est

responsable de l'exécution simultanée de plusieurs tâches (multitâches). Le système d'exploitation manage l’accès des processus au processeur. Le système d’exploitation

a une visibilité sur l’état des processus et des processeurs à un instant donné.

La gestion de la mémoire :

Le système d'exploitation contrôle toutes les opérations de stockage. Certains d'entre eux incluent comment stocker des données ou des fichiers dans les ordinateurs et

comment les utilisateurs accéderont aux fichiers. Le système d'exploitation est responsable alors du stockage et de l'accès aux fichiers. Cela implique la création de fichiers,

la création de répertoires, la lecture et l’écriture des données de fichiers et de répertoires, et également la copie du contenu des fichiers et des répertoires d'un endroit à un

autre.

Autres Fonctionnalités
PARTIE 1

D’autres fonctionnalités sont assurées par le système d’exploitation à savoir le contrôle des erreurs survenues dans les programmes et la récupération du système lorsque

le système est endommagé.

Dans la partie suivante, nous allons présenter en détails les fonctionnalités d’un système d’exploitation.

16
CHAPITRE 1
ANALYSER LE FONCTIONNEMENT D’UN SE

1. Décrire un système d'exploitation SE


2. Présenter les concepts fondamentaux d’un SE
3. Découvrir le principe de fonctionnement d’un SE
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Le système d’exploitation fournit un ensemble de services qui facilitent la création et l’utilisation des logiciels applicatifs. Ces services fournis permettent principalement la
gestion d’accès des ressources de l’ordinateur par les programmes. Ils permettent essentiellement l’exécution des programmes, la lecture et l’écriture des informations, la
manipulation des fichiers, la communication entre ordinateurs ainsi que de déceler des erreurs. De plus, ces services vont permettre à plusieurs programmes et à plusieurs
usagers de partager les ressources de l’ordinateur d’une manière fiable, rapide et rationnelle.

Dans la partie suivante, on va découvrir en détail les concepts fondamentaux suivant d’un OS :

1. La gestion des Processus

2. La gestion de la Mémoire

3. La gestion des Entrées/Sorties

4. La gestion des Fichiers


PARTIE 1

5. La gestion des Utilisateurs

18
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

La Gestion des processus

Un système d’exploitation permet l’exécution des programmes sur un ordinateur. Chaque programme exécuté est un processus. On commence donc

par définir un processus. Un processus est l’entité qui correspond à l’exécution d’un programme. Concrètement et comme le montre la Figure 2, un

processus est défini par :


Données
- un espace mémoire : il contient les données, le code et la pile d’instruction ;
Ressources
handles C
- un compteur ordinal (zone mémoire qui représente l’instruction en cours) ;
o Tas
- un ensemble de registres. d
e Registres
Un processus est un programme en cours d’exécution et il est exécuté par un ou plusieurs processeurs.
Pile
Un programme peut être constitué d’un ou d’un ensemble de processus.
PARTIE 1

Figure 2: Les composants d’un processus

19
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Espace d’adressage d’un processus

Chaque processus est caractérisé par son espace d'adressage.

L’espace d’adressage est l’ensemble d'adresse mémoires utilisées par le processus pour lire

et écrire des données. Comme il est illustré dans la Figure 3, 0*FFFFFFFF


Pile
cet espace est formé de trois éléments :

• le segment de données ;

• le segment de texte ;
Segment de données
• la pile.

Segment de texte
PARTIE 1

Le segment du texte correspond au code de programme 0*00000000


et le segment de données correspond aux variables. Figure 3 : Espace d’adressage d’un processus

20
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Etats d’un processus


La Figure 4 décrit le comportement d’un processus. Initialement, le processus est à l’état Nouveau

c’est-à-dire que le processus est en cours de création. Une fois que le processus est créé il passe à

l’état Prêt (Ready) il attend d’être affecté à une UC (Unité de Calcul) c’est-à-dire un processeur appelé

aussi CPU (abréviation de Central Processing Unit). Notez, un processeur ne peut exécuter qu’un

seul processus à la fois. Une fois le processus sélectionné par l’ordonnanceur (aussi appeler

dispacher, répartiteur ou ordonnanceur du processeur, son rôle étant de choisir à quel processus

sera alloué le processeur et pour quel laps (durée) de temps), il passe alors à l’état En exécution

(Running) où les instructions sont en cours d ’exécution. Un processus peut être interrompu. Dans

ce cas, il retourne à l’état Prêt en attendant un nouvel accès au processeur. Un processeur peut

attendre qu’un événement se produise (un signal , terminaison d’une E/S, ...),
PARTIE 1

Figure 4 : Diagramme d’état d’un processus


dans ce cas là, il va passer à l’état Bloqué (Sleep) jusqu’à l’arrivée de l’événement. Une fois

l’événement arrivé, il retourne à l’état Prêt. Une fois que l’exécution du processus s’achève, il

arrive à son état final Terminé.

21
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Gestion des processus

Afin de gérer les processus, le système d’exploitation associe pour chaque processus un bloc de contrôle appelé en anglais Process Control Bloc et

abrévié PCB qui contient les informations nécessaires sur un processus.


Identificateur de processus
Le Bloc de contrôle de processus comme le montre la Figure 5 est composé de:
Etat du processus
- l’état du processus : nouveau, prêt, en exécution ;
Compteur ordinal
- prochaine instruction à exécuter ; Contexte (Registre, pointeur pile..)
- informations sur l’ordonnancement des processus ; Informations sur l’ordonnancement

- informations sur la gestion mémoire ; Informations mémoire

- informations de comptabilisation ; Informations sur les E/S


PARTIE 1

Figure 5 : Structure d’un Bloc de contrôle de processus


- informations sur l’état des E/S.

22
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Pour assurer la gestion des processus, le SE utilise les blocs de contrôle. Ils
permettent le contrôle d’accès des processus au processeur. En utilisant ces
blocs de contrôle, le SE a une visibilité totale sur l’état de chaque processus à
un instant donné.

La Figure 6 présente un scénario d’exécution de deux processus P0 et P1. En


effet, une fois le processus P0 en exécution, il peut être interrompu par un
autre processus ou bloqué à l’attente d’un appel système. Dans ce cas, son état
sera sauvegardé dans son bloc de contrôle PCB0 et il sera inactif. Pendant ce
temps, un autre processus P1 peut avoir l’accès au processeur et donc il
commence son exécution ou il reprend son exécution à partir de sa dernière
exécution rechargée, à partir son état sauvegardé dans le bloc de contrôle PCB1.
Le processus P1 peut aussi être interrompu ou bloqué, dans ce cas il sauvegarde
son état d’exécution dans PCB1 et libère le processeur puis donne la main au
PARTIE 1

processus P0 pour reprendre son travail en chargeant l’état sauvegardé de sa


dernière exécution, et ainsi de suite. Le SE s’occupe de sauvegarder et de
Figure 6 : Scénario d’exécution de deux processus P0 et P1
recharger de l’état des processus ainsi que de l’allocation et de la libération de
processus.

23
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Les processus seront exécutés dans la mémoire centrale RAM (abréviation de Random Access Memory) qui présente la mémoire vive de l’ordinateur. Le SE s’occupe aussi

de la gestion de la mémoire, sur laquelle nous allons nous concentrer à présent.

Gestion de la mémoire :

La mémoire est considérée comme une ressource limitée, Il faut la gérer de façon optimisée. La gestion de la mémoire est la fonctionnalité d'un système d'exploitation qui

joue le rôle de l’intermédiaire entre la RAM, les processus et le disque. Le système d’exploitation coordonne l’utilisation des différentes mémoires. En effet, le SE va contrôler

l’accès des processus à la RAM et il décide alors quel processus obtiendra la mémoire à quel moment. Un SE peut allouer donc d’une manière dynamique la mémoire aux

processus. Le SE a une visibilité sur l’état de chaque emplacement dans la mémoire qu'il soit alloué à un processus ou qu'il soit libre. Par conséquence, il est possible vérifier

la quantité de mémoire à allouer aux processus.


PARTIE 1

Dans ce qui suit, on va découvrir en détails la gestion de la mémoire.

24
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

La mémoire est représentée par un grand tableau de mot (octets), chacun ayant sa propre adresse. Le processeur va extraire les instructions de la RAM en fonction de la
valeur d’un compteur d’instructions.

Une partie du SE gère le stockage de la mémoire centrale de l’ordinateur et du disque : ceci se nomme le système de gestion de la mémoire.

Les principales fonctions du systèmes de gestion de la mémoire sont :

• Le suivi de l’état des différentes parties de la mémoire si elles sont utilisées ou non utilisées => connaître les zones libres et utilisées ;

• L’allocation et la libération de la mémoire principale aux différentes processus ;

• L’utilisation de la mémoire virtuelle et le contrôle du va et vient (swapping) entre la mémoire principale et le disque lorsque cette dernière ne peut pas contenir tous les
processus.

Il existe plusieurs stratégies pour gérer la mémoire telles que :


• La Monoprogrammation ;
• La Multiprogrammation avec partitions fixes ;
PARTIE 1

• Va et Vient , la partitionnement dynamique ;


• La pagination ;
• La segmentation, etc.

25
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

La Monoprogrammation
La monoprogrammation consiste à charger et exécuter un seul processus à la fois et entièrement en MC.
• Organisation de la MC : cas de MS-DOS.
• Problème : cas de programme volumineux ne pouvant tenir en MC.

La Multiprogrammation avec partitions fixes


La majorité des SE récents autorisent l’exécution de plusieurs processus en parallèle. Pour appliquer la multiprogrammation, la mémoire est subdivisée en N partitions de
taille fixe. Chaque partition sera allouée à un seul processus. Le nombre de partitions est nommé le degré de multiprogrammation.

Afin de gérer l’allocation de la mémoire aux processus, le SE manipule une table qui l’informe sur les partitions disponibles (appelée Trou (Hole en anglais)) et celles
occupées.

On distingue deux types de partitions:


- Partition fixes avec des files d’attente différentes (voir Figure 7 (a)).
PARTIE 1

- Partition fixes avec une seule file d’attente (voir Figure 7 (b)).

Inconvénient de la méthode avec des différentes files : déséquilibre de la partition de la mémoire entre les files, on peut avoir une file vide pour une grande partition et
une autre pleine pour une petite partition. Ce problème peut être résolu en utilisant une seule file.

26
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE
PARTIE 1

Figure 7: (a) Partition fixes avec des files d’attente différentes (b) Partition fixes avec une seule file d’attente

27
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Va et Vient , la partitionnement dynamique


• La mémoire est insuffisante pour contenir tous les processus courant. Ce qui nécessite de placer certains de ces processus sur le disque. Ils seront ensuite
ramenés en mémoire pour continuer leurs exécutions.

• Il faudra donc ramener régulièrement des processus sur le disque en mémoire centrale et inversement. C’est ce qu’on appelle le va-et-vient ou swapping.

• L’utilisation d’une Mémoire auxiliaire (backing store) : disque rapide suffisamment grand pour pouvoir ranger les copies de toutes les images mémoire de
tous les utilisateurs.

La plupart du temps le swapping est constitué de temps de transfert. Le temps total de transfert est directement proportionnel à la quantité de mémoire
transférée.
Contraintes :
Processus à transférer doit être inactif.
Si les E/S accèdent d’une manière asynchrone à la mémoire utilisateur pour utiliser les buffers E/S, le processus ne peut pas être transféré.
PARTIE 1

28
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Pour les deux dernières stratégies, pagination et segmentation sont des stratégies appliquées sur la mémoire virtuelle. On commence donc par présenter la définition

de la mémoire virtuelle.

Mémoire virtuelle : elle fournit un espace d’adressage différent de la mémoire RAM. Ainsi, il est possible d’exécuter des programmes qui nécessitent plus de ressources

que la taille de la RAM disponible.

Mémoire virtuelle = RAM + partition SWAP

La mémoire virtuelle utilise les techniques de pagination, segmentation ou segmentation paginée.

La mémoire d'échange (Swap) est un espace de stockage de disque dur qui est utilisée chaque fois que la RAM manque de mémoire. Il existe un programme de gestion

de la mémoire sous Linux qui prend en charge ce processus.


PARTIE 1

Chaque fois que la RAM manque de mémoire, le programme de gestion de la mémoire recherche tous les blocs de données inactifs présents dans la RAM qui n'ont pas

été utilisés depuis longtemps. Lorsqu'il trouve ces blocs avec succès, il les déplace dans la mémoire d'échange. De cette façon, l'espace de la RAM est libéré et peut

donc être utilisé pour d'autres programmes nécessitant un traitement urgent.

29
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Gestion de la mémoire : Pagination (Paging)


Avant d’expliquer la notion de pagination, quelques prés-requis sont nécessaires.

-L’espace adresse logique (virtuelle) d’un processus n’est pas contigu. Alors que, la mémoire physique est découpée en blocs de taille fixe appelés cadres de

pages ou en anglais frames.

-La mémoire logique est également subdivisée en blocs de la même taille appelés pages.

- Pour exécuter un programme de n pages, il faut trouver n cadres libres et charger le programme. Il faut savoir quels cadres sont alloués, lesquels sont disponibles, etc.

Cette information est sauvegardée dans la table de cadre (Frame table).


La pagination consiste donc à diviser l’espace d’adressage virtuel en pages qui ont la même taille. La mémoire physique est également divisée en pages physiques ayant la
même taille.
La pagination consiste à placer seulement certaines pages dans la RAM. Les autres pages restent dans la mémoire auxiliaire jusqu’à qu’elles soient référencées.
Une table de pages existe pour gérer les correspondances entre les pages virtuelles et les pages physiques, c’est à dire : il traduit l’adresse logique en adresse physique.
(voir Figure8).
PARTIE 1

30
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Gestion de la mémoire : Pagination (Paging)


La pagination consiste à placer seulement certaines pages dans la RAM. Les autres pages restent dans Pages virtuelles Pages Physiques
la mémoire auxiliaire jusqu’à qu’elle soient référencées. Une table de pages existe pour gérer les 0 0
correspondances entre les pages virtuelles et les pages physiques (voir Figure 8). 1 1
La Pagination 2 2
Cette technique consiste à découper l’espace d’adressage virtuel du programme en morceaux 3 3
linéaires qui possèdent la même taille et qui sont appelés pages. L’espace de la mémoire physique est 4 …………
aussi découpé lui-même en morceaux linéaires appelée case et ayant la même taille.
8
La taille d’une page est définie par le matériel. Taille page = case – définie par le matériel (selon SE …..
entre 512 octets et 8192 octets). 16

Charger un programme en mémoire centrale – placer les pages dans les cases disponibles.

Pour connaître à tout moment quelles sont les cases libres en mémoire centrale, le système
PARTIE 1

maintient une table des pages.


Figure 8 : Correspondance Pages Virtuelles/
Pour chaque case de la mémoire physique, information : – Libre ou occupée – Si occupée, quelle Pages Physiques

page et quel processus la possède ?

31
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Pagination: défaut de page

Maintenant, on va étudier le cas où l’adresse virtuelle référence une page qui n’est pas présente en mémoire physique. Ce cas est nommé défaut de page.

Dans le cas de défaut de page, le mécanisme d’adressage génère un défaut de page. Si la mémoire physique est pleine, il faut virer de la mémoire physique une page c’est-

à-dire un remplacement. Le choix d’une page « victime » se fait selon une stratégie de remplacement.

Il existe plusieurs stratégies de remplacement :

- FIFO, l’abréviation de First In First Out nommée aussi PEPS (l’abréviation de Premier Entré Premier Sortie) : le premier qui arrive sera celui qui sera servi le premier, donc

par ordre chronologique de chargement. On remplace la page la plus anciennement utilisée, ce qui implique une datation lors du chargement de chaque page virtuelle.

-LRU, l’abréviation de Least Recently Used : on remplace la page le plus récemment utilisée.

Ce qui impose, encore, de dater les pages.

-LFU, l’abréviation de Last Frequently Used : on remplace la page la moins fréquemment utilisée.
PARTIE 1

Pour cela, on a besoin d’un compteur de fréquence d’utilisation de chaque page.

- RNDOM : il s’agit de choisir au hasard la page à remplacer. Cela ne nécessite pas d’informations supplémentaires.

32
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

La Segmentation

Les programmes se divisent en parties appelées segments. Chaque segment représente une entité (procédure, bloc de données) (Voir Figure 9) .

Les segments n’ont pas toujours la même taille.

Un segment virtuel est de même taille qu’un segment en mémoire physique.

Espace virtuel Espace physique

Segment de code Segment de code

Segment de données Segment de données

Segment de pile
PARTIE 1

Figure 9 : Composition de l’espace virtuel et de l’espace physique

33
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

La segmentation :
Le principe de traduction d’adresses consiste à traduire les adresse virtuelles (logiques) vers celles physiques. La Figure 10 montre l’utilisation du tableau des segments
pour effectuer la traduction de l’adresse virtuelle vers l’adresse physique.

Segment S A : Adresse dans le segment Adresse Virtuelle

Base Limite R P M Droit


100 300 1 1 1 0
Présent
Référencé
Table des segments Modifié

700 1000 0 0 0 0
PARTIE 1

+
Adresse physique

Figure 10 : Traduction des adresses logiques virtuelles vers les adresses physiques.

34
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Gestion des E/S

Continuons la présentation des concepts fondamentaux d’un SE. Le système d’exploitation gère les processus et les mémoires. Aussi, il assure la gestion des entrées et

sortie.

Pour transférer les données entre les supports externes et la mémoire centrale, plusieurs composants interviennent :

o Unité d’échange (Canal d’entrée/Sortie) ;

o Le périphérique ;

o Le contrôleur de périphérique .

Canal d’Entrée/Sortie : est un processeur qui gère les opération d’E/S. Il indique au processeur central (CPU) de ne pas considérer les détails relatifs aux E/S.

Contrôleur de périphérique : l’objectif de contrôleur de périphérique est d’adapter la diversité des périphériques (débit, format de données, temps de réponse, forme de
PARTIE 1

signaux de commande) à une interface commune, afin de respecter les normes suivies par le constructeur.

35
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Les périphériques :

Ce sont les composants matériels connectés à un système de traitement de l’information central comme un ordinateur, une console de jeu, permettant un échange avec

l’extérieur (voir Figure 11). Il existe trois types de périphérique :

• Les périphériques d’entrées qui permettent l’entrée des données dans l’ordinateur (comme le clavier, la sourie, le microphone, le scanner,...) ;

• Les périphériques de sortie qui permettent la sortie des données de l’ordinateurs comme l’écran (sous forme d’affichage), le haut parleur (sous forme de son),

l’imprimante (sous forme de papier) ;

• Les périphériques d’entrée / sortie comme flash USB.

On distingue deux types de périphériques selon la manière de transfert de données :

• Les périphériques de type bloc (disque, bande) : c’est-à-dire que les données sont transférées en bloc ;

• Les périphériques de type caractère (clavier, souris, imprimante…) : ce qui signifie que les données sont transférées caractère par caractère.
PARTIE 1

36
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Device Input/Output Data rate Type

Keyboard Input 100 bps char


Mouse Input 3800 bps char
Voice input/output Input/Output 264 Kbps block burst
Sound input Input 3 Mbps block burst or steady
Scanner Input 3.2 Mbps block burst
Laser printer Output 3.2 Mbps block burst
Sound Output Output 8 Mbps block burst or steady
Flash drive Storage 480-800 Mbps read; block burst
80 Mbps write
USB Input or Output 1.6-480 Mbps block burst
Network/Wireless LAN Input or Output 11-100 Mbps block burst
Network/LAN Input or Output 100-1000 Mbps block burst
Graphics display Output 800-8000 Mbps block burst or steady
Optical disk Storage 4-400 Mbps block burst or steady
Magnetic tape Storage 32-90 Mbps block burst or steady
PARTIE 1

Magnetic disk Storage 240-3000 Mbps block burst

Figure 11 : La liste des périphériques connectés à un ordinateur

37
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Système de Gestion des fichiers

Le système d'exploitation doit comprendre le système de fichiers pour pouvoir afficher son contenu, ouvrir des fichiers et y enregistrer des fichiers.

Les différents systèmes de fichiers sont simplement les différentes manières d'organiser et de stocker des fichiers sur un disque dur, une clé USB ou tout autre

périphérique de stockage. Chaque périphérique de stockage possède une ou plusieurs partitions, et chaque partition est « formatée » avec un système de fichiers.

Le processus de formatage crée simplement un système de fichiers vide sur l'appareil.

Quels que soient le type et l'utilisation, un disque contient un système de fichiers et des informations sur l'emplacement de stockage des données du disque, ainsi que la

manière dont un utilisateur ou une application peut y accéder. Un système de fichiers gère généralement les opérations, telles que la gestion du stockage, le nommage des

fichiers, les répertoires/dossiers, les métadonnées, les règles d'accès et les privilèges.

Les systèmes de fichiers couramment utilisés incluent la table d'allocation de fichiers 32 (FAT 32) et le système de fichiers de nouvelle technologie (NTFS).
PARTIE 1

38
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Système de Gestion des fichiers

Un système de fichiers fournit un moyen de séparer les données sur le lecteur en morceaux individuels, qui sont les fichiers. Il fournit également un moyen de stocker des

données sur ces fichiers, par exemple les noms de fichiers, leurs autorisations et d'autres attributs.

Le système de fichiers fournit également un index - une liste des fichiers sur le disque et où ils se trouvent sur le disque, afin que le système d'exploitation puisse voir ce

qu'il y a sur le disque en un seul endroit plutôt que de parcourir tout le disque pour trouver un fichier (voir Figure 12).

Fichier 1

Système
Système de fichiers Fichier 2
d’exploitation
PARTIE 1

Fichier n
Figure 12 : Le système de fichiers : un intermédiaire entre le SE et les fichiers

39
01 – Analyser le fonctionnement d’un SE
Présenter les concepts fondamentaux d’un SE

Gestion des utilisateurs

Il est possible de classer les SE en deux catégories suivant le nombre d’utilisateurs :

• Les SE Mono utilisateur : ce sont les systèmes d'exploitation à utilisateur unique qui permettent à un seul utilisateur d'accéder à un moment donné à l’ordinateur. Ces

SE à utilisateur unique peuvent être repartis en deux classes :

1.Système d'exploitation mono-utilisateur mono-tâche : dans le système d'exploitation mono-utilisateur mono-tâche, un seul utilisateur est autorisé à effectuer

une seule tâche à la fois. Ce système d'exploitation est spécialement conçu pour les téléphones sans fil ainsi que les appareils de messagerie bidirectionnelle

Exemple : MS-DOS

2.Système d'exploitation multitâche mono-utilisateur : le système d'exploitation mono-utilisateur multi-tâches est développé spécialement pour un utilisateur,

mais cet utilisateur unique est capable d'effectuer plusieurs tâches exécutées en même temps.

• Les SE multi-utilisateur :
PARTIE 1

Ce Type de système d’exploitation supporte plusieurs sessions en même temps.

40
CHAPITRE 1
ANALYSER LE FONCTIONNEMENT D’UN SE

1. Décrire un système d'exploitation SE


2. Présenter les concepts fondamentaux d’un SE
3. Découvrir le principe de fonctionnement d’un SE
01 – Analyser le fonctionnement d’un SE
Découvrir le principe de fonctionnement d’un SE

La Figure 13 schématise les principaux composants nécessaire pour le démarrage d’un ordinateur ainsi que leurs rôles.

Processeur BIOS
exécute recherche

Noyau Support de données

- architecture Boot loader


- Mémoire virtuelle dans le MBR
- Interruptions
exécute
- Scheduler
- Horloge
- Modules
- Processus « init » et
« idle » Boot sector
PARTIE 1

charge charge

Figure 13: Composants de démarrage d’un ordinateur et leurs rôle

42
01 – Analyser le fonctionnement d’un SE
Découvrir le principe de fonctionnement d’un SE

Maintenant, on va découvrir la fonctionnalité de chaque élément participant dans le démarrage de l’ordinateur.

Le BIOS :

est l’abréviation du Basic Input Output System, c’est un très petit morceau de code contenu sur une puce de l’ordinateur. En démarrant l’ordinateur, le BIOS est le premier

logiciel qui s'exécute. Il identifie le matériel de l’ordinateur, le configure, le teste et le connecte au système d'exploitation pour obtenir des instructions supplémentaires. C'est

ce qu'on appelle le processus de démarrage. L'accès à l'utilitaire de configuration du BIOS permet de modifier l'ordre du processus de démarrage ainsi qu'une grande variété

de paramètres matériels. Il n'est pas recommandé à un utilisateur inexpérimenté de modifier les paramètres du BIOS, à moins qu'une source fiable ne lui demande de le

faire. Au fil du temps, les limitations du BIOS ont conduit à la création d'une nouvelle interface de micrologiciel appelée Unified Extensible Firmware Interface, abrévié

UEFI.

L'UEFI :
PARTIE 1

est très similaire au BIOS, mais présente certains avantages. Il peut démarrer à partir de disques de plus de 2 To, possède une interface utilisateur graphique avec capacité

réseau et est compatible avec les versions antérieures et ultérieures. L'UEFI devrait éventuellement remplacer le BIOS.

43
01 – Analyser le fonctionnement d’un SE
Découvrir le principe de fonctionnement d’un SE

Pour qu’un ordinateur démarre, il faut exécuter le code de démarrage principal Boot loader qui se trouve dans le MBR (Voir Figure 13).

Le MBR (Master Boot Record)


• Le MBR se compose de trois éléments principaux : la table de partition principale, la signature du disque et le code de démarrage principal ;

• Le BIOS recherche un périphérique cible à partir duquel démarrer, qui contient un enregistrement de démarrage principal ;

• Le code de démarrage du MBR utilise le code de démarrage du volume de cette partition spécifique pour identifier l'emplacement de la partition système ;

• Le secteur de démarrage de cette partition particulière est utilisé pour démarrer le système d'exploitation.

Le noyau est le cœur du système d'exploitation. C'est la couche entre l’utilisateur qui travaille avec le système et le matériel qui est disponible sur l'ordinateur.

On peut citer à titre d’exemple le noyau linux qui est de conception modulaire. Au démarrage, seul un noyau résident minimal est chargé dans la mémoire. Par la suite,
PARTIE 1

chaque fois qu'un utilisateur demande une fonction qui n'est pas présente dans le noyau résident, un module de noyau est chargé dynamiquement en mémoire.

Les modules du noyau Linux sont normalement chargés automatiquement par les périphériques. Cependant, il est possible de charger manuellement certaines modules

du noyau.

44

Vous aimerez peut-être aussi