parent
0df808e6fa
commit
29e9f594a8
@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "[`date +%M:%S`](client n°$2) Je demande la ressource."
|
||||
semP $1
|
||||
echo "[`date +%M:%S`](client n°$2) J'utilise la ressource."
|
||||
sleep 2
|
||||
echo "[`date +%M:%S`](client n°$2) Je libère la ressource."
|
||||
semV $1
|
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
mutex=$(semC)
|
||||
echo "Création du sémaphore d'exclusion mutuelle (id=$mutex)"
|
||||
for i in 1 2 3; do
|
||||
./mutex-client.sh $mutex $i &
|
||||
done
|
||||
wait
|
||||
semD $mutex
|
||||
echo "Suppression du sémaphore d'exclusion mutuelle (id=$mutex)"
|
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
temps=$(($RANDOM%3+3))
|
||||
|
||||
sleep $temps
|
||||
echo "[`date +%M:%S`](client n°$3) semV $2"
|
||||
semV $2
|
||||
echo "[`date +%M:%S`](client n°$3) semP $1"
|
||||
semP $1
|
||||
echo "[`date +%M:%S`](client n°$3) poursuite"
|
@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
attendreP2=$(semC 0)
|
||||
attendreP1=$(semC 0)
|
||||
for i in 1; do
|
||||
./rdv-client.sh $attendreP1 $attendreP2 1 &
|
||||
./rdv-client.sh $attendreP2 $attendreP1 2 &
|
||||
done
|
||||
wait
|
||||
semD $attendreP1
|
||||
echo "Suppression du sémaphore de rdv (id=$attendreP1)"
|
||||
semD $attendreP2
|
||||
echo "Suppression du sémaphore de rdv (id=$attendreP2)"
|
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
temps=$(($RANDOM%3+3))
|
||||
|
||||
sleep $temps
|
||||
echo "[`date +%M:%S`](client n°$2) semP $1"
|
||||
semP $1
|
||||
echo "[`date +%M:%S`](client n°$2) semZ $1"
|
||||
semZ $1
|
||||
echo "[`date +%M:%S`](client n°$2) poursuite"
|
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
n=10
|
||||
rdv=$(semC $n)
|
||||
for i in $n; do
|
||||
./rdv-client.sh $rdv $i &
|
||||
done
|
||||
wait
|
||||
semD $rdv
|
||||
echo "Suppression du sémaphore de rdv"
|
Loading…
Reference in new issue