Telechargé par andromidarawia123

Cours SE cp2

publicité
Elément de Module:
Introduction aux Systèmes
d’Exploitation
1
Introduction (1)
 Structure d’un ordinateur
 2 Parties
 Matérielle ou Hardware
 Logicielle ou Software
 Partie Hardware
 Composants physiques
 Processeur, Mémoire, Ecran, Disque, …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
2
Introduction (2)
 Partie Software
 Système d’exploitation
 Dos, Windows, Unix, Linux, MacOS, …
 Logiciels de base
 Indispensables pour exploiter un
ordinateur
 Noyau du système (système minimal)

Chargé en MC à partir du disque à la mise en ON
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
3
Introduction (3)
 Logiciels d’application
 Suite MSOffice


OpenOffice



Equivalent de MSOffice pour Unix (Linux)
Navigateurs Web
Divers applicatifs


WinWord, Excel, Powerpoint, …
Skype, Jeux, Graveurs, Inscriptions en ligne, …
Chargés en MC uniquement lors de leur
utilisation
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
4
Hardware (1)
 Composants Physiques
 Processeur
 Unité d’exécution
 Exécute des instructions machine


2 grandes familles non compatibles



Instructions codées en langage binaire
INTEL
MOTOROLA
Vitesse d’exécution (Horloge)

Exemple: 3.5 Ghz
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
5
Hardware (2)
 Mémoire centrale ou RAM
 Unité de mémorisation temporaire
 Volatile


Taille


Exemple: 4Go (Giga Octet)
Vitesse


Perd son contenu en cas de coupure d’alimentation
Temps nécessaire pour lire ou écrire une
information en mémoire
Existence d’autres mémoires (cache, …)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
6
Hardware (3)
 Périphériques
 Tout composant physique autre que le
processeur et la mémoire centrale


Ecran, Clavier, Disque, CD, Souris, Manette de jeu,
Imprimante, Clé USB, Modem, Web Cam, …
Chacun a ses propres caractéristiques
 Ressources Physiques
 Ensemble des composants physiques d’un
ordinateur
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
7
Exploitation
 Utilisation d’un ordinateur
 Système d’exploitation
 Lien entre utilisateur et un ordinateur
 INTERFACE

Faciliter l’utilisation d’un ordinateur
 Logiciels (Applicatifs)
 En plus de l’OS, certains sont fournis
gratuitement
 Les autres sont achetés et/ou développés
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
8
Programmation (1)
 Objectif
 Ecrire des programmes (Applications)
qui pourront être soumis à un système
pour être exécutés sur un ordinateur en
vue d’obtenir des résultats
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
9
Programmation (2)
 Ecriture de programmes
 Langage de programmation
 Editeur de texte
 Hiérarchie des langages
 Langages machines
 Reconnaissables par un processeur
 Dépendent du type de processeur
 Incompréhensibles par un utilisateur
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
10
Programmation (3)
 Langage Assembleur
 Dépend du type de processeur
 Proche de la machine
 Utilisé pour écrire des programmes




Compréhensibles par le programmeur
Non exécutables par le processeur
Performants
Nécessité d’avoir un traducteur


ASSEMBLEUR
Passage du langage assembleur au langage machine
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
11
Programmation (4)
 Langages évolués
 Plus proches des utilisateurs que des
machines
 Indépendants des processeurs
 Permettent de développer des programmes
portables (?) d’une machine à une autre
 Nécessitent un traducteur (logiciel)


COMPILATEUR, INTERPRETEUR
Exemples

Pascal, C, C++, Java, VB, …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
12
Programmation (5)
 Langages spécifiques
 Temps-réel, Mobiles, Shell, …
 Editeur de texte
 Logiciel pour produire des fichiers
texte

Fourni(s) avec l’OS


Editeur de texte standard
Fourni(s) avec un langage de
programmation

Associés à un langage de programmation
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
13
Programmation (6)
 Environnements de
programmation
 Ensemble d’outils graphiques pour
faciliter le développement d’applications




Développer
Compiler
Exécuter
…
 Exemples
 VB, Visual J++, JBuilder, Eclipse, …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
14
Notion de Programme (1)
 Programme
 Décrit une logique de résolution d’un
problème

Problème → Algorithme → Programme
 Ecrit dans un langage bien défini
 Partie syntaxique (forme)
 Dépend du langage
 Doit être respectée sinon erreurs
 Programme = Donnée + Instructions
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
15
Notion de Programme (2)
 Partie sémantique
 Définit la logique de résolution




Ce que fait le programme
Peut ne pas donner le résultat attendu
Précise l’ordre d’exécution des
instructions
Exécution SEQUENTIELLE

Exécuter l’instruction de rang i (dans la séquence)
que si l’instruction de rang (i-1) a été exécutée
correctement (terminée sans erreurs)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
16
Etapes de Programmation
(1)
 Etapes de mise en œuvre d’un
programme
 Edition
 Outils nécessaires



Langage de programmation
Editeur de texte
Résultat de l’édition

Programme source
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
17
Etapes de Programmation
(2)
 Compilation (ou interprétation)
 Analyse syntaxique du programme source


Analyse sémantique


Détection d’erreurs syntaxiques

Correction et recompilation
Traduire le programme source (Règles sémantiques)
Résultat

Programme objet ou exécutable
 Programme objet : programme non exécutable
dans l’état et nécessite une étape
supplémentaire (Edition de Liens)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
18
Etapes de Programmation
(3)

Programme exécutable : est dans une forme
directement exécutable
 Edition de liens
 Etape de résolution des liens entre
programmes compilés séparément


Prend plusieurs programmes objets (fichiers) pour
les rassembler et produire un programme exécutable
(fichier exécutable)
Résultat

Programme exécutable
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
19
Etapes de Programmation
(4)
 Chargement + Exécution
 Réalisées par un programme (câblé) du
système appelé CHARGEUR



Détermination de l’adresse de chargement en MC
Chargement du code exécutable en MC à l’adresse
définie par le chargeur
Lancement de l’exécution
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
20
Utilisation d’un OS
 L’OS interagit avec différentes
