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

1 GPA435 Systèmes dexploitation et programmation de système Révision août 2013 par Tony Wong, ing., Ph.D. Chapitre 1 Évolution des systèmes: Traitement.

Présentations similaires


Présentation au sujet: "1 GPA435 Systèmes dexploitation et programmation de système Révision août 2013 par Tony Wong, ing., Ph.D. Chapitre 1 Évolution des systèmes: Traitement."— Transcription de la présentation:

1 1 GPA435 Systèmes dexploitation et programmation de système Révision août 2013 par Tony Wong, ing., Ph.D. Chapitre 1 Évolution des systèmes: Traitement en série, par lots, multi-tâche et multi-utilisateur, S.E. moderne

2 2 Introduction Systèmes dexploitation (S.E.): UNIX, Linux, Windows NT, MacOS. UNIX, Linux, Windows NT, MacOS. Quest-ce quun S.E.? Une interface humain machine;Une interface humain machine; Un ensemble dappels de système (services).Un ensemble dappels de système (services). Évolution des systèmes Point de vue utilisateur Point de vue programmeur

3 3 Traitement en série Évolution des systèmes Fin des années 40 milieu des années 50 du 20e siècle. Fin des années 40 milieu des années 50 du 20e siècle. Programmation en langage machine. Programmation en langage machine. Traitement en série obligatoire. Traitement en série obligatoire. Utilisation de lordinateur un programmeur et un programme à la fois. Utilisation de lordinateur un programmeur et un programme à la fois. Création de bibliothèques de fonctions communes concept de pilote E/S. Création de bibliothèques de fonctions communes concept de pilote E/S. Améliorer lefficacité du traitement en série

4 4 Traitement par lots Évolution des systèmes Traitement en série inefficace car monopolisé par un seul programmeur. Traitement en série inefficace car monopolisé par un seul programmeur. Coût énorme des ordinateurs. Coût énorme des ordinateurs. Traitement par lots (batch processing): Traitement par lots (batch processing): milieu des années 50 du 20e siècle;milieu des années 50 du 20e siècle; maximise lutilisation des ordinateurs;maximise lutilisation des ordinateurs; premier système: conçu par General Motor.premier système: conçu par General Motor.

5 5 Traitement par lots (suite) Évolution des systèmes Concept de « moniteur ». Concept de « moniteur ». Moniteur un programme qui veille sur les tâches (jobs) des utilisateurs. Moniteur un programme qui veille sur les tâches (jobs) des utilisateurs. Chaque utilisateur soumet leur tâche à lopérateur de lordinateur: Chaque utilisateur soumet leur tâche à lopérateur de lordinateur: cartes perforées, rubans magnétiques;cartes perforées, rubans magnétiques; regroupement des tâches;regroupement des tâches; exécution séquentielle des regroupements.exécution séquentielle des regroupements. Véritable système dexploitation!!

6 6 Traitement par lots (suite) Évolution des systèmes Particularité la fin dune tâche est suivie par un branchement vers le moniteur. Particularité la fin dune tâche est suivie par un branchement vers le moniteur. Ce dernier charge en mémoire la tâche suivante et lexécute dans le processeur. Ce dernier charge en mémoire la tâche suivante et lexécute dans le processeur. Lorganisation dun moniteur a influencé grandement la conception des S.E. modernes. Lorganisation dun moniteur a influencé grandement la conception des S.E. modernes.

7 7 Traitement par lots (suite) Évolution des systèmes Le moniteur réside dans la mémoire de lordinateur: Le moniteur réside dans la mémoire de lordinateur: Le processeur est soit en exécution dun programme utilisateur soit en exécution du programme moniteur

8 8 Traitement par lots (suite) Évolution des systèmes Lordinateur est soit en exécution dun programme utilisateur soit en exécution du programme moniteur. Lordinateur est soit en exécution dun programme utilisateur soit en exécution du programme moniteur. Produira plus tard la notion de mode dexécution dans les S.E. modernes. Produira plus tard la notion de mode dexécution dans les S.E. modernes. Introduction dun ensemble de commandes pour la gestion du traitement par lots (bien plus tard JCL Job Control Language). Introduction dun ensemble de commandes pour la gestion du traitement par lots (bien plus tard JCL Job Control Language).

