SlideShare une entreprise Scribd logo
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
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.
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
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 4
Partager le processeur
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 5
Pour partager le processeur
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 6
Exemple d’exécution multi-tâche
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 7
Ordonnanceur (scheduler)
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.
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.
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.
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
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 12
Processus en arrière plan
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 13
Exécution séquentielle
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 14
Exécution en arrière plan (1)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 15
Exécution en arrière plan (2)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 16
Identification des processus (1)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 17
Identification des processus (2)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 18
Processus en arrière plan
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 19
Commandes « bg » et « fg »
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 20
Processus en arrière plan  Saisie de clavier
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 21
Processus en arrière plan  Affichage écran
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
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é
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.
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
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 26
Valeur de retour d’un processus (2)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 27
Valeur de retour d’un processus (3)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 28
Gestion des entrées/sorties
Processus  Périphériques de base
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 29
Gestion des entrées/sorties
Processus  Périphériques de base
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 30
Héritage de contexte entre processus
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 31
Héritage de contexte entre processus
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 32
Héritage de contexte entre processus
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 33
Flux  Création de processus
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 34
Fichiers « périphériques » d’un processus
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 35
Redirections, Exemple
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 36
Modes de redirections de sortie
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 37
Instruction « case » en shell
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 38
Script cree_ou_ajoute
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 39
Exécution (1)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 40
Exécution (2)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 41
Communications inter-processus
Redirections  Communications
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 42
Relation écrivain-lecteur
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 43
Scripts « prod » et « cons »
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 44
Exécution « prod » et « cons »
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 45
Exécution « prod » et « cons » 
(en arrière-plan)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 46
« Tube » de commununication
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 47
Scripts « prod2 » et « cons2 »
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 48
Quelques commandes utiles : grep
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 49
Quelques commandes utiles : tr
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 50
Quelques commandes utiles : sort
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 51
Mécanismes de configuration de compte
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 52
Quelques variables d’environnement
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 53
Modifications des prompts
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 54
Les alias
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 55
Modification des alias
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 56
Configuration globale 
(tous les utilisateurs)
2AGE

 
 
 
 
 
 Ecole Nationale d’Ingénieurs de Tunis 
 57
Fichier « .bash_profile »

Contenu connexe

En vedette

La antorcha junio 2010
La antorcha junio 2010La antorcha junio 2010
La antorcha junio 2010
Massiel Nohemí Baltodano Bonilla
 
Fôret saisonnière
Fôret saisonnièreFôret saisonnière
Fôret saisonnière
redhunter179
 
Datos (locales) abiertos como herramienta para las entidades locales
Datos (locales) abiertos como herramienta para  las entidades localesDatos (locales) abiertos como herramienta para  las entidades locales
Datos (locales) abiertos como herramienta para las entidades locales
Jose Luis Marín de la Iglesia
 
Dossier corporativo bexel ingeniería s.l.
Dossier corporativo bexel ingeniería s.l.Dossier corporativo bexel ingeniería s.l.
Dossier corporativo bexel ingeniería s.l.
Seguros Bilbao
 
L'amour. PUCESI, IBARRA, ECUADOR
L'amour. PUCESI, IBARRA, ECUADORL'amour. PUCESI, IBARRA, ECUADOR
L'amour. PUCESI, IBARRA, ECUADORshaulrodriguez
 
Projet amendé pour le site de l'ancien couvent sainte marie-des-anges
Projet amendé pour le site de l'ancien couvent sainte marie-des-angesProjet amendé pour le site de l'ancien couvent sainte marie-des-anges
Projet amendé pour le site de l'ancien couvent sainte marie-des-anges
Yves Doyon
 
Prova 3ESO B
Prova 3ESO BProva 3ESO B
Prova 3ESO Bxescori
 
Cuadrantes policia
Cuadrantes policiaCuadrantes policia
Cuadrantes policiaedwinchaves
 
