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

Introduction aux systèmes d'exploitation

Ce document décrit les fonctions d'un système d'exploitation, notamment la gestion de la mémoire, des E/S, du processeur et de la concurrence. Il aborde également la gestion des fichiers et des mémoires secondaires via les systèmes de fichiers, ainsi que les différentes méthodes d'allocation d'espace disque.

Transféré par

Seif Laâmiri
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)
62 vues6 pages

Introduction aux systèmes d'exploitation

Ce document décrit les fonctions d'un système d'exploitation, notamment la gestion de la mémoire, des E/S, du processeur et de la concurrence. Il aborde également la gestion des fichiers et des mémoires secondaires via les systèmes de fichiers, ainsi que les différentes méthodes d'allocation d'espace disque.

Transféré par

Seif Laâmiri
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

Systèmes d’exploitation II

Chapitre 0 : Introduction générale

Objectif :
Rappel des notions vues dans le module systèmes d’exploitation I.

I. Introduction
Le système d’exploitation est un ensemble de programmes qui permettent l’exploitation du
matériel. Il offre à l’utilisateur une machine virtuelle.

Le SE offre un environnement avec facilité d’emploi et utilisation efficace des ressources :

Le SE cache les détails matériels (fonctionnement des périphériques).


Le SE est un gestionnaire de ressources : il gère l’allocation des processeurs, de la
mémoire, des périphériques, etc.

Exemples de systèmes d’exploitation : Solaris, MacOs, Windows (98,2000,.., Windows 7),


Linux (Fedora, Redhat, Mandriva,…) et Android pour les smartphones.

II. Evolution des SE


L’historique des SE est intimement lié à l’évolution de l’informatique. Cette évolution est
séparée en quatre grandes étapes :

• L’ordinateur était mono-tâche. Nécessité d’un opérateur dans la salle machine pour
intervenir avant et après chaque travail.
1ère génération (1945-1955)
(-) Son principal inconvénient est sa programmation : les programmeurs devaient
écrire leurs programmes directement en binaire, puis faire entrer leurs programmes
manuellement (soit par des interrupteurs ou des câbles à enficher).
(-) Gestion du système informatique basée sur la réservation des plages horaires.
(-) L’ordinateur était peu fiable et volumineux.

1
Systèmes d’exploitation II

• Naissance du 1er SE s’appelant moniteur fonctionnant sur une machine à base de


transistors. Le moniteur était responsable de l’enchaînement automatique du lot du
travail. On parlait de traitement par lot.
2ème génération (1955-1965)
(+) L’ordinateur était plus fiable et moins encombrant.
(-) La monoprogrammation existait toujours.
• L’apparition des circuits intégrés et du concept de la multiprogrammation.
3ème génération (1965-1980)
L’apparition de la notion temps partagé : partager le temps processeur pour plusieurs
utilisateurs (processus).
• La génération des micro-ordinateurs (microprocesseur) avec la création des circuits
intégrés.
4ème génération (depuis 1980)
• Aujourd’hui, on continue à miniaturiser les composants électroniques. Ainsi, les SE
n’arrêtaient pas de se développer et évoluer. Ils sont devenus modulaires (un module
par fonction). De ce fait, ils sont devenus adaptables à de très petites machines.

III. Fonctions d’un système d’exploitation


- Gestion de l’allocation des mémoires de masse : SGF.
- Gestion de la mémoire : le système doit gérer l’allocation de la mémoire centrale
entre les différents programmes pouvant s’exécuter (pagination/segmentation).
- Gestion des E/S : le système doit gérer l'accès aux périphériques : Faire la liaison
entre les appels de haut niveau des programmes users (scanf(...))et les opérations de
bas niveau de l'unité d'entrée (clavier) C’est le pilote d ’E/S (driver) qui assure cette
correspondance.
- Gestion du processeur : le système doit gérer l’allocation du processeur aux
différents programmes pouvant s'exécuter: Planifier l’exécution des
programmes algorithmes d’ordonnancement.
- Gestion de la concurrence : Plusieurs programmes coexistent en MC, ceux-ci
peuvent vouloir communiquer par échange de données. Afin de maintenir la
cohérence, il faut synchroniser l'accès aux données partagées.
Le système offre des outils de synchronisation et communication entre programmes.

