concurrencia
-
Upload
ciberjovial -
Category
Documents
-
view
12 -
download
0
Transcript of concurrencia
-
!"
!
#$
!Sistemas de Tiempo Real
%%&'()*(
+%,-.%/0 1 #02,,-1+324.
+%,5.%01670'1 +32.
+-5.0811 +32.+-5.011+2.
-
(1119
:9099
;9
-
&
9
-
!:9
B7
;!
7!'%11!(!
!?
!
-
;>"
0
7"
-
C
C
:
:
-
N: Integer := 0;
Task Body P1 is Task Body P2 isbegin beginN := N+1; N := N+1end P1; End P2;
Proceso 1;Load (x);Add (x,1);Store (x);
Instrucciones deIncremento como
Inc.
Proceso 2;Load (x);Add (x,1);Store (x);
-
(1 !1 ('2 ('4
-
2 &@A - -
4 &@A - - -
2 @02A - 2 -
4 @02A - 2 2
2 !@A 2 2 2
4 !@A 2 2 2
-
;;:
1
&@!GAHI2040J0K ;;!G1
@!GAHI2040J0K;;!G1
;! !;
;
&@!A@!;AHL @!A&@!;AHL @!A@!;AHL
-
;7;:"
#
#) ("
7
:
;
"
-
&
@?A;91
71
;7 11
-
!
-
7
9
7
0
-
7
:"; 3
-
3?" !
0
-
!
Task body P isbeginloopResto_de_cdigo;Pre-protocolo;Seccin Crtica;Post-Protocolo;
end P;
Cdigo
Pre-protocolo
Post-protocolo
S. Crtica
-
%
B&
:
-
%=C%" ((
%
-
! D7
-
!
;
-
/Cobegin
P1; P2; P3:Coend;
/=forall i:= 1 to 100 do
P(i);
@&Agrep termino|sort|lpr
$
D"type vector is array(1..100) of int;var a, b,c: vector;a := b*c+2*a;
task A is begin CodA end;task B is begin CodB end;task C is begin CodC end;
;
class Hilo extends Thread{imp}Hilo prod = new Hilo();Hilo consu = new Hilo ();prod.start();consu.start();
-
?$1 C
3:$@pthread 0?
Thread
:"Runnable 87A
9 %;!
7@A
3
-
9 =
:;
>:
>0:"
9
;
>:
91"11C;879:3
!
-
'
#include #include
pid_t fork(void)
&7@
-
'
#include #include #include
int i,n;pid_t childpid;
for (i = 1;i < n; i++)if ((childpid=fork())==-1)break;
fprint(stderr,Soy el proceso %ld con padre %ld\n,(long)getpid(), (long)getppid());
-
' (
C
877?
7
>:?
Thread Clase Extendida
extends
-
!
@7A
:
-
;9
-
! !:
!9:
: (:
#
-
;
;" = :?
> )
>; ;
-
; 7O7
9
7 O
(O(
7:@A
(
-
!!
NUCLEO NUCLEO
CLIENTE SERVIDOR
SOLICITUD
RESPUESTA
RED
-
!*+*!,-.
Entorno Global VAR vec: Vector; init vect [1],vec[2],...,vec[MAX]
.
.
VectorEscalado (vec,MAX,10).
(suspendido).
continua
copy v,nElements,k from CALL message
FOR i:=1 TO Nelements DOv[i]:=v[i]*k;
copy v to reply message
CLIENTE SERVIDOR
Respuesta
Peticin
-
!/
-
" @(/$A
!" ;:3 ;
;G/!?
-
!
" 000 ;:1
3:
1
3:
0
B"31
&(
0*
-
;1
!=0
71
=
-
!9
3:
" % :
!