Souperman vs les golubs
Souperman vs les golubsSouperman vs les golubs
Souperman vs les golubs
Philippe Dauzat
 
The Read-Write Secure Linked Data Web
The Read-Write Secure Linked Data WebThe Read-Write Secure Linked Data Web
The Read-Write Secure Linked Data Web
SemWebPro
 
Touch, gestures y acelerómetro con JavaScript en ipad
Touch, gestures y acelerómetro con JavaScript en ipadTouch, gestures y acelerómetro con JavaScript en ipad
Touch, gestures y acelerómetro con JavaScript en ipad
Web Studios
 
Datos utiles
Datos utilesDatos utiles
Datos utiles
Nuria
 
Calcul des colonnes en acier de classe 4 soumises au feu - Rapport PFE
Calcul des colonnes en acier de classe 4 soumises au feu - Rapport PFECalcul des colonnes en acier de classe 4 soumises au feu - Rapport PFE
Calcul des colonnes en acier de classe 4 soumises au feu - Rapport PFEAhatri
 
les mathématique financière.
les mathématique financière.les mathématique financière.
les mathématique financière.
koffi kouame Apollinaire
 
Etude socioéconomique comparative des systèmes de production biologique, conv...
Etude socioéconomique comparative des systèmes de production biologique, conv...Etude socioéconomique comparative des systèmes de production biologique, conv...
Etude socioéconomique comparative des systèmes de production biologique, conv...
PABE BENIN
 
Yummy magazine N°12
Yummy magazine N°12Yummy magazine N°12
Yummy magazine N°12
YummyMagazine
 
Télémarketing pour PME - Stratégie et Bénéfices - Access Call
Télémarketing pour PME - Stratégie et Bénéfices - Access Call Télémarketing pour PME - Stratégie et Bénéfices - Access Call
Télémarketing pour PME - Stratégie et Bénéfices - Access Call
Access Call
 
Préau d'école
Préau d'école Préau d'école
Préau d'école
Texabri
 
2663-AprA-s-les-mines-2016.compressed
2663-AprA-s-les-mines-2016.compressed2663-AprA-s-les-mines-2016.compressed
2663-AprA-s-les-mines-2016.compressedLilian Gaichies
 

En vedette (20)

La antorcha junio 2010
La antorcha junio 2010La antorcha junio 2010
La antorcha junio 2010
 
Fôret saisonnière
Fôret saisonnièreFôret saisonnière
Fôret saisonnière
 
Datos (locales) abiertos como herramienta para las entidades locales
Datos (locales) abiertos como herramienta para  las entidades localesDatos (locales) abiertos como herramienta para  las entidades locales
Datos (locales) abiertos como herramienta para las entidades locales
 
Dossier corporativo bexel ingeniería s.l.
Dossier corporativo bexel ingeniería s.l.Dossier corporativo bexel ingeniería s.l.
Dossier corporativo bexel ingeniería s.l.
 
Conception ergonomique
Conception ergonomiqueConception ergonomique
Conception ergonomique
 
L'amour. PUCESI, IBARRA, ECUADOR
L'amour. PUCESI, IBARRA, ECUADORL'amour. PUCESI, IBARRA, ECUADOR
L'amour. PUCESI, IBARRA, ECUADOR
 
Projet amendé pour le site de l'ancien couvent sainte marie-des-anges
Projet amendé pour le site de l'ancien couvent sainte marie-des-angesProjet amendé pour le site de l'ancien couvent sainte marie-des-anges
Projet amendé pour le site de l'ancien couvent sainte marie-des-anges
 
Prova 3ESO B
Prova 3ESO BProva 3ESO B
Prova 3ESO B
 
Cuadrantes policia
Cuadrantes policiaCuadrantes policia
Cuadrantes policia
 
Souperman vs les golubs
Souperman vs les golubsSouperman vs les golubs
Souperman vs les golubs
 
The Read-Write Secure Linked Data Web
The Read-Write Secure Linked Data WebThe Read-Write Secure Linked Data Web
The Read-Write Secure Linked Data Web
 