2
Systèmes d’exploitation II

IV. Système de gestion des fichiers


Un système de gestion de fichier (SGF) est un composant du noyau du système d’exploitation
(SE). Le SGF joue le rôle d’intermédiaire entre l’utilisateur et les mémoires auxiliaires de
l’ordinateur. (SGF gère et organise les différents fichiers)

a. Le fichier
D’un point de vue logique: Un fichier est un ensemble d’informations regroupées en vue de
leur conservation et leur utilisation ultérieure dans un système informatique (= matériel +
logiciel).

D’un point de vue physique: Un fichier est un ensemble d’unités d’allocation (blocs ou
clusters) occupées sur un support de stockage.

Une unité d’allocation est le plus petit espace de mémoire secondaire adressable par
le SE. On peut considérer que la mémoire secondaire comme un ensemble fini d’unités
d’allocation.

b. Les mémoires secondaires sont les supports de stockage servant à conserver les
données de manière permanente, contrairement à la mémoire vive, qui s'efface à
chaque redémarrage de l'ordinateur.

Les mémoires secondaires sont des mémoires non volatiles, exemples : disque dur, CD,
DVD, disquette, bande magnétique…

Le disque dur

Le disque dur est constitué de plusieurs plateaux. Chaque plateau


contient 2 surfaces. Chaque surface est composée de plusieurs pistes concentriques. Chaque
piste est divisée en un ensemble de secteurs. Un secteur est généralement de taille 512 octets
représente la plus petite unité adressable. Les pistes situées à un même rayon forment un
cylindre (=ensemble de pistes superposées).

Une unité d’allocation (ou bloc) est un ensemble de secteurs.

Pour enregistrer un fichier, il faut lui allouer de l’espace. L’allocation de l’espace sur un
support physique se fait par blocs.

Activité : Taille(bloc) = 512o et taille(fichier) = 4ko nb(blocs) = 8 blocs.

Nombre de blocs occupés par un fichier = taille (fichier) / taille (bloc)

Ces blocs peuvent être contigus ou éparpillés sur le support physique selon la méthode
d’allocation d’espace utilisée.

1. Allocation contigüe : allouer une série de blocs consécutifs pour stocker un fichier.
3
Systèmes d’exploitation II

(+) méthode simple, lecture rapide d’un fichier (peu de déplacement de la tête de
lecture)
(-) difficulté de faire évoluer les fichiers déjà enregistrés.
(-) fragmentation du disque : Il y a assez de blocs libres, mais éparpillés qui ne
peuvent pas contenir des fichiers de grandes tailles.
2. Allocation chaînée : on réserve quelques octets dans chaque bloc pour écrire l’adresse
du bloc suivant
données Pointeur sur l’@
du bloc suivant
Chaque bloc permet de retrouver le bloc suivant
(+) Il suffit d’enregistrer l’adresse du 1er bloc d’un fichier pour pouvoir le lire en
totalité.
(+) Tous les blocs peuvent être utilisés : il n’y a plus de fragmentation.
(-) Lecture moins rapide (les blocs ne se trouvent pas sur la même piste).
(-) L’accès est séquentiel (ex : lire bloc n°10).
(-) gaspillage d’espace (partie réservée aux pointeurs)
(-) perte de chaînage (pointeur endommagé) entraine la perte de tout le reste du fichier.
3. Allocation chaînée indexée : séparer les pointeurs des données et les stocker dans une
table, exemple FAT (File Allocation Table).

0 Fichier Adresse du 1er bloc


