Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Bibliothèque Utilitaires
SE
Noyau (protection de la couche matériel)
Matériel
Noyau = couche qui rend transparent au applicatif ce qu’il y a en dessous
Il s’agit :
- de masquer à l’utilisateur les problèmes de gestion interne des ressources
- de lui présenter une machine virtuelle plus simple à exploiter que la machine réelle
- et qui lui offre des services
Interface d’E/S
1.2. Définitions
1.2.1. Processus
Un processus est une suite d’instructions chargée totalement ou partiellement en mémoire
centrale, et constituant un ensemble logique en cours d’exécution ou susceptible de s’exécuter.
La notion de processus est dynamique : un processus naît lors du chargement d’un programme
et meurt à la fin de l’exécution du programme.
Un processus est donc caractérisé par un état à un instant donné.
1.2.2. Programme
Un programme est une entité composée de séquences d’instructions agissant sur un ensemble
de données.
C’est du code obtenu par compilation d’un fichier source suivie d’une phase d’édition des
liens.
La notion de programme est essentiellement statique car c’est un fichier stocké sur disque.
Des processus distincts peuvent exécuter un même programme (programme réentrant).
1.2.3. Thread
Un processus peut être parfois décomposé en unités d’activité distinctes appelées thread et
qui :
- s’exécutent de façon parallèle ou concurrente
Le processus représente donc pour ses threads une unité d’encapsulation des ressources
utilisées
T1
T2
T3
Processus
Et le thread est un sous ensemble d’exécution du processus sur cet ensemble de ressources.
1.2.4. Tâche
Nous conviendrons que la tâche représente la plus petite unité sémantique d’exécution au
niveau macroscopique.
1.2.5.2.Système multi-tâches
Plusieurs tâches résident en mémoire centrale
Le système d’exploitation doit alors gérer l’attribution et le partage des ressources les
différentes tâches
pose les problèmes liés à la programmation concurrente
pose le problème de protection du code et des données
1.2.5.3.Système multi-threads
Supporte l’exécution d’un processus en unités indépendantes
Implémente au niveau du noyau la gestion des threads
L’ordonnancement se fait alors sur des threads et non plus des processus
Possibilité d’ordonnancer les threads sur plusieurs processeurs dans une architecture parallèle
1.2.5.4.Système mono-utilisateur
Système où un seul utilisateur dispose de toutes les ressources de la machine
1.2.7.2.Mode interactif
Dans ce mode toute action de l’utilisateur est traitée immédiatement par le système
On distingue de 2 types
Le time sharing : les utilisateurs ont accès simultanément à l’ensemble des ressources
et le système gère l’allocation cyclique des ressources
Le transactionnel : c’est le principal mode d’utilisation en info de gestion : il s’agit
d’application qui gèrent le dialogue homme machine suivant une logique liée aux
fonctionnalités attendues.
- Principe du chargement
o le chargeur est automatiquement appelé au démarrage de la machine
Schéma PUBLIC
Broche du CPU x 2 :
Sur NMI exception des défaut matériel (IT externe) non masquable
Sur INT interruption masquable !!
- Identifier par scrutation : l’unité centrale va interroger les différentes sources possibles
sur un niveau pour savoir de laquelle il s’agit
SCH PUBLIC
- La vectorisation
o La demande d’interruption est émise sur la pate INT
o Elle est accompagnée d’un vecteur d’IT présenté dur le bus de donnés
SCH Public
SCH public
2.4. Conclusion
- Une interruption peut-être soit
o une interruption externe (exemple l’horloge)
o un appel système (exemple une demande d’E/S)
o ou encore un déroutement en cas de plantage du programme
- Toute interruption génère une commutation lors de laquelle le noyau reprend la main
pour assurer
o la sauvegarde du contexte de la tâche suspendue
o la restauration du contexte à exécuter
- La gestion des interruptions par le noyau de l’OS s’appuis donc le niveau matériel (le
système d’interruption du processeur)
- Le noyau représente un ensemble de services uniquement accessibles par le biais des
interruptions et des appels système
- Il est toujours résident en mémoire et sa taille, doit être aussi petite que possible pour
laisser suffisamment de mémoire aux applications
- Les appels système :
o s’exécutent en mode noyau (mode protégé)
o sont non interruptibles (intégrité du noyau)
o permettent d’accéder sous le contrôle du noyau hors de l’espace d’adressage
de la tâche
o assurent les grandes fonctionnalités du système
gestion des E/S
gestion de la mémoire
gestion de la communication inter-processus
gestion des fichiers et des répertoires
Cours de jc.bouriez page 10
DUT info 2eme année Système d’exploitation
gestion du temps
3. Processus et Threads
3.1. Gestion des processus
3.1.1. Description d’un processus
- Problématique d’un système multitâche
o plusieurs processus sont présents simultanément en mémoire centrale
o il faut donc partager la ressource CPU entre ces différents processus
- Ceci implique que chaque processus
o possède un certain nombre de caractéristiques propres
o passe au cours de son « existence » par plusieurs états
- Caractéristique d’un processus
o l’identification ou PID :
entier attribué par le noyau du système
au moment de la création
unique
o la priorité
indique le caractère d’urgence du processus
sert à déterminer l’ordre d’allocation de la CPU
- Espace d’adressage d’un processus
o ensemble des objets (instructions et données) qui est propre au processus
o comprend 3 zones
zone programme : code et constante (en lecture)
zone données : variables globales et variables locales déclarées static
(en lecture et écriture)
zone pile : informations temporaire (paramètres d’appel, adresse de
retour, variables locales)
zone tas : allocation dynamique de mémoire
SCH public