Touch, gestures y acelerómetro con JavaScript en ipad
Touch, gestures y acelerómetro con JavaScript en ipadTouch, gestures y acelerómetro con JavaScript en ipad
Touch, gestures y acelerómetro con JavaScript en ipad
 
Datos utiles
Datos utilesDatos utiles
Datos utiles
 
Calcul des colonnes en acier de classe 4 soumises au feu - Rapport PFE
Calcul des colonnes en acier de classe 4 soumises au feu - Rapport PFECalcul des colonnes en acier de classe 4 soumises au feu - Rapport PFE
Calcul des colonnes en acier de classe 4 soumises au feu - Rapport PFE
 
les mathématique financière.
les mathématique financière.les mathématique financière.
les mathématique financière.
 
Etude socioéconomique comparative des systèmes de production biologique, conv...
Etude socioéconomique comparative des systèmes de production biologique, conv...Etude socioéconomique comparative des systèmes de production biologique, conv...
Etude socioéconomique comparative des systèmes de production biologique, conv...
 
Yummy magazine N°12
Yummy magazine N°12Yummy magazine N°12
Yummy magazine N°12
 
Télémarketing pour PME - Stratégie et Bénéfices - Access Call
Télémarketing pour PME - Stratégie et Bénéfices - Access Call Télémarketing pour PME - Stratégie et Bénéfices - Access Call
Télémarketing pour PME - Stratégie et Bénéfices - Access Call
 
Préau d'école
Préau d'école Préau d'école
Préau d'école
 
2663-AprA-s-les-mines-2016.compressed
2663-AprA-s-les-mines-2016.compressed2663-AprA-s-les-mines-2016.compressed
2663-AprA-s-les-mines-2016.compressed
 

Similaire à Cours se chap3

coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf
coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdfcoursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf
coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf
RihabBENLAMINE
 
Gestion des threads
Gestion des threadsGestion des threads
Gestion des threads
Sana Aroussi
 
Cour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarAnouar Sghaier
 
SdE 4: Processus
SdE 4: ProcessusSdE 4: Processus
SdE 4: Processus
Alexandru Radovici
 
Systemes
SystemesSystemes
Systemes
RichardTerrat1
 
Systèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introductionSystèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introduction
Lilia Sfaxi
 
0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.ppt0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.ppt
DenisKouakou1
 
Tp n 5 linux
Tp n 5 linuxTp n 5 linux
Tp n 5 linux
Amir Souissi
 
Chapitre 4 Linux
Chapitre 4 LinuxChapitre 4 Linux
cours-demarrage cours-demarrage.pdfcours-demarrage.pdf.pdf
cours-demarrage cours-demarrage.pdfcours-demarrage.pdf.pdfcours-demarrage cours-demarrage.pdfcours-demarrage.pdf.pdf
cours-demarrage cours-demarrage.pdfcours-demarrage.pdf.pdf
AbdellahELMAMOUN
 
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
Trésor-Dux LEBANDA
 
CHAPITRE 1 systeme d'exploitation environnement
CHAPITRE 1 systeme d'exploitation environnementCHAPITRE 1 systeme d'exploitation environnement
CHAPITRE 1 systeme d'exploitation environnement
YounesOuladSayad1
 
Chap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec pythonChap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec python
Mohammed TAMALI
 
Algorithmique & objets programmables
Algorithmique & objets programmablesAlgorithmique & objets programmables
Algorithmique & objets programmables
Inspection de Luxeuil-les-Bains
 
Cours SE linux
Cours SE linuxCours SE linux
Cours SE linux
Idriss22
 
Comment analyser une machine linux compromise
Comment analyser une machine linux compromiseComment analyser une machine linux compromise
Comment analyser une machine linux compromise
Tarek MOHAMED
 
SdE2 4 - Processus
SdE2 4 - ProcessusSdE2 4 - Processus
SdE2 4 - Processus
Alexandru Radovici
 

