Systèmes d’exploitation Processus conclusion Modèle conceptuel de processus Pour masquer les effets des interruptions, les SE fournissent un modèle conceptuel.

Slides:



Advertisements
Présentations similaires
Module Systèmes d’exploitation
Advertisements

Module Systèmes d’exploitation
Module Systèmes d’exploitation
Module Systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
Introduction à la tolérance aux défaillances
Module Systèmes d’exploitation
Module Systèmes dexploitation Chapitre 6 Communication Interprocessus Partie III École Normale Supérieure Tétouan Département Informatique
Critère d’ordonnancement en temps réel Partie III
GEF 435 Principes des systèmes dexploitation Ordonnancement partie I (Tanenbaum 2.5)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitations
Systèmes en temps réel Services de Communication.
GEF 435 Principes des systèmes d’exploitation
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Considération de temps.
GEF 435 Principes des systèmes dexploitation Communication Interprocessus (CIP) II (Tanenbaum 2.3)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Communication Interprocessus (CIP) III (Tanenbaum 2.3)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
Synchronisation des Processus
PLAN du COURS Introduction Structure des Systèmes Informatiques
Conception et programmation Programmation Parallèle
Chapitre 3 Coopération et synchronisation par variables partagées
Chapitre 3 Interblocages
Exécutif Temps réel. Limitation des système classiques Rappels Mise en œuvre lourde des communications entre processus Problème de prédictibilité avec.
Des systèmes classiques aux systèmes temps réels
Introduction aux systèmes temps réel Ce cours sadresse aux informaticiens novices en matière de temps réel.
Mémoire & Processus Cours SE - SRC
6.1 URDL22005 Systèmes dexploitation Ordonnancement du CPU Concepts de Base Critères dOrdonnancement Algorithmes dOrdonnancement Ordonnancement Multi-Processeur.
Rappel sur la synchronisation des processus
Les Systèmes d’Exploitation
Synchronisation et communication entre processus
1 Threads et Lightweight Processes Chapitre 5 En français on utilise parfois flots ou fils pour threads. Votre manuel préfère le mot anglais thread : terminologie.
Système d’exploitation
Bienvenue! INF3723: Systèmes d’exploitation Luigi Logrippo
Segments de mémoire partagée
LE DISCOURS PHILOSOPHIQUE
Interblocage = impasse (Deadlock)
8.1 URDL22005 Systèmes dexploitation Interblocages Modèle Système Caractérisation dinterblocage Méthodes pour Gérer les Interblocages Prévention des Interblocages.
Programmation concurrente
Module 6 - Interblocage = impasse (Deadlock)
Gestion de Fichiers Tri Interne Efficace et Tri Externe.
Chapitre 3 Interblocages 3.1. Ressources
Ordonnancement de tâches
Chapitre 6 : Synchronisation des processus et des fils
Synchronisation Classique
Fondements de l’algorithmique des réseaux
Gestion de processus Corrigé TD 1 EFREI I
Travailler avec des processus
Interactions entre Processus
Surveiller et résoudre le conflit de verrouillage
La programmation système
Programmation Système et Réseau
Initiation à la conception des systèmes d'informations
A) Avec l’ordonnancement Rate Monotonic les priorités des processus suivent l’ordre inverse des périodes : P1 est prioritaire sur P2, lui-même prioritaire.
NOTIONS DE BASE DES SYSTÈMES TEMPS-RÉEL Sujets Concepts de processus/thread concurrents –Windows NT et la programmation temps réel –Synchronisation et.
Doan Chien Thang Aôut,2008.  La vue d'ensemble des systèmes d'exploitation  Les processus et les fils  Gestion de la mémoire  Le système des fichiers.
Ordonnancement (Scheduling)
Cours Système LI324 Les Interruptions Cours Système LI324
Les Processus.
Systèmes d’exploitation
Interblocage = impasse (Deadlock)
Algorithmes parallèles
Gestion des Tâches Les Processus. Un système multitâches La carte mère comporte Le Processeur (calcul et attente) Les jeux de composants spécialisés (entrées-sorties.
1 UNIX AVANCE Yves PAGNOTTE – Janvier – LES PROCESSUS SOUS UNIX.
1 UNIX AVANCE Yves PAGNOTTE – Janvier – COMMUNICATION INTER PROCESSUS : TUBES.
1 UNIX AVANCE Yves PAGNOTTE – Janvier – PROCESSUS ET RESSOURCES.
Transcription de la présentation:

Systèmes d’exploitation Processus conclusion

Modèle conceptuel de processus Pour masquer les effets des interruptions, les SE fournissent un modèle conceptuel de processus qui s’exécutent en « parallèle » Chaque processus possède son propre état et peut être considéré comme s’exécutant sur un processeur virtuel

Accès concurrents Les processus doivent parfois interagir en partageant, par exemple, une mémoire tampon Cette interaction peut induire des accès concurrents Dans ces situations, le « séquencement » dans le temps détermine le résultat Les accès concurrents engendrent des comportements non reproductibles

Section critique Nous avons introduit le concept de section critique pour éviter les accès concurrents Il s’agit d’une partie du code dans laquelle un processus accède à un objet partagé et veut en interdire l’accès aux autres processus Les sections critiques rendent possible l’exclusion mutuelle

IPC Les processus peuvent communiquer entre eux au moyen de primitives de communication Ces primitives assurent que jamais 2 processus ne seront en section critique en même temps, ce qui garantit l’exclusion mutuelle Un processus peut être élu (en cours d’exécution), prêt ou bloqué Cet état peut changer si un processus quelconque exécute une des primitives de communication inter- processus

Équivalence des IPC  primitives de communication ont été proposées : –Les sémaphores –Les moniteurs –Les compteurs d’événements –Les échanges de messages Ces primitives sont théoriquement équivalentes en ce sens que chacune d’elles permet de réaliser les autres Les sémaphores et les échanges de messages sont le plus souvent utilisés dans les systèmes réels

Problèmes classiques Un certain nombre de problèmes classiques de communication inter-processus ont été résolus au moyen des primitives précédentes Souvent le premier test d’une nouvelle primitive consiste à résoudre ces problèmes classiques : –Producteur-consommateur –Philosophes –Lecteurs-rédacteurs –Coiffeur endormi Malgré ces primitives, il faut veiller à éviter les erreurs et les interblocages

Ordonnancement On connaît de nombreux algorithmes d’ordonnancement L’ordonnanceur doit déterminer le prochain processus à exécuter en prenant en considération des facteurs comme le tps de réponse, l’efficacité et l’équité Les algos les plus connus sont : –Le tourniquet –L’ordonnancement avec priorité –Les files à plusieurs niveaux –L’ordonnancement du plus court d’abord –L’ordonnancement garanti Le mécanisme d’ordonnancement et les décisions sont parfois disjoints dans certains systèmes pour davantage de souplesse

Interblocage Les interblocages sont un problème potentiel dans tout SE Ils se produisent : –Si des processus ont obtenu des accès exclusifs à un certain nombre de ressources –Et si chacun des processus demande une ressource détenue par un autre processus du groupe –Ils sont tous bloqués et aucun ne peut plus s’exécuter On peut détecter des interblocages à l’aide du graphe d’allocations des ressources (recherche de cycle), cependant aucune méthode satisfaisante ne permet la reprise On peut éviter l’apparition des interblocages en mémorisant les états sûrs et non sûrs : –Un état sûr, contrairement à un état non sûr, est un état pour lequel il existe une séquence d’événements qui garantit la terminaison de tous les processus –L’algorithme du banquier évite les interblocages en n’accordant pas une ressource si cela doit faire passer le système dans un état non sûr On peut prévenir l’apparition des interblocages en structurant le système de manière à éviter leur apparition –Ex : condition d’attente circulaire n’est pas vérifiée si on accorde une ressource à la fois On peut aussi éviter les interblocages en numérotant toutes les ressources et en s’assurant que les processus les demandent en ordre croissant La famine peut être évitée par une politique d’allocation premier-arrivé, premier-servi

Applications Une application du cours a été réalisée sous UNIX Avec les études notamment des primitives : –fork –exec* –signal, kill –pipe –mkfifo –semget, semop –shmget, shmat, shmdt, shmctl –socket, send, receive –…–…