Click here to load reader

Cours se chap3

  • View
    30

  • Download
    0

Embed Size (px)

Text of Cours se chap3

  1. 1. 2AGE Ecole Nationale dIngnieurs de Tunis 1 SYSTMES DEXPLOITATION Dpartement TIC Meriem KASSAR BEN JEMAA [email protected] Ecole Nationale dIngnieurs de Tunis
  2. 2. 2AGE Ecole Nationale dIngnieurs de Tunis 2 FICHE DESCRIPTIVE Objectifs gnraux : Comprendre les fonctionnalits essentielles dun systme dexploitation. Connatre le systme Unix du point de vue de lutilisateur. Apprendre la notion de processus : dnition, communication, excution. Public Cible : 2me Anne, Spcialit Gnie Electrique Pr requis : Informatique, Programmation Dure : 15 heures Formules pdagogiques : Expos informel, Exercices Moyens pdagogiques : Tableau, Support de cours Bibliographie : [1] I. MounierM. Gradinariu , Programmation SystmeInternet , Support de cours, UPMC, 2007. [2] F. PellegriniD. Sherman, Systmes dexploitation, Support de cours, ENSEIRB, 2001. [3] A. Belkhir, Systmes dexploitation, Mcanismes de base, 2005. [4] F. Bourdon, Systmes dexploitation, Support de cours, IUT de Caen.[5] Y. Bagnotte, Systmes dexploitationProgrammation Systme, 2001. [6] H.Bourzou , Cours de Systmes d'Exploitation (Unix) , Universit de Valenciennes - ISTV.
  3. 3. 2AGE Ecole Nationale dIngnieurs de Tunis 3 CHAPITRE 3PROCESSUS 1. Gestion des processus 2. Gestion des entres/sorties 3. Communication inter-processus
  4. 4. 2AGE Ecole Nationale dIngnieurs de Tunis 4 Partager le processeur
  5. 5. 2AGE Ecole Nationale dIngnieurs de Tunis 5 Pour partager le processeur
  6. 6. 2AGE Ecole Nationale dIngnieurs de Tunis 6 Exemple dexcution multi-tche
  7. 7. 2AGE Ecole Nationale dIngnieurs de Tunis 7 Ordonnanceur (scheduler)
  8. 8. 2AGE Ecole Nationale dIngnieurs de Tunis 8 Processus (ou tche) Le processus est l'entit d'excution dans le systme UNIX. Toute activit dans UNIX correspond un processus. Dans UNIX, il existe deux types de processus : Processus systme (Ex : swapper, crons, getty ....) Processus utilisateur qui correspondent l'excution d'une commande ou d'une application. Chaque processus est identi par un numro : PID (Process Identier) La commande ps donne la liste des processus. Loption l permet d'obtenir pour chaque processus les informations suivantes : l'identit du propritaire du processus (UID) ; l'identit du processus (PID) ; l'identit du processus pre (PPID) ; l'tat du processus (F/S) ; des informations relatives la priorit du processus (C/PRI/NI) ; etc.
  9. 9. 2AGE Ecole Nationale dIngnieurs de Tunis 9 Arborescence de processus Un processus particulier (INIT) est lanc au dmarrage de la machine. Il cre un processus par terminal. Chacun de ces processus attend une ventuelle connexion, et lorsqu'une connexion est valide, il lance un nouveau processus charg de lire et d'interprter les commandes de l'utilisateur (Shell sous UNIX). Chacune de ces commandes peut elle-mme crer un nouveau processus, etc... On aboutit ainsi une arborescence de processus.
  10. 10. 2AGE Ecole Nationale dIngnieurs de Tunis 10 Processus Unix La cration d'un processus se fait par ddoublement : Un processus est toujours cr par un autre processus par le mcanisme de fourche fork. On appelle le processus crateur processus pre. Le processus cr est appel processus ls . L'appel systme FORK() cre une copie exacte du processus original (L'appelant). La valeur de retour de la fonction FORK() est 0 pour le processus ls et est gale au PID du ls dans le processus pre. Le processus ls peut excuter un nouveau code l'aide des primitives EXEC.
  11. 11. 2AGE Ecole Nationale dIngnieurs de Tunis 11 Processus Unix La dure de vie d'un processus peut tre conceptuellement divise en 3 principaux tats qui dcrivent 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'excution. Un processus lu peut tre arrt, mme s'il peut poursuivre son excution, si le SE dcide d'allouer le processeur un autre processus. Lors de lexcution, le processus peut demander accder une ressource. Il quitte alors le processeur et passe dans ltat bloqu. L'tat Bloqu : le processus se met en attente dun vnement extrieur autre que le processeur pour pouvoir continuer. Lorsque le processus est pass dans ltat bloqu, le processeur a t allou un autre processus. Le processeur nest donc pas forcment libre. L'tat Prt : le processus dispose de toutes les ressources dont il a besoin l'exception de l'UC. Il est suspendu provisoirement pour permettre l'excution d'un autre processus. Cration dun processus+ Attente du processeur = tat Prt
  12. 12. 2AGE Ecole Nationale dIngnieurs de Tunis 12 Processus en arrire plan
  13. 13. 2AGE Ecole Nationale dIngnieurs de Tunis 13 Excution squentielle
  14. 14. 2AGE Ecole Nationale dIngnieurs de Tunis 14 Excution en arrire plan (1)
  15. 15. 2AGE Ecole Nationale dIngnieurs de Tunis 15 Excution en arrire plan (2)
  16. 16. 2AGE Ecole Nationale dIngnieurs de Tunis 16 Identication des processus (1)
  17. 17. 2AGE Ecole Nationale dIngnieurs de Tunis 17 Identication des processus (2)
  18. 18. 2AGE Ecole Nationale dIngnieurs de Tunis 18 Processus en arrire plan
  19. 19. 2AGE Ecole Nationale dIngnieurs de Tunis 19 Commandes bg et fg
  20. 20. 2AGE Ecole Nationale dIngnieurs de Tunis 20 Processus en arrire planSaisie de clavier
  21. 21. 2AGE Ecole Nationale dIngnieurs de Tunis 21 Processus en arrire planAfchage cran
  22. 22. 2AGE Ecole Nationale dIngnieurs de Tunis 22 Interruption dun processus Ctrl CSaisie associe un terminal (la fentre doit tre active) Ne concerne que les processus rattachs au terminal Arrt du processus (en standard) kill [-num] pidnum = numro didentication du signalPas obligatoirement depuis le terminal de rattachement du processus Signal SIGKILL (numro 9) provoque TOUJOURS larrt du processusInterruption uniquement des processus dont lutilisateur est propritaire
  23. 23. 2AGE Ecole Nationale dIngnieurs de Tunis 23 Terminal de rattachement Terminal : interface dun interprteur shell (reprsente par une fentre) Reprsente la sortie standard et lentre standard par dfaut des processus qui lui sont rattachs Comportement : Attend une commande saisie par lutilisateur prompt afch Attend la n de lexcution dune commande pas de prompt afch
  24. 24. 2AGE Ecole Nationale dIngnieurs de Tunis 24 Processus rattachs/non rattachs un terminal Processus rattachs un terminal : Le processus shell dont cest linterface (shell courant) Les processus crs depuis linterface du shell (mme lancs en arrire plan) Prompt mozilla(processus mozilla rattach un terminal) Processus ls dun processus rattach un terminal (hrite du terminal de rattachement) Processus non rattachs un terminal : Processus crs en double cliquant sur licne associe lapplication double clic sur licne de mozilla (processus mozilla sans terminal de rattachement)Processus crs par le systme (dmons par exemple) Ne peuvent tre contrls que par leur PID.
  25. 25. 2AGE Ecole Nationale dIngnieurs de Tunis 25 Valeur de retour dun processus (1) $? : valeur de retour de la dernire commande excute
  26. 26. 2AGE Ecole Nationale dIngnieurs de Tunis 26 Valeur de retour dun processus (2)
  27. 27. 2AGE Ecole Nationale dIngnieurs de Tunis 27 Valeur de retour dun processus (3)
  28. 28. 2AGE Ecole Nationale dIngnieurs de Tunis 28 Gestion des entres/sorties ProcessusPriphriques de base
  29. 29. 2AGE Ecole Nationale dIngnieurs de Tunis 29 Gestion des entres/sorties ProcessusPriphriques de base
  30. 30. 2AGE Ecole Nationale dIngnieurs de Tunis 30 Hritage de contexte entre processus
  31. 31. 2AGE Ecole Nationale dIngnieurs de Tunis 31 Hritage de contexte entre processus
  32. 32. 2AGE Ecole Nationale dIngnieurs de Tunis 32 Hritage de contexte entre processus
  33. 33. 2AGE Ecole Nationale dIngnieurs de Tunis 33 FluxCration de processus
  34. 34. 2AGE Ecole Nationale dIngnieurs de Tunis 34 Fichiers priphriques dun processus
  35. 35. 2AGE Ecole Nationale dIngnieurs de Tunis 35 Redirections, Exemple
  36. 36. 2AGE Ecole Nationale dIngnieurs de Tunis 36 Modes de redirections de sortie
  37. 37. 2AGE Ecole Nationale dIngnieurs de Tunis 37 Instruction case en shell
  38. 38. 2AGE Ecole Nationale dIngnieurs de Tunis 38 Script cree_ou_ajoute
  39. 39. 2AGE Ecole Nationale dIngnieurs de Tunis 39 Excution (1)
  40. 40. 2AGE Ecole Nationale dIngnieurs de Tunis 40 Excution (2)
  41. 41. 2AGE Ecole Nationale dIngnieurs de Tunis 41 Communications inter-processus RedirectionsCommunications
  42. 42. 2AGE Ecole Nationale dIngnieurs de Tunis 42 Relation crivain-lecteur
  43. 43. 2AGE Ecole Nationale dIngnieurs de Tunis 43 Scripts prod et cons
  44. 44. 2AGE Ecole Nationale dIngnieurs de Tunis 44 Excution prod et cons
  45. 45. 2AGE Ecole Nationale dIngnieurs de Tunis 45 Excution prod et cons(en arrire-plan)
  46. 46. 2AGE Ecole Nationale dIngnieurs de Tunis 46 Tube de commununication
  47. 47. 2AGE Ecole Nationale dIngnieurs de Tunis 47 Scripts prod2 et cons2
  48. 48. 2AGE Ecole Nationale dIngnieurs de Tunis 48 Quelques commandes utiles : grep
  49. 49. 2AGE Ecole Nationale dIngnieurs de Tunis 49 Quelques commandes utiles : tr
  50. 50. 2AGE Ecole Nationale dIngnieurs de Tunis 50 Quelques commandes utiles : sort
  51. 51. 2AGE Ecole Nationale dIngnieurs de Tunis 51 Mcanismes de conguration de compte
  52. 52. 2AGE Ecole Nationale dIngnieurs de Tunis 52 Quelques variables denvironnement
  53. 53. 2AGE Ecole Nationale dIngnieurs de Tunis 53 Modications des prompts
  54. 54. 2AGE Ecole Nationale dIngnieurs de Tunis 54 Les alias
  55. 55. 2AGE Ecole Nationale dIngnieurs de Tunis 55 Modication des alias
  56. 56. 2AGE Ecole Nationale dIngnieurs de Tunis 56 Conguration glob