9 9 Traitement par lots (suite) Évolution des systèmes Amélioration du taux dutilisation de lordinateur. Amélioration du taux dutilisation de lordinateur. Par contre, une tâche peut monopoliser longtemps le processeur. Par contre, une tâche peut monopoliser longtemps le processeur. Attendre la fin des opérations E/S;Attendre la fin des opérations E/S; les rubans magnétiques avaient un temps daccès très long.les rubans magnétiques avaient un temps daccès très long. Pour augmenter le rendement de lordinateur récupérer ce temps perdu. Pour augmenter le rendement de lordinateur récupérer ce temps perdu.

10 10 Par lots multiprogrammé Évolution des systèmes Problématique du traitement par lots: Problématique du traitement par lots: si une tâche utilise 30% de son temps à effectuer des opérations E/S;si une tâche utilise 30% de son temps à effectuer des opérations E/S; le processeur ne travaillera pas dans la majeure partie de ce 30%. le processeur ne travaillera pas dans la majeure partie de ce 30%. Multiprogrammation exécuter une autre tâche dans les portions de temps où le processeur est inactif. Multiprogrammation exécuter une autre tâche dans les portions de temps où le processeur est inactif. Exige la coopération du matériel. Exige la coopération du matériel.

11 11 Par lots multiprogrammé (suite) Évolution des systèmes Coopération du matériel interruptions matérielles. Coopération du matériel interruptions matérielles. module de gestion des interruptions;module de gestion des interruptions; transfert rapide des données sans intervention du processeur.transfert rapide des données sans intervention du processeur. Création dun module MM (Memory Management). Création dun module MM (Memory Management). maintenir en mémoire les tâches pour lexécution.maintenir en mémoire les tâches pour lexécution.

12 12 Par lots multiprogrammé (suite) Évolution des systèmes Création dun module dordonnancement des tâches: Création dun module dordonnancement des tâches: peut avoir plus dune tâche en mémoire;peut avoir plus dune tâche en mémoire; sélectionne lune des tâches pour lexécution.sélectionne lune des tâches pour lexécution. Tous ces modules font partie de larchitecture moderne des S.E. Tous ces modules font partie de larchitecture moderne des S.E.

13 13 Traitement en temps partagé Évolution des systèmes Traitement par lots pas dinteractivité. Traitement par lots pas dinteractivité. Une nouvelle technique doit être développée: Une nouvelle technique doit être développée: le CTSS (Compatible Time-Sharing System) de MIT début des années 60 du 20e siècle.le CTSS (Compatible Time-Sharing System) de MIT début des années 60 du 20e siècle. Idée de base le blocage et le redémarrage périodique des tâches à laide dune interruption cadencée par une source stable. Idée de base le blocage et le redémarrage périodique des tâches à laide dune interruption cadencée par une source stable.

14 14 Traitement en temps partagé Évolution des systèmes Chaque utilisateur du système est relié à lordinateur par le biais dun terminal. Chaque utilisateur du système est relié à lordinateur par le biais dun terminal. Utilisateur = terminal = tâche Utilisateur = terminal = tâche Le processeur est contrôlé par chaque terminal durant une brève période de temps (0,2 sec pour CTSS). Le processeur est contrôlé par chaque terminal durant une brève période de temps (0,2 sec pour CTSS). Point de vue du S.E. Un concept encore utilisé dans les S.E. modernes

15 15 Traitement en temps partagé Évolution des systèmes Ainsi, les tâches ont tour à tour lattention du processeur (round-robin). Ainsi, les tâches ont tour à tour lattention du processeur (round-robin). Lorsquune tâche est en attente dune opération E/S: Lorsquune tâche est en attente dune opération E/S: immédiatement bloquée;immédiatement bloquée; contrôle du processeur est passé à une autre tâche.contrôle du processeur est passé à une autre tâche.

16 16 Résumé Évolution des systèmes Traitement par lots multiprogramméTraitement en temps partagé Objectif principalMaximiser lutilisation du processeurMinimiser le temps de réponse Source des commandes JCB (Job Control Language) accompagnant la tâche Commandes interactives entrées via le terminal

17 17 Multitâche et multi-utilisateur Environnement multiprogrammé + linteractivité des systèmes en temps partagé. Environnement multiprogrammé + linteractivité des systèmes en temps partagé. Multitâche multiprogrammation;Multitâche multiprogrammation; Multi-utilisateur temps partagé.Multi-utilisateur temps partagé. Un des premiers systèmes véritablement M-M: Un des premiers systèmes véritablement M-M: MULTICS (MULTiplexed Information and Computer Service) de MIT, Bell, General Electric au milieu des années 60 du 20e.MULTICS (MULTiplexed Information and Computer Service) de MIT, Bell, General Electric au milieu des années 60 du 20e. Évolution des systèmes