entités
 Utilisateurs
 Programmes des utilisateurs
 Logiciels d'application
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
21
Bibliothèques (1)
 Présentation
 Bibliothèques logicielles (Librairies)
 Rassembler des fonctions (pré-compilées)
en un fichier prêt à l’emploi

Fonction à usage général

Exemple: Fonctions d’entrée/sortie (stdio.h)
 Intérêt
 Ne pas réécrire du code qui a été déjà
écrit et testé (réutilisation)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
22
Bibliothèques (2)
 Types
 Bibliothèques statiques
 Réutilisées par un programme
 S’intègrent durant l’édition de liens
 Bibliothèques dynamiques
 Réutilisées par un programme
 Leur édition de liens a été déjà faite
 Incorporées aux programmes au moment
de leur exécution
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
23
Bibliothèques (3)
 Exemples de bibliothèques statiques
 Windows


Fichiers d’extension *.h (stdio.h)
Unix

Fichiers d’extension *.lib ou *.a
 Exemples de bibliothèques dynamiques
 Windows


Fichiers *.dll (Dynamically Linkable Library)
 Diminuer la taille des fichiers *.exe
Unix

Fichiers *.so (Shared Object)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
24
Interactions UtilisateurSystème (1)
 Deux modes d’interaction
 Mode Commande ou Mode Texte
 Processus cyclique





Le système accepte une commande de l’utilisateur
Il analyse la commande de l’utilisateur
Il interprète la commande et renvoie le résultat à
l’utilisateur ou un message d’erreur
Connaître un langage de commandes
Utilisation d’un interpréteur de
commandes : SHELL
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
25
Interactions UtilisateurSystème (2)
 Mode Graphique
 Ecran
 Fenêtre d’interaction (Window)
 Utilisation de menus et de la souris
 Mode ergonomique
 A la portée de tout le monde
 Modes complémentaires
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
26
Interactions ProgrammeSystème
 Point de vue programmation
 Système
 Ensemble de fonctions (services) utilisées
par les programmes utilisateurs

Appelées dans les programmes utilisateurs
 Format d’appel prédéfini
 Fonctions de base (printf, scanf, malloc, …)
 Fonctions avancées (syscall, …)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
27
Exécution de programmes
(1)
Principe
 Programme chargé en MC
 Devient processus
 Exécution par le processeur
 Exécution séquentielle
o Un seul processus
o Une seule instruction par processus
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
28
Exécution de programmes
(2)
 2 Types de programmes
 Programmes du système
 Programmes sûrs (sans erreurs)
 Programmes spécifique

Gestion et contrôle de l’utilisation d’une machine
 Programmes utilisateurs
 Exploitent une machine
 Programmes non fiables
 Contrôlent leur exécution
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
29
Exécution de programmes
(3)
 Modes d’exécution des processus
 Mode Système
 Privilégié, Maître, Master, Superviseur,
Système
 Réservé aux programmes du système
 Caractéristiques:


Accès à tout l’espace de la mémoire
Exécution de toutes les instructions du processeur (Jeu
d’instructions complet)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
30
Exécution de programmes
(4)

Caractéristiques (2)

Fonctions du système peuvent être utilisées par les
programmes utilisateurs mais de manière indirecte
(appelées avec des instructions privilégiées –
spéciales -)

Appel Système (Syscall, …)

Pas de possibilité d’exécuter directement une
fonction système
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
31
Exécution de programmes
(5)
 Mode Programme
 Non privilégié, Esclave, Slave, Utilisateur,
User, Programme
 Mode
d’exécution
des
programmes
utilisateurs
 Restrictions


Accès limité à la mémoire (limites de l’espace alloué
au programme)
Utilisation
partielle
de
l’ensemble
du
jeu
d’instructions du processeur
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
32
Exécution de programmes
(6)
Jeu d’instructions Processeur
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
Mode Programme
Programme
utilisateur
Mode Système
OS
Mode Programme
Mode Système
33
Exécution de programmes
(6)
 Passage du mode utilisateur au mode
système

A travers les appels système


SVC (Supervisor Call), Syscall
INT (Interrupt)
Interrupt / Fault
Système
Utilisateur
Retour
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
34
Appels système (1)

Utilité
 Permettre à un programme utilisateur d’utiliser
des fonctions du système

Utilisables à travers des appels spécifiques appelés
Appels Système

Exemples : reprendre le contrôle des interruptions
 Interruptions matérielles:
• Fonctions d’E/S,
• Horloge (pour gérer l’allocation des processeurs)
 Interruptions logicielles:
• Erreurs arithmétiques (division par zéro)
• Données non disponibles en mémoire (défaut de page)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
35
Appels système (2)
 Offerts par les langages de
programmation
 Appel par instructions spéciales
 Exemple: Instruction INT de l’Assembleur
 Inclusion de bibliothèques ou packages
 C, C++, Java


#include<stdio.h>
import java.io.*;
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
36
Logiciels (1)
 Deux catégories de logiciels
 Logiciels de base
 Logiciels d’application
 Logiciels de base (OS)
 Noyau (Kernel)

Fonctions minimales d’un OS


Indépendantes de toute application ou mode
d’utilisation d’un ordinateur
Chargé en mémoire centrale lors du démarrage
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
37
Logiciels (2)
 Ensemble de services
 Extension du noyau
 Complètent un système (hors noyau)
 Utilisables à la demande (besoins)


Résident en permanence sur disque
Chargés en mémoire centrale sur demande
 Logiciels d'application
 Répondre à des besoins spécifiques
 Achetés et/ou développés
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
38
Exploitation d’une
machine (1)
 Achat d’un ordinateur
 Matériel
 Système pré-installé
 CD de secours
 Mise à jour du système
 Ré-installation du système
 Récupération du système suite à de
mauvaises manipulations
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
39
Exploitation d’une
machine (2)
 Installation et configuration
 Installation prédéfinie
 Système de base


Exemples: Windows, Linux
Mise à jour du système

Service offert par le système de base

Rajout et/ou suppression de composants
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
40
Exploitation d’une
machine (3)
 Installation d’applicatifs
 Ne font pas partie du système de base


