SFI36104 TD 65f95ca7b6701

Vous aimerez peut-être aussi

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 2

Université Mohammed Premier Année universitaire 2023-2024

Faculté des Sciences Filière SMI – S6


Département d’Informatique Programmation Système

TD/TP : Série Numéro 3


Exercice 1 :
On va reprendre le programme de l’exercice 4 de la série 2 et le modifier. Cette fois on va créer
un tableau global de 10 caractères, les deux threads T1 et T2 coopérent pour remplir ce tableau.
Écrire un programme dans lequel (il faut utiliser les Mutex et les conditions):
- le thread principal crée deux threads fils « thr1 » et « thr2 »,
- le thread « thr1 » écrit les caractères ‘a’ dans le tableau,
- le thread « thr2 » écrit les caractères ‘b’ dans le tableau,
- quand les deux threads ne peuvent plus écrire (le tableau est rempli), le thread principal affiche
les éléments du tableau.
N.B : Le résultat de l’affichage du tableau doit être de cette forme ‘a b a b a b a b a b’
1. Modifier le programme en éliminant les conditions. Qu’est ce que vous remarquez ?
2. Modifier le programme de telle façon à ce que l’accès au tableau par les threads ne soit
pas exclusif.

Exercice 2 :
1. Ecrire un programme dans lequel le thread principal crée un thread fils « t1 ». Le
thread principal modifie la variable « x » (variable globale) en utilisant les instructions
suivantes:
while (1){
x= x+1;
}
Le thread fils « t1 » modifie la variable « x » en utilisant les instructions suivantes:
while (1){
x=2x+1;
}
2. Modifier ce programme en ajoutant la synchronisation entre les threads :
a. supposant que le premier thread qui accède à la variable « x » est imprévisible
(soit le thread principal soit le thread fils « t1 »).
b. Modifier le programme précédent en supposant que c’est le thread principal
qui accède le premier à la variable « x ».
c. c. Modifier le programme précédent en supposant que c’est le thread fils « th1
» qui accède le premier à la variable « x ».
Université Mohammed Premier Année universitaire 2023-2024
Faculté des Sciences Filière SMI – S6
Département d’Informatique Programmation Système

Exercice 3 :
Ecrire un programme dans lequel le processus père envoie un signal SIGUSR1 au processus
fils, ce dernier le bloque pendant 30 secondes puis le rétabllit.
Exercice 4 :
Ecrire un programme qui masque les signaux «SIGINT » et « SIGQUIT » pendant 20
secondes et ensuite les rétablit.

Vous aimerez peut-être aussi