18 18 Multitâche et multi-utilisateur Évolution des systèmes MULTICS avait introduit plusieurs innovations: MULTICS avait introduit plusieurs innovations: découplage entre le S.E. et le matérieldécouplage entre le S.E. et le matériel mémoire virtuelle:mémoire virtuelle: Pagination de la mémoire;Pagination de la mémoire; liaison dynamique.liaison dynamique. système de fichiers hiérarchique.système de fichiers hiérarchique. La mémoire physique de lordinateur est organisée en pages de taille fixe Un répertoire peut contenir dautres répertoires Ladresse des instructions est déterminée au moment de leur chargement en mémoire

19 19 Multitâche et multi-utilisateur MULTICS avait introduit le concept de processus: MULTICS avait introduit le concept de processus: structure fondamentale dun S.E.structure fondamentale dun S.E. Processus possède trois éléments: Processus possède trois éléments: programme exécutable;programme exécutable; données associées au programme;données associées au programme; contexte dexécution du programme.contexte dexécution du programme. Processus programme en exécution. Processus programme en exécution. Évolution des systèmes

20 20 Structure des S.E. modernes Évolution des systèmes Dabord organisation en couche hiérarchique: Dabord organisation en couche hiérarchique:

21 21 Structure des S.E. modernes Évolution des systèmes Composants matériels: Composants matériels: instructions privilégiées;instructions privilégiées; adressage segmenté;adressage segmenté; système de signaux.système de signaux. Mémoire virtuelle: Mémoire virtuelle: offrir à chacun des processus toute la mémoire de lordinateur;offrir à chacun des processus toute la mémoire de lordinateur; utilisation de la mémoire secondaire (lespace du disque local);utilisation de la mémoire secondaire (lespace du disque local); Protection contre la corruption des données Interruption logicielle

22 22 Structure des S.E. modernes Évolution des systèmes Mémoire virtuelle (suite): Mémoire virtuelle (suite): modèle de programmation adresse mémoire contiguë;modèle de programmation adresse mémoire contiguë; astuce ne charger quune portion du code exécutable des programmes en mémoire;astuce ne charger quune portion du code exécutable des programmes en mémoire; code chargé en mémoire fonction du flux dexécution;code chargé en mémoire fonction du flux dexécution; désengorger le système déplacement des modules exécutables de/vers la mémoire secondaire.désengorger le système déplacement des modules exécutables de/vers la mémoire secondaire.

23 23 Structure des S.E. modernes Évolution des systèmes Système de fichiers: Système de fichiers: organisation cohérente de la mémoire secondaire;organisation cohérente de la mémoire secondaire; système de fichiers hiérarchique arbre inversé;système de fichiers hiérarchique arbre inversé; sous-répertoire sont des enfants dun répertoire racine;sous-répertoire sont des enfants dun répertoire racine; système de fichiers hiérarchique un répertoire peut contenir dautres répertoires.système de fichiers hiérarchique un répertoire peut contenir dautres répertoires.

24 24 Structure des S.E. modernes Évolution des systèmes Système de fichiers (suite): Système de fichiers (suite): pour atteindre un fichier:pour atteindre un fichier: parcours linéaire; parcours linéaire; parcours non linéaire. parcours non linéaire. parcours linéaire:parcours linéaire: chemin absolu;chemin absolu; chemin relatif.chemin relatif. Nexiste que dans certains S.E. modernes (ex: UNIX, Linux) UNIX: /home/etudiant/jean/devoir.txt /home/etudiant/jean/devoir.txt Windows NT: h:\etudiant\jean\devoir.txt UNIX:jean/devoir.txt jean\devoir.txt /home/etudiant (UNIX) h:\etudiant ( Windows NT )

25 25 Structure des S.E. modernes Évolution des systèmes Système de fichiers (suite): Système de fichiers (suite): parcours non linéaire à l aide de liens virtuels (soft-hard links);parcours non linéaire à l aide de liens virtuels (soft-hard links); chemin absolu chemin relatif parcours non linéaire