MsOffice, Openoffice, etc
Installation manuelle

Setup, Install, …
 Installation personnalisée
 Construire son propre OS



Choisir les services à installer
Possibilité de modifier le système

Recompilation du noyau de l’OS (Linux)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
41
Exploitation d’une
machine (4)
 Configuration et installation de matériel
 Modifier les caractéristiques des
équipements existants


Ecran (Résolution), Imprimante, …
Installer et configurer de nouveaux
équipements

Imprimante, Scanner, Caméra, etc.
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
42
Exploitation d’une
machine (5)
 Principe général d’installation
 Mode d’installation graphique



Affichage de menus avec des options
Choisir les options souhaitées

Type d’écran, résolution, couleurs, …

Type d’imprimante, forme d’impression, …

…
Lancer l’installation
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
43
Applications et services
(1)
 Applications
 Ensemble de programmes (logiciels)
 Fournissent des fonctions spécifiques



Traitement de texte, tableur, logiciel de dessins,
logiciel de vidéo, etc.
Gestion des inscriptions, Paiement électronique,
etc.
Pré-installés ou installation par
procédure spéciale

Setup, Install, …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
44
Applications et services
(2)
 Services
 Ensemble de programmes
 Gèrent des ressources ou des événements


Lancés automatiquement ou
manuellement


Comptes utilisateurs, réseau, gestion des
impressions, etc.
Exemple: Antivirus
Réveillés régulièrement ou à la suite de
l’arrivée d’événements spécifiques

Réception de courrier électronique, MAJ logiciels
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
45
Modes d'exploitation
 Plusieurs modes d’exploitation
d’un ordinateur
 Mono-utilisateur
 Machine individuelle

Pas de partage
 Multi-utilisateurs
 Machine accessible par plusieurs
utilisateurs


Utilisateurs connectés à une machine
Partage des ressources de la machine
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
46
PARTIE 2
Gestion de
Fichiers
Systèmes d’exploitation
2019/2020
47
Introduction (1)
 Notion de fichier
 Elément fondamental pour l’utilisation
d’un ordinateur

Paramètre de toute opération

Créer, Editer, Compiler, Exécuter, Enregistrer, …
 Différents types
 Fichier ordinaire (simple)
 Répertoire
 Bibliothèque
 …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
48
Introduction (2)
 Structure
 Aucune sous Unix


Fichier: suite d’octets
Sous Windows


Liée à une application (nom avec extension)
Structure dépendante de l’application
 Word, XML, Mail, Vidéo, …
 Attributs
 Propriétés d’un fichier
 Stockés dans un répertoire spécial
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
49
Introduction (3)

Exemples d’attributs

Nom, Identificateur interne (Nombre, I-node sous
Unix), Type, Adresse physique, Taille, Droits d’accès,
Dates, …
 Opérations
 Multiples (Lire, Ecrire, Exécuter)
 Dépendent du type de fichier

Texte, exécutable, …
 Organisés sous forme d’ARBRE
 Arborescence de fichiers

Relation Père-Fils avec racine unique
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
50
Introduction (4)
 Appartenance
 Privée


Accès restreint
Publique

Partagés entre utilisateurs, applications, etc.
 Accès
 Se fait selon des règles d’utilisation

Droits d’accès

Opérations permises sur les fichiers

Utilisateurs autorisés à accéder à un fichier
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
51
SGF (1)
 Système de Gestion de
Fichiers
 Elément fondamental d’un OS
 Ensemble de fonctions pour manipuler
les fichiers


Accessibles en mode graphique et en
mode commande
Utilisées par les utilisateurs à travers
leurs programmes
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
52
SGF (2)
 Fonctions d’un SGF
 Organisation logique des fichiers sur support magnétique
Arborescence (arbre de fichiers)
Organisation physique
 Stockage de l’arborescence sur un support
Passage du niveau logique au niveau physique
 Relation entre nom d’un fichier et l’ensemble des blocs
physiques qui le composent sur support physique
Conservation permanente des fichiers sur un support
magnétique
Partage et protection des fichiers





Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
53
SGF (4)
 Désignation des fichiers
 Désignation symbolique
 Nommage


Identifier un fichier dans un arbre de fichiers
Désignation selon une arborescence


Nom (chemin) absolu d’un fichier

Chemin, dans l’arbre, qui permet d’identifier un
fichier depuis la racine de l’arbre
Nom (chemin) relatif

Chemin à partir d’un répertoire courant
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
54
SGF Unix (1)
 Présentation
 Caractéristiques d’un fichier
 Nom symbolique (nom externe)


Peut avoir ou non une extension
Possède un INODE unique



Table regroupant les informations sur le fichier
Nom interne (numéro du Inode correspondant)
Créé lors de la création du fichier et disparaît avec
sa suppression physique
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
55
SGF Unix (2)
 Fonctionnalités
 Ouverture, Fermeture, Lecture, Ecriture,
Exécution
 Types de fichiers
 Ordinaires (-)
 Répertoire (d)
 Lien symbolique (l)
 …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
56
SGF Unix (3)
 Unités de stockage
 Pas d’unités au sens Windows
 A: , C: , D: , E: ….
 Utilisation de la notion de PARTITION
LOGIQUE


Sous arborescence de fichiers
Opérations sur les partitions


Montage (Monter une clé USB)
Démontage (Retirer une clé USB)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
57
Allocation de fichiers (1)
 Problème
 Fichier à stocker
 Lui allouer de l’espace sur disque
 Unité d’allocation


BLOC (taille usuelle: 512 octets)
 Allocation par multiple de blocs
CLUSTER (taille usuelle: 4Ko)
 Un seul fichier par cluster
 Un fichier peut occuper un ou plusieurs clusters
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
58
Allocation de fichiers (2)
 Quelle méthode d’allocation utiliser ?

Allocation contigüe

Allocation chaînée

Allocation indexée
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
59
Allocation de fichiers (3)
 Allocation contigüe
 Blocs contigus sur disque pour un fichier
 Avantages
 Blocs successifs

Rapidité d’accès aux données du fichier
 Inconvénients
 Trouver le nombre de blocs successifs
