1 Problemi di sincronizzazione Problema dei cinque filosofi

Transcript

1 Problemi di sincronizzazione Problema dei cinque filosofi
7bis. Esercitazione su sincronizzazione di processi
marco lapegna
1
7bis. Esercitazione su sincronizzazione di processi
marco lapegna
2
+
,
!
"
#
+
% - (. //
0
'
'
+
$
1
$
$
)
)
% (*
%) &'* 2 - (*
3
% &'( )
*
!
3
)
)
% (*.
%) &'* 2 - (*.
3
%()
*
3
4$
7bis. Esercitazione su sincronizzazione di processi
3
marco lapegna
7bis. Esercitazione su sincronizzazione di processi
)'*.
4
marco lapegna
1
!
'+ 5 6 5 7" 8
9+
1
)
$
)
$
$
*1
) *.
) %) &'* 2 - ( : ; * 1
) ) &'* 2 - *.
<
4
1
) *.
4
#
)5 6 5 7" 8 *
)
$
3
3
%- (
A
3
)'*.
4$
marco lapegna
5
C,
*1
)=
% ( &&.
)=
)=
> *.
% ( *.
> *.
4
3
9+ !
% (*
>*.
) *.
) ) &'* 2 - *.
<
.
#
7bis. Esercitazione su sincronizzazione di processi
> *.
4
4
"
*1
)=
)=
% ( ??.
)=
"D
7bis. Esercitazione su sincronizzazione di processi
5
@
B
%- (
marco lapegna
6
E
#
#
)!
C,
5
$
"D*
!
E+
)
*
+
"
7bis. Esercitazione su sincronizzazione di processi
7
marco lapegna
7bis. Esercitazione su sincronizzazione di processi
8
marco lapegna
2
!
F+ D 600
6D 6
!
H
1
3
3
$
$
$
)=
)
)
> *.
A
% (*
%) &'* 2 - (*
B
3
3
% (*.
%) &'* 2 - (*.
)
)
)=
'
#
GG
> *.
3
3
4$
)'*.
7bis. Esercitazione su sincronizzazione di processi
!
F)
)
marco lapegna
9
7bis. Esercitazione su sincronizzazione di processi
*+ " 8
*1
)
% (<<I J D K C L = =
%76 0 (G<6
%(< 6
D K.
//
) = % ( *.
//
D K ==
%C K I (G<6
+
D K *1
% (<;
4
$
<;
% (<; <;
H
#
E )
*1
)=
> *.
% (<I J D K C L .
) *.
)=
> *.
) = % ( *.
7
)
//
*
//
4
J
M
H
&'
4
E M
$
marco lapegna
10
$
E M
E
M
E )
*1
$ )=
> *.
% (< I D 8 D K.
)76 0 *.
)C K I *.
)=
> *.
//
//
//
#
E
&'
&'
4
7bis. Esercitazione su sincronizzazione di processi
11
marco lapegna
7bis. Esercitazione su sincronizzazione di processi
12
marco lapegna
3
9
'
O
#
+
P
*
)
P
9
J
)
*
N
O
#
!
+
P
)
*
P
!
#
7bis. Esercitazione su sincronizzazione di processi
marco lapegna
13
7bis. Esercitazione su sincronizzazione di processi
marco lapegna
14
/
,
/
+
$
//
)
)
)
3
J
Processo scrittore
3
)
$
Processo lettore
> *.
&&.
<< '* $ )$
> *.
*.
> *.
O O.
)
!
7bis. Esercitazione su sincronizzazione di processi
15
marco lapegna
7bis. Esercitazione su sincronizzazione di processi
<< ; *
)
16
)$
*.
> *.
marco lapegna
4
wait
wait
signal
signal
wait
signal
signal
wait
signal
7bis. Esercitazione su sincronizzazione di processi
17
marco lapegna
7bis. Esercitazione su sincronizzazione di processi
18
marco lapegna
5