Ilhame EL FARISSI
[email protected]
Plan
Problématique
Qu’est ce qu’un Système d’exploitation?
Fonctions d’un SE
Caractéristiques d’un SE
Problématique
Comment exploiter les périphériques ?
Comment coordonner entre les ressources
(mémoires, disques, périphériques…) ?
Comment organiser le contenu des disques dur ?
….
Comment gérer la multiplicité des différentes
ressources ?
Définition d’un SE
Système d’exploitation ou Operating System
(SE et OS)
Chef d’orchestre dans la machine
Programme gère la mémoire de l’ordinateur
Répartir la mémoire entre les programmes
Intermédiaire entre
l’ordinateur et les applications/Utilisateurs
Le matériel (carte graphique, imprimante …) et
le logiciel
Fonctions d’un système d’exploitation
Chargement de programmes
Machine Virtuelle
Gestionnaire de ressource
Chargement des programmes
1ère génération: Sans système d’exploitation
pour exécuter plusieurs programmes:
insérerla disquette qui contient le
programme désiré dans le lecteur de
disquettes
exécuter le programme
redémarrer le microordinateur
exécuter un autre programme.
Chargement des programmes
2ème génération: Système d'exploitation contenu
sur disquette ou en mémoire RAM:
Afficher une invite à l'écran.
Remplacer la disquette système de démarrage
par une disquette contenant le programme désiré
écrire le nom du programme sur la ligne de
commande
Appuyer sur la touche Retour
Le programme était chargé et exécuté
À la fin de l'exécution de ce programme, on
pouvait charger un nouveau programme, sans
redémarrer le système.
Chargement des programmes
Actuellement: Ordinateurs avec l’OS
Le système d'exploitation autorise le
chargement de plusieurs programmes en
mémoire
Le SE gère le passage de l'un à l'autre, sans
attendre le blocage, l’arrêt ou la fin du
programme précédent.
C’est ce qu’on appelle un système
multitâche
Machine Virtuelle
Problème posé avant le SE:
La gestion d'un système se faisait en langage
machine
primaire et lourd à gérer pour la plupart des
ordinateurs
Devoir connaître le fonctionnement + toutes les
erreurs qui peuvent apparaître lors de la lecture
d’un bloc
Donc peu de programmes seraient développés
Trouver un moyen pour libérer les programmeurs
de la complexité du matériel
Machine virtuelle
Solution
Enrober le matériel avec une couche de logiciel
qui gère l'ensemble du système
Présenter au programmeur des interfaces plus
facile à comprendre et à manipuler
Système d’exploitation en tant que Machine
Virtuelle
Gestionnaire de ressources
Un ordinateur est un ensemble de ressources (de
processeurs, de mémoires, d'horloges, de disques,
de moniteurs, d'interfaces réseau, d'imprimantes,
et d'autres périphériques)
Ressources utilisées par plusieurs utilisateurs en
même temps
Le SE fournit une interface d’accès simplifiée aux
ressources
Le SE gère le partage efficace et équitable des
ressources
Le SE assure le contrôle d’accès aux ressources.
Le Système d’Exploitation est un gestionnaire de
ressources.
Caractéristiques d’un OS
Multitâche
Multiutilisateur
Multitâche
Permet l'exécution de plusieurs tâches à la
fois
Par exemple:
pendant qu'il exécute le programme d'un
utilisateur, lire les données d'un disque ou
afficher des résultats sur un terminal ou une
imprimante.
Mais comment ?
Multitâche (processus)
Le processus c’est la notion fondamentale
des systèmes d’exploitation multitâches.
Un processus est une instance de programme
en train de s'exécuter.
Un processus est représenté par :
un programme (le code)
ses données
des paramètres indiquant où il en est pour
continuer s'il est interrompu (pile d'exécution,
compteur ordinal...).
Gestion des processus
Multitâche (Temps partagé)
Un seul processeur
Un processeur, à un instant donné, n'exécute
réellement qu'un seul programme
Le SE peut le faire passer d'un programme à
un autre en exécutant chaque programme
pendant quelques dizaines de millisecondes
donner aux utilisateurs l'impression que
tous les programmes sont exécutés en même
temps. On parle alors de système à temps
partagé.
Multitâche (Abstraction du déroulement)
Le processeur commute entre plusieurs processus.
L’allocation du processeur entre différents
processus
Cette commutation rapide est appelée
multiprogrammation
Multitâche (Abstraction du déroulement)
Sur un intervalle de temps assez grand, tous
les processus ont progressé, mais à un instant
donné, il n'y a qu'un seul processus actif.
Multitâche (Variables d’environnement)
sert à communiquer des informations entre
programmes
Problématique:
Après l’interruption d’un processus pour
exécuter un autre, comment le système peut
retrouver le premier processus pour continuer
son exécution?
Solution:
Sauvegarder toutes les informations (par
exemple la position des fichiers) nécessaires
pour pouvoir y revenir et continuer l’exécution
Le rôle des variables d’environnement
Multitâche (Mémoire et vitesse)
Espace mémoire pour chaque processus:
Chaque processus possède un espace mémoire
inaccessible par les autres programmes
Le SE gère cet espace
Incidence sur le traitement des durées
Le SE coordonne en terme de vitesse
d’exécution entre les processus
Multiutilisateur
Un système multiutilisateur est capable d'exécuter des
applications appartenant à plusieurs utilisateurs de
façon :
« Concurrente » : les applications peuvent être actives
au même moment et se disputer l'accès à différentes
ressources comme le processeur, la mémoire, les disques
durs...
« Indépendante » : chaque application peut réaliser son
travail sans se préoccuper de ce que font les applications
des autres utilisateurs.
Un système multiutilisateur multitâche
Mise en place
attribuer des laps de temps à chaque utilisateur.
Multiutilisateurs
Mécanismes associés
Un mécanisme d'authentification permettant
de vérifier l'identité de l'utilisateur ;
Un mécanisme de protection contre les
programmes utilisateur erronés, afin d’éviter
le blocage d’autres programmes en cours
Un mécanisme de comptabilité pour limiter
le volume des ressources allouées à chaque
utilisateur.
Multiutilisateur
Utilisateurs
Chaque utilisateur possède un espace privé sur la
machine : généralement, il possède un certain quota
de l'espace disque pour enregistrer ses fichiers, il
reçoit des courriers électroniques privés, etc…
Gérer l’accès à la partie privée de chaque utilisateur
Chaque utilisateur est identifié par un numéro
unique, appelé l'identifiant de l'utilisateur, ou UID
(pour l'anglais User IDentifier).
Gérer le nombre de personnes autorisées
Lorsque l'un de ces utilisateurs commence une
session de travail, le système d'exploitation lui
demande un nom d'utilisateur et un mot de passe. Si
l'utilisateur ne répond pas par des informations
valides, l'accès lui est refusé.
Multiutilisateur
Groupe d'utilisateurs
Pour pouvoir partager de façon sélective le
matériel avec d'autres
Un groupe est identifié par un numéro unique
dénommé identifiant de groupe, ou GID (pour
l'anglais Group IDentifier).
Multiutilisateur
Super-utilisateur , superviseur ou root
L’administrateur du système
Gérer les comptes des utilisateurs
Réaliser les tâches de maintenance : les
sauvegardes et les mises à jour des
programmes.
Le SE ne lui applique jamais les mécanismes
de protection,
Accéder à tous les fichiers du système
Interférer sur l'activité de n'importe quel
processus en cours d'exécution.