(adjacents) requis pour un fichier
 Problème de MAJ (ajout de blocs)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
60
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
61
Allocation de fichiers (4)
 Allocation chaînée
 Adresse du premier bloc
 Liens entre les blocs
 Avantage
 Eviter la contrainte de contiguïté

Dispersion des blocs d’un fichier sur disque
 Inconvénients
 Temps d’accès plus long (liens)
 Solution non adaptée à l ’ accès direct

L ’ accès à un bloc quelconque nécessite l ’accès à
tous les blocs qui le précèdent.
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
62
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
63
Allocation de fichiers (5)
 Allocation indexée
 Permettre un accès rapide aux blocs
d’un fichier
 Utilisation de la notion de pointeur


Un pointeur par bloc
Pointeurs regroupés dans un bloc spécial
(Bloc Index)
Index
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
Blocs de
données
64
Allocation de fichiers (6)
 Avantages
 Séparer les blocs de données des blocs
d’index


Pas de perte de place pour les blocs de données
Accès plus rapide

Accès direct
 Inconvénients
 Plus de blocs (données et index)
 MAJ des blocs d’index
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
65
-1: pointeur NULL
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
66
Allocation sous UNIX
 Méthode originale
 Structure utilisée
 Table de 13 adresses





Adresses directe pour les 10 premiers blocs d’un
fichier
Adresses indirectes pour la onzième entrée
Deux niveaux d'indirection pour la douzième entrée
Trois niveaux d'indirection pour la dernière entrée
Taille d’un bloc en terme d’adresses

128 adresses
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
67
Allocation sous UNIX (2)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
68
Allocation sous UNIX (3)
Systèmes d’Exploitation
IF3 - 2011/2012
69
Gestion espace libre
 Problème
 Fichier F de taille T(F) à stocker sur
disque

Calculer le nombre de blocs nécessaires
pour stocker F (NB)
 Comment savoir s’il existe un nombre de
blocs libres ≥ à NB
 Solution
 Représentation de l’espace libre du disque
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
70
Gestion espace libre (2)
 Solution 1
 Vecteur de bits
 1 bit par bloc




0 : Libre
1 : Occupé
Solution adoptée par Macintosh et
Win2000
Exemple

00011100011000011…
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
71
Gestion espace libre (3)
 Solution 2
 Liste chaînée
de blocs libres

Adoptée par
MS-DOS,
Win9x
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
72
PARTIE 3
Processus
(Aspect utilisateur)
73
Processus (1)
 Présentation
 Programme : une est une suite d'instructions (objet statique)
Processus: pg en cours d’exécution (objet dynamique)
A chaque exécution on obtient un processus différent

Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
74
Processus (2)
 Présentation
 Abstraction de l’exécution d’un programme par un
processeur
 Entité dynamique


Evolue dans le temps

Passe d’un état initial à un état final
Un programme est une entité statique

N’évolue pas dans le temps

Son état (contenu) ne change pas malgré le
changement du temps de la machine (horloge)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
75
Processus (3)
 Point de vue utilisateur
 Lancer un programme exécutable
 Système crée un processus et gère son
évolution
 Possibilités de suivre un processus
 Connaître son état


Prêt (en attente), Exécution, Bloqué (endormi),Terminé …
Agir sur le processus

L’arrêter définitivement (Tuer le processus)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
76
Processus (4)


Le suspendre puis le reprendre
Moyens d’action

Ctrl+Alt+Del sous Windows

Commandes sous Unix (ps)

Seuls les processus visibles sont accessibles
 Exemples de processus
 Exécution d’une application
 Copier un fichier
 Envoi d’un message sur le réseau
 Lancer une impression
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
77
Processus (5)
 Point de vue OS
 Espace d’adressage
 Partie(s) de la mémoire centrale dans
laquelle on a chargé le code (instructions)
et les données du processus
 Etat interne du processus


Compteur ordinal, fichiers ouverts, état du point de
vue exécution, etc.
L’utilisateur peut agir sur certains éléments de cet
état interne (exemple: arrêter le processus)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
78
Processus (6)
 Programme vs processus
 Exécution d’un programme
 Par un seul utilisateur


1 programme → 1 processus
Par plusieurs utilisateurs


Même programme → Processus différents
Même chose que classe d’objets et instance d’objet
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
79
Processus (7)
Pile : stocke des variables désallouées automatiquement (locales ou automatiques )
- Garde la trace de l’exécution de fonctions
(fonctions appelantes, fonctions appelées)
Tas (Heap) : Zone de mémoire dynamique
(crée des variables durant l’exécution, allocation dynamique de mémoire)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
80
Processus (8)
 Création de processus
 2 méthodes
 Par lancement d’un programme


Commande ou click sur l’icône du programme
Par exécution d’instruction

Création dynamique

Un processus crée un autre et ainsi de suite

Fonction fork() sous Unix (langage C)

Méthode start() de la classe Thread de JAVA
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
81
Processus (9)

Hiérarchie ou arbre de processus


Processus Père et processus fils
Au démarrage d'un système Unix:

1 seul processus existe de numéro 1
(PID=1): init.

Tous les autres processus qui peuvent
exister au cours de la vie du système
descendent de ce premier processus,
o
Via des appels système: fork, vfork, …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
82
PARTIE 4
Sécurité et
Protection
(Aspect utilisateur)
83
Introduction (1)
 Pourquoi la sécurité ?
 Système informatique
 Ensemble de ressources



Matérielles
Logicielles
Ensemble de fichiers (code, données)
 Système vulnérable
 Peut être attaqué

De l’intérieur ou de l’extérieur
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
84
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
85
Introduction (2)
 Position du problème
 Exemple système Windows
 Mise en ON (manuelle)






Affichage du bureau
Accès à toutes les ressources disponibles
Accès à n’importe quel fichier

Lire, copier, modifier, supprimer
Installer et supprimer n’importe quelle application
Modifier les paramètres du système et/ou des
applications
Supprimer le système (formatter le disque)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
86
Introduction (3)
 Machine individuelle
 Ressources propres à une seule
personne

Pas de partage