Similaire à Cours se chap3 (20)

Cours se chap3_2
Cours se chap3_2Cours se chap3_2
Cours se chap3_2
 
coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf
coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdfcoursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf
coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf
 
Cours se chap1
Cours se chap1Cours se chap1
Cours se chap1
 
Gestion des threads
Gestion des threadsGestion des threads
Gestion des threads
 
Cour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouar
 
Cours se chap1_2
Cours se chap1_2Cours se chap1_2
Cours se chap1_2
 
SdE 4: Processus
SdE 4: ProcessusSdE 4: Processus
SdE 4: Processus
 
Systemes
SystemesSystemes
Systemes
 
Systèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introductionSystèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introduction
 
0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.ppt0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.ppt
 
Tp n 5 linux
Tp n 5 linuxTp n 5 linux
Tp n 5 linux
 
Chapitre 4 Linux
Chapitre 4 LinuxChapitre 4 Linux
Chapitre 4 Linux
 
cours-demarrage cours-demarrage.pdfcours-demarrage.pdf.pdf
cours-demarrage cours-demarrage.pdfcours-demarrage.pdf.pdfcours-demarrage cours-demarrage.pdfcours-demarrage.pdf.pdf
cours-demarrage cours-demarrage.pdfcours-demarrage.pdf.pdf
 
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
Mise en place d’un laboratoire de sécurité « Scénarios d’Attaques et Détectio...
 
CHAPITRE 1 systeme d'exploitation environnement
CHAPITRE 1 systeme d'exploitation environnementCHAPITRE 1 systeme d'exploitation environnement
CHAPITRE 1 systeme d'exploitation environnement
 
Chap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec pythonChap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec python
 
Algorithmique & objets programmables
Algorithmique & objets programmablesAlgorithmique & objets programmables
Algorithmique & objets programmables
 
Cours SE linux
Cours SE linuxCours SE linux
Cours SE linux
 
Comment analyser une machine linux compromise
Comment analyser une machine linux compromiseComment analyser une machine linux compromise
Comment analyser une machine linux compromise
 
SdE2 4 - Processus
SdE2 4 - ProcessusSdE2 4 - Processus
SdE2 4 - Processus
 