26 26 Structure des S.E. modernes Évolution des systèmes Système de fichiers (suite): Système de fichiers (suite): accès simultanés par plusieurs processus;accès simultanés par plusieurs processus; accès simultanés par plusieurs utilisateurs;accès simultanés par plusieurs utilisateurs; deux processus utilisent le même fichier.deux processus utilisent le même fichier. Des droits accès sont nécessaires; Primitifs de verrouillage et douverture exclusive sont nécessaires. PiPi PnPn

27 27 Structure des S.E. modernes Évolution des systèmes Communication inter-processus. Trois points importants: Communication inter-processus. Trois points importants: transfert des données entre processus;transfert des données entre processus; coordination des processus;coordination des processus; synchronisation des processus.synchronisation des processus. Moyens par lesquels les données sont communiquées entre les processus Méthodes qui évitent les erreurs dans laccès des données et leurs traitements Appels de système permettant la coordination des processus Éviter «limpasse » et la «famine» les processus

28 28 Structure des S.E. modernes Évolution des systèmes Communication inter-processus (suite): Communication inter-processus (suite): limpasselimpasse la faminela famine Interdépendance (de données) des processus empêche la progression de tous les processus impliqués Analogie: arrêt toutes directions à lintersection des chemins croisés Interdépendance (de données) des processus empêche la progression dun sous-ensemble de processus impliqués Analogie: devant un tourniquet à lentrée dun métro à l heure de pointe

29 29 Structure des S.E. modernes Transfert des données entre processus:Transfert des données entre processus: mémoire partagée; mémoire partagée; tuyaux (pipes); tuyaux (pipes); messages. messages. Évolution des systèmes Une plage de mémoire (physique ou virtuelle) partagée entre plusieurs processus Structure de données FIFO. Leurs accès sont gérés par le S.E. Sans liens de communication permanents. Les messages sont déposés dans la queue de message des processus. Peuvent donc réaliser des protocoles autres que le FIFO.

30 30 Structure des S.E. modernes Évolution des systèmes Synchronisation des processus:Synchronisation des processus: fonctions attendre() et signal() ; fonctions attendre() et signal() ; variables sémaphores; variables sémaphores; instructions atomiques. instructions atomiques. Fonctions de synchronisation qui modifient une variable sémaphore Variable entière nadmettant que trois opérations: i) initialisation à une valeur non négative; ii) incrémentation de sa valeur; iii) décrémentation de sa valeur. Opérations réalisées par des instructions atomiques. Des instructions exécutées en séquence sans interruption par aucune autre instruction du processeur.

31 31 Structure des S.E. modernes Évolution des systèmes Modèle des processus Modèle des processus Processus entité dynamique;Processus entité dynamique; interaction par communication ;interaction par communication ; utilise des ressources;utilise des ressources; possède une durée de vie et sont en interaction avec dautres processus utilisant le système de communication inter- processus (mémoire partagée, tuyaux, messages, etc.) du S.E. Ces ressources sont: fichiers, mémoire, sémaphores périphériques dE/S, etc. Ces ressources sont contrôlées par le S.E.

32 32 Structure des S.E. modernes Évolution des systèmes Modèle des processus (suite) Modèle des processus (suite) Processus créé mais pas encore exécutable Processus prêt pour lexécution Processus en exécution dans le processeur Processus en suspension: attendant larrivée dun événement ou la fin dune opération Arrêt du processus: fin de son exécution ou causé par une condition derreur

33 33 Structure des S.E. modernes Évolution des systèmes Interpréteur de commandes Interpréteur de commandes un processus utilisateur;un processus utilisateur; permet lexécution des programmes;permet lexécution des programmes; manipulation des fichiers;manipulation des fichiers; accéder aux périphériques de lordinateur;accéder aux périphériques de lordinateur; automatisation des procédures par fichiers de commandes;automatisation des procédures par fichiers de commandes; langages de programmation « shell ».langages de programmation « shell ».

34 34 Tendances des S.E. modernes Évolution des systèmes Nouvelles tendances: Nouvelles tendances: architecture micro-noyau (microkernel);architecture micro-noyau (microkernel); exécution multifilière (multithreading);exécution multifilière (multithreading); traitement parallèle symétrique (symmetric multiprocessing);traitement parallèle symétrique (symmetric multiprocessing); système dexploitation pour processeurs multi-cœurs.système dexploitation pour processeurs multi-cœurs.