Seul le propriétaire sera pénalisé
Besoin quand même de sécurité
 Machine partageable
 Ressources partageables
 Besoin de sécurité plus important
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
87
Sécurité (1)
 Objectifs
 Authentification
 Confidentialité
 Intégrité
 Disponibilité
 Types
 Physique
 Logique
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
88
Sécurité (2)
 Authentification
 Identité numérique
 Méthodes d’authentification
 Quelque chose que l’on connaît


Quelque chose que l’on possède


Mot de passe, Informations personnelles, …
Carte à puce, …
Quelque chose que l’on est

Empreintes, Iris de l’œil, …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
89
Sécurité (3)

Quelque chose que l’on fait

Voix, signature, …
 Authentification forte
 Combinaison de deux méthodes ou plus
 Objectifs
 N’accèdent au système que ceux qui sont
autorisés à le faire.
 Déterminer le statut d’un utilisateur

Savoir ce qu’il est autorisé à faire après avoir été
autorisé à accéder au système.
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
90
Sécurité (4)
 Confidentialité
 Propriété d'une donnée qui ne doit être
diffusée qu’aux personnes autorisées

Les informations n’appartiennent pas à
tout le monde, même si elles existent

Restrictions d’accès

Fichiers système

Fichiers utilisateurs
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
91
Sécurité (5)
 Intégrité
 Propriété d'une donnée dont la valeur
est conforme à celle définie par son
propriétaire

Domaine de variation d’une variable


Age compris entre deux valeurs prédéfinies
Numéro de CIN

Doit être unique
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
92
Sécurité (6)
 Disponibilité
 Capacité d’un système à assurer ses
fonctions au moment où l’utilisateur en a
besoin

Exemples de cas d’indisponibilité



Composant physique défaillant
Fichier corrompu
Application infectée par un virus
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
93
Protection
 Qu’est ce que la protection ?
 Sécurité
 Définir des objectifs et des politiques de
sécurité
 Protection
 Mise en place de ces objectifs et de ces
politiques

Mécanismes, Outils, Méthodes, etc.
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
94
Exemple (1)
 Système Unix (Linux)
 Utilisateur
 Dispose d’un compte sous Unix
 Propriétaire des fichiers qu’ils créent



Peut en disposer comme il veut
Il possède les pleins droits sur ses fichiers
Utilisateur potentiel d’autres fichiers



Fichiers système
Fichiers des applications
Fichiers des autres utilisateurs
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
95
Exemple (2)

Rassemblés en groupes d’utilisateurs

G1= {U1, U2, U3}; G2= {U1,U4}; G3= {U6,U8,12}
 Utilisateurs d’un fichier
 Divisés en 3 catégories



Propriétaire : Owner (u)
 Fixe les droits d’accès sur les fichiers dont il est
propriétaire (r, w, x)
 Pour lui, pour les membres du groupe et pour
les autres
Groupe du propriétaire : Group (g)
Autres : Others (o)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
96
Exemple (3)
 Droits d’accès ou Permissions
 Fixés par le propriétaire mais uniquement
sur ses propres fichiers
 Droits dynamiques


Peuvent se changer dans le temps (+ ou -)
Système assure que les droits fixés par le
propriétaire seront respectés

L’accès à un fichier n’est donc pas systématique
 Vérifier si l’opération d’accès à un fichier est
conforme aux droits fixés par son propriétaire
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
97
PARTIE 5
Notion d’OS
98
Système d’Exploitation (1)
 Operating System (OS)
 Pas de définition standard
 Dépend du point de vue
 Machine (ressources)
 Utilisateur (exploitation)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
99
Système d’Exploitation (2)
 Gestionnaire de RESSOURCES
 Ressources physiques
 UC, MC, Disque, Imprimante, etc.
 Ressources logiques
 Ensembles de données ( Fichiers )
 OS Offre un ensemble de SERVICES
 Gestion des ressources physiques et
logiques
 Gestion de la communication
 …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
100
Système d’Exploitation (3)
 Exploitation
 Utiliser et rentabiliser l’exploitation des
ressources de la machine
 Offre des environnements


De développement d’applications
D’exploitation de ces applications
 Contrôle les accès des utilisateurs et de
leurs applications


Au système
Aux ressources de la machine
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
101
Système d’Exploitation (4)
 Utilisateur
 Machine Virtuelle
 Mêmes potentialités que la machine
physique
 Plus simple à utiliser


Ergonomie du point de vue utilisation

Ne nécessite pas de connaissances très
poussées en informatique
Cache la complexité de la machine
physique
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
102
Système d’Exploitation (5)
Applications / Utilisateurs
Operating System
Gestionnaire
de ressources
Machine
Virtuelle
Machine Physique
Système Informatique
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
103
Etude des OS
 Pourquoi étudier les OS ?
 Logiciel fondamental
 Indispensable pour exploiter un
ordinateur


Sans OS un ordinateur est inexploitable
Interface Utilisateur-Machine
 Structure très importante
 Utilise beaucoup d’algorithmes et de SD
 Techniques des OS utilisées dans
beaucoup d’applications du monde réel
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
104
PARTIE 6
Architecture
Physique
105
Architecture vs OS
 Fonctionnement d’un OS
 Connaître l’architecture (machine
physique) qu’il gère

Pourquoi ?


Architectures différentes
Systèmes différents
 PC isolé, Portable, Réseau de machines, …
 Objectif
 Gestion optimale des ressources d’une
machine
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
106
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
107
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
108
Processeur (1)
 Elément fondamental
 Fonction
 Exécuter des instructions machine

Instructions codées en binaire
 Différentes appellations
 Unité Centrale de Traitement (UCT)
 Processeur (Microprocesseur)
 Processor
 CPU (Central Processing Unit)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
109
Processeur (2)
 Caractéristiques
 Famille (Constructeur)
 Intel, Motorola, ARM, MIPS, SPARC, …
 Vitesse
 Définie par la fréquence (cycle) d’une
horloge


Envoi régulier de tops au processeur
Exprimée en GHz
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
110
Processeur (3)
 Composants
 Unité de commande
 Unité de coordination