1
2 7 A 2
3 8
4
5
Nb entrées = nb de blocs de l’unité
6
7 3
8 EOF
chaque entrée i de la FAT correspond au bloc i de
9 l’unité et indique l’@ du bloc suivant
10
11 @ du 1er bloc de A est 2. Ensuite, à partir de la FAT,
les blocs de A sont : 2, 7, 3,8.
..

Chaque entrée de la FAT est codée sur 12 ou 16 ou 32 bits(= nb bits utilisés pour coder une
@), ainsi, on parle de FAT12 ou FAT16 ou FAT32.

(+) Un bloc est disponible dans sa totalité pour les données.


(+) L’accès aux différents blocs est aléatoire (tandis que avec les méthodes avec chaînage, il
est séquentiel).

(-) La totalité de la FAT doit se trouver en MC( le principal inconvénient). Pour les grands
disques, la taille de la FAT devient importante. De plus, pour des raisons de sécurité, la FAT
est dupliquée.

Solution : charger en mémoire que les descripteurs des fichiers dont on en a besoin.

4
Systèmes d’exploitation II

4. Allocation par nœud d’information : chaque fichier est associé à une table (nœud
d’information ou i-node). Le principe de cette méthode est de charger en MC que les i-
nodes des fichiers ouverts.
Chaque table contient les adresses sur disque des blocs du fichier.

Remarque : Indépendamment de la méthode d’allocation utilisée, un bloc est considéré


occupé même si il est partiellement utilisé.

V. Gestion de la mémoire
La multiprogrammation est la possibilité de faire coexister plusieurs processus dans la MC
et pouvoir bénéficier des temps morts d’un processus pour faire avancer les autres processus.

1. La façon la plus simple consiste à affecter à chaque processus un ensemble d'adresses


contiguës. (Partitions fixes).
On utilise seulement la MC taille (processus) <= taille(MC)
2. Quand le nombre de tâches devient élevé, pour satisfaire au principe d'équité (justice) et
pour minimiser le temps de réponse des processus, il faut pouvoir simuler la présence
simultanée en MC de tous les processus. D'où la technique de "va et vient" ou recouvrement
(swapping), qui consiste à stocker temporairement sur disque (partie swap) l'image d'un
processus, afin de libérer de la place en MC pour d'autres processus.
On utilise des partitions variables et on n’est plus limité par des partitions très grandes ou
très petites).
Les algorithmes de gestion : First Fit, Best Fit, Worst fit.
3. D'autre part, la taille d'un processus peut dépasser la taille de la mémoire disponible, même
si l'on enlève tous les autres processus. Pour résoudre ce problème, on utilise le principe de la
mémoire virtuelle qui consiste à conserver en MC que les parties utilisées des processus et
conserver le reste sur disque.
L’espace d’adressage d’un processus peut être divisé en petites unités de tailles fixes
appelées pages et là on parle du mécanisme de la pagination.
Comme il peut être divisé en des segments significatifs (ex : code, données, pile et extra)
et là on parle du mécanisme de la segmentation.
Les algorithmes de remplacement de pages : FIFO, LRU, OPT.

VI. Gestion des entrées/sorties


Un périphérique est un dispositif servant en premier lieu à l'entrée et à la sortie des données.
Les unités d’E/S sont généralement constituées d’un composant mécanique (le périphérique
lui-même) et d’un composant électronique. Ce dernier s’appelle contrôleur (il apparaît sous
forme d’une carte avec un circuit imprimé). C’est avec lui que le SE communique pour faire
fonctionner le périphérique.

Exemple (contrôleur vidéo = adaptateur graphique) : Le SE initialise le contrôleur avec


quelques paramètres, tels que le nombre de pixels par ligne et le nombre de lignes par écran et
il laisse la transmission et la gestion de l’affichage à l’écran sous la responsabilité du
contrôleur.

5
Systèmes d’exploitation II

La gestion des Entrées / Sorties comprend l’ensemble des fonctions suivantes:


- installer le périphérique,
- paramétrer le périphérique,
- le commander pour réaliser les transferts d’informations de ou vers la MC.

Vous aimerez peut-être aussi