Cours se chap3_2

301 vues

Publié le

0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
301
Sur SlideShare
0
Issues des intégrations
0
Intégrations
5
Actions
Partages
0
Téléchargements
6
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Cours se chap3_2

  1. 1. 2AGE Ecole Nationale d’Ingénieurs de Tunis 1 SYSTÈMES D’EXPLOITATION Département TIC Meriem KASSAR BEN JEMAA Meriem.Kassar@enit.rnu.tn Ecole Nationale d’Ingénieurs de Tunis
  2. 2. 2AGE Ecole Nationale d’Ingénieurs de Tunis 2 FICHE DESCRIPTIVE •  Objectifs généraux : –  Comprendre les fonctionnalités essentielles d’un système d’exploitation. –  Connaître le système Unix du point de vue de l’utilisateur. –  Apprendre la notion de processus : définition, communication, exécution. •  Public Cible : 2ème Année, Spécialité « Génie Electrique » •  Pré requis : Informatique, Programmation •  Durée : 15 heures •  Formules pédagogiques : Exposé informel, Exercices •  Moyens pédagogiques : Tableau, Support de cours •  Bibliographie : [1] I. Mounier M. Gradinariu , « Programmation Système Internet  », Support de cours, UPMC, 2007. [2] F. Pellegrini D. Sherman, « Systèmes d’exploitation », Support de cours, ENSEIRB, 2001. [3] A. Belkhir, « Systèmes d’exploitation, Mécanismes de base », 2005. [4] F. Bourdon, « Systèmes d’exploitation », Support de cours, IUT de Caen. [5] Y. Bagnotte, « Systèmes d’exploitation Programmation Système », 2001. [6] H.Bourzoufi , « Cours de Systèmes d'Exploitation (Unix)  », Université de Valenciennes - ISTV.
  3. 3. 2AGE Ecole Nationale d’Ingénieurs de Tunis 3 CHAPITRE 3 PROCESSUS 1.  Gestion des processus 2.  Gestion des entrées/sorties 3.  Communication inter-processus
  4. 4. 2AGE Ecole Nationale d’Ingénieurs de Tunis 4 Partager le processeur
  5. 5. 2AGE Ecole Nationale d’Ingénieurs de Tunis 5 Pour partager le processeur
  6. 6. 2AGE Ecole Nationale d’Ingénieurs de Tunis 6 Exemple d’exécution multi-tâche
  7. 7. 2AGE Ecole Nationale d’Ingénieurs de Tunis 7 Ordonnanceur (scheduler)
  8. 8. 2AGE Ecole Nationale d’Ingénieurs de Tunis 8 Processus (ou tâche) •  Le processus est l'entité d'exécution dans le système UNIX.  Toute activité dans UNIX correspond à un processus. •  Dans UNIX, il existe deux types de processus : •  Processus système (Ex : swapper, crons, getty ....) •  Processus utilisateur qui correspondent à l'exécution d'une commande ou d'une application. •  Chaque processus est identifié par un numéro :  PID (Process Identifier) •  La commande ps donne la liste des processus. •  L’option –l permet d'obtenir pour chaque processus les informations suivantes : •  l'identité du propriétaire du processus (UID) ; •  l'identité du processus (PID) ; •  l'identité du processus père (PPID) ; •  l'état du processus (F/S) ; •  des informations relatives à la priorité du processus (C/PRI/NI) ; etc.
  9. 9. 2AGE Ecole Nationale d’Ingénieurs de Tunis 9 Arborescence de processus •  Un processus particulier (INIT) est lancé au démarrage de la machine. •  Il crée un processus par terminal. •  Chacun de ces processus attend une éventuelle connexion, et lorsqu'une connexion est validée, il lance un nouveau processus chargé de lire et d'interpréter les commandes de l'utilisateur (Shell sous UNIX). •  Chacune de ces commandes peut elle-même créer un nouveau processus, etc... On aboutit ainsi à une arborescence de processus.
  10. 10. 2AGE Ecole Nationale d’Ingénieurs de Tunis 10 Processus Unix •  La création d'un processus se fait par dédoublement : –  Un processus est toujours créé par un autre processus par le mécanisme de fourche fork. •  On appelle le processus créateur processus père. •  Le processus créé est appelé processus fils . •  L'appel système FORK() crée une copie exacte du processus original (L'appelant). •  La valeur de retour de la fonction FORK() est 0 pour le processus fils et est égale au PID du fils dans le processus père. •  Le processus fils peut exécuter un nouveau code à l'aide des primitives EXEC.
  11. 11. 2AGE Ecole Nationale d’Ingénieurs de Tunis 11 Processus Unix •  La durée de vie d'un processus peut être conceptuellement divisée en 3 principaux états qui décrivent le processus: •  L'état Elu : le processus obtient le processeur et dispose de toutes les ressources dont il a besoin. Il est en cours d'exécution. Un processus élu peut être arrêté, même s'il peut poursuivre son exécution, si le SE décide d'allouer le processeur à un autre processus. •  Lors de l’exécution, le processus peut demander à accéder à une ressource. Il quitte alors le processeur et passe dans l’état bloqué. •  L'état Bloqué : le processus se met en attente d’un évènement extérieur autre que le processeur pour pouvoir continuer. Lorsque le processus est passé dans l’état bloqué, le processeur a été alloué à un autre processus. Le processeur n’est donc pas forcément libre. •  L'état Prêt : le processus dispose de toutes les ressources dont il a besoin à l'exception de l'UC. Il est suspendu provisoirement pour permettre l'exécution d'un autre processus. Création d’un processus+ Attente du processeur = état Prêt
  12. 12. 2AGE Ecole Nationale d’Ingénieurs de Tunis 12 Processus en arrière plan
  13. 13. 2AGE Ecole Nationale d’Ingénieurs de Tunis 13 Exécution séquentielle
  14. 14. 2AGE Ecole Nationale d’Ingénieurs de Tunis 14 Exécution en arrière plan (1)
  15. 15. 2AGE Ecole Nationale d’Ingénieurs de Tunis 15 Exécution en arrière plan (2)
  16. 16. 2AGE Ecole Nationale d’Ingénieurs de Tunis 16 Identification des processus (1)
  17. 17. 2AGE Ecole Nationale d’Ingénieurs de Tunis 17 Identification des processus (2)
  18. 18. 2AGE Ecole Nationale d’Ingénieurs de Tunis 18 Processus en arrière plan
  19. 19. 2AGE Ecole Nationale d’Ingénieurs de Tunis 19 Commandes « bg » et « fg »
  20. 20. 2AGE Ecole Nationale d’Ingénieurs de Tunis 20 Processus en arrière plan Saisie de clavier
  21. 21. 2AGE Ecole Nationale d’Ingénieurs de Tunis 21 Processus en arrière plan Affichage écran
  22. 22. 2AGE Ecole Nationale d’Ingénieurs de Tunis 22 Interruption d’un processus •  Ctrl C – Saisie associée à un terminal (la fenêtre doit être active) – Ne concerne que les processus rattachés au terminal – Arrêt du processus (en standard) •  kill [-num] pid – num = numéro d’identification du signal – Pas obligatoirement depuis le terminal de rattachement du processus – Signal SIGKILL (numéro 9) provoque TOUJOURS l’arrêt du processus – Interruption uniquement des processus dont l’utilisateur est propriétaire
  23. 23. 2AGE Ecole Nationale d’Ingénieurs de Tunis 23 Terminal de rattachement •  Terminal : interface d’un interpréteur shell (représentée par une fenêtre) •  Représente la sortie standard et l’entrée standard par défaut des processus qui lui sont rattachés •  Comportement : – Attend une commande saisie par l’utilisateur prompt affiché – Attend la fin de l’exécution d’une commande pas de prompt affiché
  24. 24. 2AGE Ecole Nationale d’Ingénieurs de Tunis 24 Processus rattachés/non rattachés à un terminal •  Processus rattachés à un terminal : – Le processus shell dont c’est l’interface (shell courant) – Les processus créés depuis l’interface du shell (même lancés en arrière plan) Prompt mozilla (processus mozilla rattaché à un terminal) – Processus fils d’un processus rattaché à un terminal (hérite du terminal de rattachement) •  Processus non rattachés à un terminal : – Processus créés en double cliquant sur l’icône associée à l’application  double clic sur l’icône de mozilla (processus mozilla sans terminal de rattachement) – Processus créés par le système (démons par exemple) – Ne peuvent être « contrôlés » que par leur PID.
  25. 25. 2AGE Ecole Nationale d’Ingénieurs de Tunis 25 Valeur de retour d’un processus (1) $? : valeur de retour de la dernière commande exécutée
  26. 26. 2AGE Ecole Nationale d’Ingénieurs de Tunis 26 Valeur de retour d’un processus (2)
  27. 27. 2AGE Ecole Nationale d’Ingénieurs de Tunis 27 Valeur de retour d’un processus (3)
  28. 28. 2AGE Ecole Nationale d’Ingénieurs de Tunis 28 Gestion des entrées/sorties Processus Périphériques de base
  29. 29. 2AGE Ecole Nationale d’Ingénieurs de Tunis 29 Gestion des entrées/sorties Processus Périphériques de base
  30. 30. 2AGE Ecole Nationale d’Ingénieurs de Tunis 30 Héritage de contexte entre processus
  31. 31. 2AGE Ecole Nationale d’Ingénieurs de Tunis 31 Héritage de contexte entre processus
  32. 32. 2AGE Ecole Nationale d’Ingénieurs de Tunis 32 Héritage de contexte entre processus
  33. 33. 2AGE Ecole Nationale d’Ingénieurs de Tunis 33 Flux Création de processus
  34. 34. 2AGE Ecole Nationale d’Ingénieurs de Tunis 34 Fichiers « périphériques » d’un processus
  35. 35. 2AGE Ecole Nationale d’Ingénieurs de Tunis 35 Redirections, Exemple
  36. 36. 2AGE Ecole Nationale d’Ingénieurs de Tunis 36 Modes de redirections de sortie
  37. 37. 2AGE Ecole Nationale d’Ingénieurs de Tunis 37 Instruction « case » en shell
  38. 38. 2AGE Ecole Nationale d’Ingénieurs de Tunis 38 Script cree_ou_ajoute
  39. 39. 2AGE Ecole Nationale d’Ingénieurs de Tunis 39 Exécution (1)
  40. 40. 2AGE Ecole Nationale d’Ingénieurs de Tunis 40 Exécution (2)
  41. 41. 2AGE Ecole Nationale d’Ingénieurs de Tunis 41 Communications inter-processus Redirections Communications
  42. 42. 2AGE Ecole Nationale d’Ingénieurs de Tunis 42 Relation écrivain-lecteur
  43. 43. 2AGE Ecole Nationale d’Ingénieurs de Tunis 43 Scripts « prod » et « cons »
  44. 44. 2AGE Ecole Nationale d’Ingénieurs de Tunis 44 Exécution « prod » et « cons »
  45. 45. 2AGE Ecole Nationale d’Ingénieurs de Tunis 45 Exécution « prod » et « cons » (en arrière-plan)
  46. 46. 2AGE Ecole Nationale d’Ingénieurs de Tunis 46 « Tube » de commununication
  47. 47. 2AGE Ecole Nationale d’Ingénieurs de Tunis 47 Scripts « prod2 » et « cons2 »
  48. 48. 2AGE Ecole Nationale d’Ingénieurs de Tunis 48 Quelques commandes utiles : grep
  49. 49. 2AGE Ecole Nationale d’Ingénieurs de Tunis 49 Quelques commandes utiles : tr
  50. 50. 2AGE Ecole Nationale d’Ingénieurs de Tunis 50 Quelques commandes utiles : sort
  51. 51. 2AGE Ecole Nationale d’Ingénieurs de Tunis 51 Mécanismes de configuration de compte
  52. 52. 2AGE Ecole Nationale d’Ingénieurs de Tunis 52 Quelques variables d’environnement
  53. 53. 2AGE Ecole Nationale d’Ingénieurs de Tunis 53 Modifications des prompts
  54. 54. 2AGE Ecole Nationale d’Ingénieurs de Tunis 54 Les alias
  55. 55. 2AGE Ecole Nationale d’Ingénieurs de Tunis 55 Modification des alias
  56. 56. 2AGE Ecole Nationale d’Ingénieurs de Tunis 56 Configuration globale (tous les utilisateurs)
  57. 57. 2AGE Ecole Nationale d’Ingénieurs de Tunis 57 Fichier « .bash_profile »

×