Reconnaissance des instructions
Composée de registres
 RI (Registre Instruction) : instruction en cours
 CO (Compteur Ordinal) : adresse prochaine
instruction
 RA (Registre Adresse)
 RD (Registre de données)
 Registres généraux: R0, R1, …
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
111
Processeur (4)
 Unité(s) de calcul
 Unité Arithmétique et Logique (UAL, ALU)




Unité d’exécution
Circuits arithmétiques (+, -, /, *)
Circuits logiques (ET, OU, …)
Registres d’états (Indicateurs ou FLAGS)
 Statut des périphériques
 Etat d’une instruction (exécution correcte, erreur)
 Mémoriser des événements qui se produisent
durant l’exécution des instructions

…
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
112
Processeur (5)

Unité Virgule Flottante (FPU)


Calcul sur des flottants (nombres réels)
Unité de Calcul Multimédia

Calcul vectoriel (calcul graphique)

Intel MMX, AMD 3D
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
113
Mémoire centrale (1)
 Caractéristiques
 Unité de stockage volatile
 Composée de mots mémoire

Taille usuelle des mots : 32 (64) bits
 Adresse unique pour chaque mot
 Taille exprimée en multiple d’une
certaine unité (o= octet)

Ko, Mo, Go, To, Po


K=210 ; M=220 ; G=230
T=240 (Tera) ; P=250 (Peta)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
114
Mémoire centrale (2)
 Opérations

Lecture

Ecriture
 Temps d’accès

Temps moyen pour lire ou écrire une
information dans un mot quelconque de la
MC
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
115
Mémoire cache (1)
 Antémémoire
 Position
 Mémoire intermédiaire entre le
processeur et la mémoire centrale
 Caractéristiques
 Taille plus petite que celle de la mémoire
centrale
 Technologie différente
 Temps d’accès plus rapide que la MC
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
116
Mémoire cache (2)
 Intérêt
 Processeur alimenté à partir de la MC
 Instructions + Données
 Différence de vitesses

Temps d’accès MC plus lent que celui du processeur
 Ralentissement du processeur
 Comment réduire ce ralentissement

Mémoire cache
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
117
Mémoire cache (3)
 Caractéristiques
 Taille relativement réduite
 Temps d’accès très rapide
 Fonction
 Duplique de l’information stockée en MC
 Rapprocher les données du processeur
 Eviter, le plus possible, les accès à la MC


Augmenter le nombre d’accès à la mémoire cache
Réduire le nombre d’accès à la MC
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
118
Mémoire cache (4)
 Principe de fonctionnement
 Recherche de l’information dans la
mémoire cache

Trouvée ⇒ pas d’accès à la MC


Accès rapide (1 seul accès et rapide)
Non trouvée ⇒ accès à la MC

2 accès (mémoire cache puis mémoire centrale)
 Mise à jour permanente
 Rafraîchissement
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
119
Mémoire cache (5)
 Niveaux de mémoire cache
 Utilisée dans différentes parties d’un
ordinateur

Au niveau des disques



Temporary Internet Files

Garder les pages Web les plus visitées
Utilitaire SmartDrive (DOS)
Au niveau des serveurs proxy

Intermédiaires (mandataires) entre clients et serveurs
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
120
Mémoire cache (6)

Au niveau serveurs de pages dynamiques



Serveur statique

Se limite à afficher le contenu de pages Web
Serveur dynamique

Utilise une base de données

Fait des traitements pour générer les pages
avant de les afficher (le contenu est calculé)
Au niveau des microprocesseurs


Dans les microprocesseurs
A coté des microprocesseurs
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
121
Mémoire cache (7)

Au niveau des périphériques (imprimante)

Mémoire tampon

Buffer imprimante

Sauvegarde du ou des fichiers à imprimer

Eviter les accès multiples à la mémoire lors de
l’impression physique
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
122
Mémoire cache (8)
 Niveau microprocesseur
 Existence de plusieurs niveaux
 Hiérarchie de mémoires caches
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
123
Mémoire cache (9)


Niveau L1

Le plus près du microprocesseur (intégré)

Le plus rapide (très proche du microprocesseur)

Le plus petit (taille)
Autres niveaux

Rapidité décroissante

Taille croissante
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
124
Hiérarchie de mémoires
(1)
 Présentation
 Existence de plusieurs types de
mémoires dans un ordinateur
 Différences




Technologies
Fonctions
Capacités
Vitesses
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
125
Hiérarchie de mémoires
(2)
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
126
Bus (1)
 Présentation
 Ensemble
de
liaisons
physiques
pour
permettre aux composants de communiquer
entre eux.
 Transporter de l’information d’un composant
à un autre.
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
127
Bus (2)
 Caractéristiques
 Largeur du bus
 Nombre de bits transportés en parallèle.
 Vitesse
 Fréquence en Hertz

Nombre de paquets de données envoyés ou reçus
par seconde.
 Débit maximal
 Largeur x Fréquence
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
128
Bus (3)
 Composants
 Bus adresse
 Transporte des adresses mémoire

Unidirectionnel

Bidirectionnel
 Bus de données
 Transporte des données du ou vers le processeur
 Bus de commande ou de contrôle
 Transporte les ordres et les signaux

Bidirectionnel
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
129
Bus (4)
 Principaux bus
 Bus système
 Bus interne, Front-side bus (FSB)
 Communication avec la MC
 Bus d’extension ou d’E/S
 Communication entre composants
 Ajout de nouveaux périphériques

Connecteurs (slots) connectés sur le bus
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
130
Unité d’échange (1)
 Fonctions
 Connexion des périphériques au bus
 Gèrent les échanges entre le processeur
et les périphériques
 Intérêt
 Eviter une liaison directe entre UC, MC
et les périphériques


Différence de vitesse entre composants
Diversité des périphériques
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
131
Unité d’échange (2)
 Différences de vitesses
 Processeur
 Composant de calcul à grande vitesse
 Communique avec les périphériques

Lancer des opérations d’Entrée/Sortie d’informations
et les controler
 Mémoire centrale
 Echange de l’information avec les
périphériques