Cours se chap3

  • 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. 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. 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. 2AGE Ecole Nationale d’Ingénieurs de Tunis 4 Partager le processeur
  • 5. 2AGE Ecole Nationale d’Ingénieurs de Tunis 5 Pour partager le processeur
  • 6. 2AGE Ecole Nationale d’Ingénieurs de Tunis 6 Exemple d’exécution multi-tâche
  • 7. 2AGE Ecole Nationale d’Ingénieurs de Tunis 7 Ordonnanceur (scheduler)
  • 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. 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. 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. 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. 2AGE Ecole Nationale d’Ingénieurs de Tunis 12 Processus en arrière plan
  • 13. 2AGE Ecole Nationale d’Ingénieurs de Tunis 13 Exécution séquentielle
  • 14. 2AGE Ecole Nationale d’Ingénieurs de Tunis 14 Exécution en arrière plan (1)
  • 15. 2AGE Ecole Nationale d’Ingénieurs de Tunis 15 Exécution en arrière plan (2)
  • 16. 2AGE Ecole Nationale d’Ingénieurs de Tunis 16 Identification des processus (1)
  • 17. 2AGE Ecole Nationale d’Ingénieurs de Tunis 17 Identification des processus (2)
  • 18. 2AGE Ecole Nationale d’Ingénieurs de Tunis 18 Processus en arrière plan
  • 19. 2AGE Ecole Nationale d’Ingénieurs de Tunis 19 Commandes « bg » et « fg »
  • 20. 2AGE Ecole Nationale d’Ingénieurs de Tunis 20 Processus en arrière plan Saisie de clavier
  • 21. 2AGE Ecole Nationale d’Ingénieurs de Tunis 21 Processus en arrière plan Affichage écran
  • 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. 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. 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. 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. 2AGE Ecole Nationale d’Ingénieurs de Tunis 26 Valeur de retour d’un processus (2)
  • 27. 2AGE Ecole Nationale d’Ingénieurs de Tunis 27 Valeur de retour d’un processus (3)
  • 28. 2AGE Ecole Nationale d’Ingénieurs de Tunis 28 Gestion des entrées/sorties Processus Périphériques de base
  • 29. 2AGE Ecole Nationale d’Ingénieurs de Tunis 29 Gestion des entrées/sorties Processus Périphériques de base
  • 30. 2AGE Ecole Nationale d’Ingénieurs de Tunis 30 Héritage de contexte entre processus
  • 31. 2AGE Ecole Nationale d’Ingénieurs de Tunis 31 Héritage de contexte entre processus
  • 32. 2AGE Ecole Nationale d’Ingénieurs de Tunis 32 Héritage de contexte entre processus
  • 33. 2AGE Ecole Nationale d’Ingénieurs de Tunis 33 Flux Création de processus
  • 34. 2AGE Ecole Nationale d’Ingénieurs de Tunis 34 Fichiers « périphériques » d’un processus
  • 35. 2AGE Ecole Nationale d’Ingénieurs de Tunis 35 Redirections, Exemple
  • 36. 2AGE Ecole Nationale d’Ingénieurs de Tunis 36 Modes de redirections de sortie
  • 37. 2AGE Ecole Nationale d’Ingénieurs de Tunis 37 Instruction « case » en shell
  • 38. 2AGE Ecole Nationale d’Ingénieurs de Tunis 38 Script cree_ou_ajoute
  • 39. 2AGE Ecole Nationale d’Ingénieurs de Tunis 39 Exécution (1)
  • 40. 2AGE Ecole Nationale d’Ingénieurs de Tunis 40 Exécution (2)
  • 41. 2AGE Ecole Nationale d’Ingénieurs de Tunis 41 Communications inter-processus Redirections Communications
  • 42. 2AGE Ecole Nationale d’Ingénieurs de Tunis 42 Relation écrivain-lecteur
  • 43. 2AGE Ecole Nationale d’Ingénieurs de Tunis 43 Scripts « prod » et « cons »
  • 44. 2AGE Ecole Nationale d’Ingénieurs de Tunis 44 Exécution « prod » et « cons »
  • 45. 2AGE Ecole Nationale d’Ingénieurs de Tunis 45 Exécution « prod » et « cons » (en arrière-plan)
  • 46. 2AGE Ecole Nationale d’Ingénieurs de Tunis 46 « Tube » de commununication
  • 47. 2AGE Ecole Nationale d’Ingénieurs de Tunis 47 Scripts « prod2 » et « cons2 »
  • 48. 2AGE Ecole Nationale d’Ingénieurs de Tunis 48 Quelques commandes utiles : grep
  • 49. 2AGE Ecole Nationale d’Ingénieurs de Tunis 49 Quelques commandes utiles : tr
  • 50. 2AGE Ecole Nationale d’Ingénieurs de Tunis 50 Quelques commandes utiles : sort
  • 51. 2AGE Ecole Nationale d’Ingénieurs de Tunis 51 Mécanismes de configuration de compte
  • 52. 2AGE Ecole Nationale d’Ingénieurs de Tunis 52 Quelques variables d’environnement
  • 53. 2AGE Ecole Nationale d’Ingénieurs de Tunis 53 Modifications des prompts
  • 54. 2AGE Ecole Nationale d’Ingénieurs de Tunis 54 Les alias
  • 55. 2AGE Ecole Nationale d’Ingénieurs de Tunis 55 Modification des alias
  • 56. 2AGE Ecole Nationale d’Ingénieurs de Tunis 56 Configuration globale (tous les utilisateurs)
  • 57. 2AGE Ecole Nationale d’Ingénieurs de Tunis 57 Fichier « .bash_profile »