La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Qu’est-ce qu’un système d’exploitation ?  Ensemble de programmes permettant de faire “ travailler ” un ordinateur, de le commander Compilation assembleur.

Présentations similaires


Présentation au sujet: "Qu’est-ce qu’un système d’exploitation ?  Ensemble de programmes permettant de faire “ travailler ” un ordinateur, de le commander Compilation assembleur."— Transcription de la présentation:

1 Qu’est-ce qu’un système d’exploitation ?  Ensemble de programmes permettant de faire “ travailler ” un ordinateur, de le commander Compilation assembleur éditeur gestion BD Programmes d’applications Système d’exploitation Matériel Utilisateur 1Utilisateur 2Utilisateur 3Utilisateur n Un système informatique (vue abstraite)  Système d’exploitation + outils système et services fournis par le constructeur = logiciel de base

2 Point de vue de l’utilisateur  L’interpreteur de commande  les appels systèmes (primitives système)

3 Divers systèmes d’exploitation  Système mono-tâche, mono-utilisateur (micro-ordinateur)  Système multi-tâches, multi-utilisateurs en temps partagé (mini ou gros ordinateurs)  Parallélisme (machines multi-processeurs)  Système distribué (réseau de machine)

4 LE SYSTEME : Un gestionnaire de ressources  Gestion des processus  Gestion des fichiers  sécurité du système  Gestion des entrées-sorties  Gestion de la mémoire

5 Les processus  La mono et la multiprogrammation  les problèmes d’ordonnancement  les problèmes d’interblocage et de synchronisation Définitions Un processus Est l’abstraction d’un programme en cours d’exécution (entité dynamique) Un programme Est une entité statique (fichier situé sur un disque)

6 Monoprogrammation  Les programmes sont exécutés les uns après les autres Durant les attentes (E/S, …) le processeur est inutilisé

7 Multiprogrammation  Les programmes sont exécutés “ simultanément ”

8 Le partage du temps La multiprogrammation donne une illusion de parallélisme, comme le temps partagé donne à chaque utilisateur l'impression d'être le seul à utiliser la machine. Dans une machine monoprocesseur, il y a du vrai parallélisme: certaines entrées-sorties sont réalisées par des processeurs spécialisés pendant que le processeur central exécute une autre tâche. Les machines multiprocesseurs sont appelés machine parallèles et présentent la véritable notion de processus exécutés en parallèle.

9 Réalisation de la multiprogrammation *Hiérarchie des processus *Etats des processus *réalisation à l'aide de tables *Ordonnancement

10 Hiérarchie des processus Dans les systèmes évolués les processus sont crées et détruits dynamiquement Unix: appel de la primitive système "fork" Les processus forment une arborescence issue du processus “ 1 ”, le processus “ init ”.

11 Etats des processus Un processus peut ne pas être actif pour deux raisons différentes: - attente de données (exemple progl | prog2) - attente “ d’unité centrale ” (un autre processus est actif)

12 Etats des processus

13 Opérations sur les processus yUn système d'exploitation doit être capable d'exécuter les opérations suivantes •-la création d'un processus •-la destruction d'un processus •-la suspension d'un processus •-la reprise d 1 un processus •-le changement de priorité d'un processus •-le blocage d'un processus •- le réveil d'un processus yCréer un processus nécessite les opérations suivantes : •-nommer un processus •-insérer un processus dans la liste des processus •-déterminer la priorité initiale d'un processus •- allouer les ressources de départ d'un processus

14 Réalisation a l’aide d’une table zTables des processus •informations sur l’état du processus •compteur ordinal •pointeur de pile •allocation mémoire •état des fichiers •etc… Cette table permet de sauvegarder les informations nécessaires aux changements de contextes La mise en œuvre pratique se fait par l'intermédiaire de tables

15 Partage du processeur z2 sortes de multiprogrammation : -Préemptive (interruption à temps fixe) -Non préemptive –Commutation sur certains appels système (ex E/S)

16 Indices de performance / utilisation du processeur zTaux d’occupation zTaux d’efficacité des calculs zTaux efficace du processeur Quand une tâche ne peut pas s’exécuter, le processeur rentre dans une boucle nop (no operation) Attention, pour être précis il faudrait tenir compte de l’Overhead

17 Ordonnancement zUn processus libère le processeur quand –Son quantum est fini –Il fait une E/S xQuestion : Quel est le nouveau processus à élire ? –Avec comme contrainte choisir très vite. xRéponse : le premier processus de la file d’attente des processus prêts xFile d’attente des processus prêts : •Un processus prêt : Si on lui laisse le processeur, il pourra l’utiliser •Commutation : Sauver et restaurer le contexte. •Bloc de description de processus (Bdp) : Structure de donnée du SE, qui mémorise le contexte d’un processus, son état, etc…

18 Commutateur et Ordonnanceur zCommutateur : xCommute un processus actif par un processus de la file d’attente des processus prêts zOrdonnanceur : xRéordonne la file d’attente des processus prêts Le commutateur intervient à chaque quantum et chaque E/S L’ordonnanceur est appelé beaucoup moins souvent.

19 Stratégies d’allocation zTourniquet (Round Robin) •Une seule file des processus zPriorité statique •Chaque processus reçoit à la création une priorité qu’il garde jusqu’à ça mort •Un file d’attente par priorité •On choisit le processus prêt de plus forte priorité (La plus forte 0) •Attention risque de famine zPriorité dynamique : •Il reçoit une priorité qui change suivant l’occupation du processeur qu’il a eu C’est le travail de l’ordonnanceur

20 Indice de performance de l’allocation zTemps d’exécution = le temps nécessaire au processus pour s’exécuter en monotâche zTemps de réponse = le temps écoulé entre le moment où le processus est soumis et celui où il est terminé zTaux d’efficacité du processeur zTemps de réponse/temps d’exécution zValeur moyenne et maximale du temps de réponse pour les processus zComportement du système en cas de surcharge zPossibilité de famine


Télécharger ppt "Qu’est-ce qu’un système d’exploitation ?  Ensemble de programmes permettant de faire “ travailler ” un ordinateur, de le commander Compilation assembleur."

Présentations similaires


Annonces Google