Entrée/Sorties de données
Accès rapide / Périphériques
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
132
Unité d’échange (3)
 Périphérique
 Vitesse très réduite
 Ralentit le processeur et la MC
 Diversité des périphériques
 Types (Entrée, Sortie, Entrée/Sortie)
 Vitesse (Lents, Rapides)
 Représentation des données
 Chaque type de périphérique a son propre
système de représentation des données
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
133
Unité d’échange (4)
 Composants
 Registre de commande
 Opération à effectuer fournie par le
processeur
 Mémoire (Registres de données)
 Données à échanger avec la MC
 Registres d’état
 Informations sur l’état de l’unité d’échange

Prête, Occupée, Erreurs, etc.
Systèmes
d’Exploitation
Systèmes
d’exploitation
2019/2020
IF3 - 2011/2012
134
PARTIE 7
Types d’OS
135
Système
Monoprogrammation (1)
 Caractéristiques
 Mémoire Centrale
 1 Seul programme chargé en MC
 Mémoire partagée entre l’OS et le
programme utilisateur
OS
Systèmes d’Exploitation
IF3 - 2011/2012
Programme utilisateur
(processus)
136
Système
Monoprogrammation (2)
 Processeur
 Alloué entièrement au programme
utilisateur chargé en mémoire centrale



Pas de partage avec un autre programme utilisateur
sauf avec les programmes système
Toutes les ressources de la machine
allouées à un seul programme utilisateur
Mauvaise gestion des ressources

Un seul programme est incapable d’utiliser toutes
les ressources d’une machine à un instant donné
Systèmes d’Exploitation
IF3 - 2011/2012
137
Système
Monoprogrammation (3)
Programme A
début
attente
attente
attente
E/S
E/S
E/S
fin
Programme B
attente
début
Systèmes d’Exploitation
IF3 - 2011/2012
E/S
E/S
E/S
attente
attente
attente
fin
138
Système
Monoprogrammation (4)
 Inconvénients
 Rentabilité des ressources
 Espace mémoire inutilisé
 Sous-utilisation du processeur


Opération d’E/S

Prise en charge par un canal

Libération du processeur

Non utilisé durant l’E/S (Etat Idle)
Autres composants non utilisés
Systèmes d’Exploitation
IF3 - 2011/2012
139
Système
Monoprogrammation (5)
 Temps d’attente des programmes
 TA(Pi) = Σj=1..(i-1) TE(Pj)
 Déséquilibre entre temps d’utilisation du
processeur et temps d’attente


P1 : 60 mn de calcul / 1mn E/S
P2 : 2 mn de calcul / 1s d’E/S

Temps d’attente de P2 : 61 mn
 Avantages
 Système simple
 Ressources allouées à un seul utilisateur
Systèmes d’Exploitation
IF3 - 2011/2012
140
Système Multiprogrammation
(1)
 Caractéristiques
 Mémoire centrale
 Possibilité de charger plusieurs
programmes utilisateurs en MC en même
temps
 Contenu de la MC

OS + N programmes utilisateurs (N ≥ 1)
OS
Systèmes d’Exploitation
IF3 - 2011/2012
P1
P2
...
Pn
141
Système Multiprogrammation
(2)
 Processeur
 Multiplexé (partagé) entre les programmes
(processus) chargés en MC
 Simultanéité entre calcul et E/S






P1 fait du calcul
P2, … , Pn en attente du processeur
P1 lance une E/S
Canal prend en charge l’E/S (Processeur Libre)
Processeur alloué à P2 (Commutation de contexte)
Et ainsi de suite …
Systèmes d’Exploitation
IF3 - 2011/2012
142
Système Multiprogrammation
(3)
 Ressources partagées entre plusieurs
programmes utilisateurs et l’OS
 Système plus complexe


Chargement/Déchargement de processus
Gestion de la simultanéité

Gestion des contextes des processus
 Meilleure utilisation des ressources de
la machine
Systèmes d’Exploitation
IF3 - 2011/2012
143
Système Multiprogrammation
(4)
Programme A
début
attente
attente
attente
E/S
E/S
E/S
fin
Programme B
début
Systèmes d’Exploitation
IF3 - 2011/2012
attente
attente
attente
E/S
E/S
E/S
fin
144
Système Multiprogrammation
(5)
 Inconvénients
 Complexité du système
 Gestion de plusieurs processus
 Sécurité des processus
 Peut être non équitable
 Effet sur le temps d’attente quand le
calcul est dominant par rapport aux E/S


P1: 60 mn (UC) + 1 mn (E/S)
P2: 2 mn (UC) + 1 s (E/S)

Temps d’attente de P2 : 60 mn / 1 mn
Systèmes d’Exploitation
IF3 - 2011/2012
145
Système Multiprogrammation
(6)
 Avantages
 Meilleure gestion des ressources
 Espace mémoire mieux utilisé
 Réduction des temps d’inactivité du
processeur

Simultanéité entre UC et Canaux d’E/S
 Remarque importante
 Libération processeur
 Fin du processus courant ou début E/S

Effet sur le temps d’attente du processus suivant
Systèmes d’Exploitation
IF3 - 2011/2012
146
Système Multiprogrammation
(7)
 Techniques et principes
utilisés
 Chargement de plusieurs programmes
 Gestion de l’espace mémoire

Allocation, Libération de l’espace
 Simultanéité entre Calcul et E/S
 Existence de canaux d’E/S

Indispensables pour permettre la simultanéité entre
calcul et E/S
Systèmes d’Exploitation
IF3 - 2011/2012
147
Système Multiprogrammation
(8)
 Technique de Swap
 Chargement / Déchargement de
programmes (processus)
 Va et vient entre Disque et MC
 Swap in


Disque  Mémoire Centrale

Chargement
Swap out

Mémoire Centrale  Disque

Déchargement
Systèmes d’Exploitation
IF3 - 2011/2012
148
Systèmes d’Exploitation
IF3 - 2011/2012
149
Système Temps-partagé (1)
 Système Time-sharing
 2 objectifs
 Gestion optimale des ressources
 Meilleur partage du processeur entre les
programmes utilisateurs