35 35 Tendances des S.E. modernes Évolution des systèmes Architecture micro-noyau: Architecture micro-noyau: changement important dans lorganisation interne du S.E.;changement important dans lorganisation interne du S.E.; seulement quelques fonctions importantes sont assignées au noyau;seulement quelques fonctions importantes sont assignées au noyau; les autres services processus utilisateurs appelés « serveurs »;les autres services processus utilisateurs appelés « serveurs »; séparation explicite entre le noyau dun S.E. et le développement des serveurs;séparation explicite entre le noyau dun S.E. et le développement des serveurs;

36 36 Tendances des S.E. modernes Évolution des systèmes Exemple du concept de micro-noyau: Exemple du concept de micro-noyau:

37 37 Tendances des S.E. modernes Évolution des systèmes Exécution multifilière: Exécution multifilière: un processus est divisé en plusieurs chemins dexécution simultanée;un processus est divisé en plusieurs chemins dexécution simultanée; fil dexécution unité de travail interruptible et séquentielle;fil dexécution unité de travail interruptible et séquentielle; fil dexécution ne possède pas de contexte dexécution mais utilise celui du processus père;fil dexécution ne possède pas de contexte dexécution mais utilise celui du processus père; Mémoire utilisée, létat de la pile programme, les ports dE/S associés, létat des registres du processeur, etc. Modèle de programmation concourante

38 38 Tendances des S.E. modernes Évolution des systèmes Exécution multifilière: Exécution multifilière: un processus est une collection de fils dexécution;un processus est une collection de fils dexécution; fil dexécution principal père de tous les fils dexécution créés;fil dexécution principal père de tous les fils dexécution créés;

39 39 Tendances des S.E. modernes Évolution des systèmes Traitement parallèle symétrique: Traitement parallèle symétrique: réalisation utilisant lexécution multifilière;réalisation utilisant lexécution multifilière; système à n processeurs (n 256);système à n processeurs (n 256); mémoire commune accessible par tous les processeurs;mémoire commune accessible par tous les processeurs; tous les processeurs sont gérés de la même et jouent le même rôle;tous les processeurs sont gérés de la même et jouent le même rôle; ordonnancement des fils dexécution dans tous les processeurs libres.ordonnancement des fils dexécution dans tous les processeurs libres.

40 40 Tendances des S.E. modernes Évolution des systèmes Traitement parallèle symétrique: Traitement parallèle symétrique: nouvelle exigence «extensibilité» du S.E.;nouvelle exigence «extensibilité» du S.E.; application du concept de micro-noyau;application du concept de micro-noyau; S.E. décentralisé;S.E. décentralisé; ordonnancement des fils dexécution réalisé localement par chacun des processeurs;ordonnancement des fils dexécution réalisé localement par chacun des processeurs; collaboration entre les processeurs;collaboration entre les processeurs; une réalisation plus complexe du S.E.une réalisation plus complexe du S.E.

41 41 Tendances des S.E. modernes Évolution des systèmes Système dexploitation pour processeurs multi-cœurs: Système dexploitation pour processeurs multi-cœurs: Présentement le S.E. traite les cœurs comme des CPU indépendants (traitement parallèle symétrique);Présentement le S.E. traite les cœurs comme des CPU indépendants (traitement parallèle symétrique); en plus, doit gérer les conflits daccès aux ressources partagées;en plus, doit gérer les conflits daccès aux ressources partagées; doit gérer le délai variable dans le transfert des données.doit gérer le délai variable dans le transfert des données.

42 42 Fin du chapitre 1 Références: Références: Tanenbaum, A.S., Systèmes dexploitation. Pearson Education France, 2008.Tanenbaum, A.S., Systèmes dexploitation. Pearson Education France, Stallings, W., Operating Systems : Internals and Design Principals. Upper Saddle River, NJ : Prentice Hall, 1998.Stallings, W., Operating Systems : Internals and Design Principals. Upper Saddle River, NJ : Prentice Hall, Références citées dans le premier chapitre des notes de cours.Références citées dans le premier chapitre des notes de cours. Évolution des systèmes


Télécharger ppt "1 GPA435 Systèmes dexploitation et programmation de système Révision août 2013 par Tony Wong, ing., Ph.D. Chapitre 1 Évolution des systèmes: Traitement."

Présentations similaires


Annonces Google