Plus d’équité (pas de privilège)
 Principe de base
 Politique de partage du temps processeur
plus équitable
Systèmes d’Exploitation
IF3 - 2011/2012
150
Système Temps-partagé (2)
 Principe général
 Héritage des systèmes de
multiprogrammation


Plusieurs programmes en MC
Existence de canaux d’E/S
 Différence
 Manière de gérer le processeur


Plus d’équité entre processus utilisateurs
Méthode spécifique d’allocation du processeur
Systèmes d’Exploitation
IF3 - 2011/2012
151
Système Temps-partagé (3)
 Méthode d’allocation de l’UC
 Objectif
 Eviter le problème d’attente de libération
du processeur dans le cas des systèmes
de multiprogrammation


Fin du processus en cours d’exécution
Début d’une E/S
 Solution
 Retirer le processeur au processus en
cours même s’il en a encore besoin
 Préemption
Systèmes d’Exploitation
IF3 - 2011/2012
152
Système Temps-partagé (4)
 Technique de préemption
 Principe
 Possibilité de retirer le processeur au
processus en cours même s’il en a besoin



Retrait forcé


Ne pas attendre la fin du processus
Ne pas attendre le début d’une E/S
L’empêcher de continuer son exécution
Technique applicable à n’importe quelle
ressource (mémoire centrale, etc.)
Systèmes d’Exploitation
IF3 - 2011/2012
153
Système Temps-partagé (5)
 Principe d’allocation
 Programmes utilisateurs rangés dans
une file d’attente

Classés par ordre d’arrivée

Ordre d’allocation du processeur

Premier arrivé, Premier servi
 Allocation cyclique du processeur aux
programmes de la file d’attente

P1;P2;…;Pn ; P1;P2;… ; P3;P5;…
Systèmes d’Exploitation
IF3 - 2011/2012
154
Système Temps-partagé (6)

Allocation du processeur pendant une
durée de temps fixe et ininterruptible
appelée QUANTUM

Durée d’exécution indivisible sauf cas particuliers
 Meilleur partage du temps
 Allocation cyclique (un processus est sûr
d’être servi)
 Allocation par Quantum

Equité entre processus

Tous les processus auront la même quantité de
temps d’utilisation du processeur
Systèmes d’Exploitation
IF3 - 2011/2012
155
Système Temps-partagé (7)
 Exemple
Quantum=3
Processus
Arrivée
Temps
P1
0
14
P2
3
5
P3
4
6
P4
6
8
P1 P2 P3 P4 P1 P2 P3 P4 P1 P4
0
3
Systèmes d’Exploitation
IF3 - 2011/2012
6
P1 P1
9 12 15 17 20 23 26 28 31 33
156
Systèmes Temps-réel (1)
 Système classique
 But
 Rendre un ou plusieurs services à un
utilisateur
 Exigence de l’utilisateur
 Lancer un service et attendre un résultat


Seule exigence de l’utilisateur: Résultat
Pas d’autres contraintes ou exigences
Systèmes d’Exploitation
IF3 - 2011/2012
157
Systèmes Temps-réel (2)
 Système Temps-réel
 Introduire d’autres contraintes en plus
du résultat

Contraintes temporelles




Date de début d’un traitement
Durée de traitement
Date de délivrance du résultat
La contrainte temps est plus importante
que le résultat
Systèmes d’Exploitation
IF3 - 2011/2012
158
Systèmes Temps-réel (3)
 Problème
 Que faire si ces contraintes ne sont pas
respectées ?

Arrêter le programme, accepter le résultat, attendre,
ignorer le résultat, etc.
 Exemples d’OS temps-réel
 RT-Linux, RTOS Windows CE, RMX
 Domaines d’applications
 Industrie, Aviation, Hôpitaux, etc.
Systèmes d’Exploitation
IF3 - 2011/2012
159
Systèmes Parallèles (1)
 Architecture classique
 1 Processeur unique
 Même horloge pour tous les processus
 1 Mémoire centrale unique
 Même espace pour tous les processus
 Modèle d’exécution (calcul)
 Séquentiel (monoprocesseur)


1 processus à la fois
1 seule instruction à la fois
Systèmes d’Exploitation
IF3 - 2011/2012
160
Systèmes Parallèles (2)
 Architecture parallèle
 Une seule machine composée de
 Plusieurs processeurs


Plusieurs horloges
1 seule mémoire centrale

Même espace pour tous les processus
 Modèle d’exécution parallèle
 N processus qui s’exécutent en même
temps (N Processeurs)
 Accès séquentiels à la mémoire centrale
Systèmes d’Exploitation
IF3 - 2011/2012
161
Systèmes Distribués ou
Répartis (1)
 Architecture répartie
 Plusieurs machines physiquement
séparées (distantes)


Plusieurs processeurs (N)
Plusieurs MC (N)
 Reliées par un réseau
 Communication avec des messages
 Avec ou sans partage de disque

Disk shared ou Shared Nothing
Systèmes d’Exploitation
IF3 - 2011/2012
162
Systèmes Mobiles (1)
 Informatique actuelle
 Répartie (Distribuée)
 Décentralisée
 Mobile (Nomade)
 Déplacement dans le temps et dans
l’espace
 Pervasive
 Comportement du système dépend


De la localisation géographique
Du type d’équipements
Systèmes d’Exploitation
IF3 - 2011/2012
163
Systèmes Mobiles (2)
 Exemples
 Ordinateurs portables, PDA (Personal
Digital Assistant), …
 Se déplacent avec leurs propriétaires
 Architectures et systèmes mobiles
 Données mobiles
 Cartes magnétiques
 Téléphone, Bancaire, CNSS, etc.
Systèmes d’Exploitation
IF3 - 2011/2012
164
Systèmes Mobiles (3)
 Caractéristiques des OS pour
mobiles
 Disposent de ressources limitées
 Nombre
 Type
 Capacité
 Gestion de la mobilité
 Localisation physique du mobile
 Fonctionnement dépendant d’un réseau
 Déconnexion
Systèmes d’Exploitation
IF3 - 2011/2012
165
Téléchargement