Modeling and Analysis of Real -Time Systems with Mutex Components
APDCM’10
Guoqiang Li1, Xiaojuan Cai1,Shoji Yuen2
1BASICS, Shanghai Jiao Tong University 2Graduate School of Information Science, Nagoya University
19th, April. 2010
1 / 19 APDCM’10
Modeling and Analysis of Real -Time Systems with Mutex Components - - PowerPoint PPT Presentation
Modeling and Analysis of Real -Time Systems with Mutex Components APDCM10 Guoqiang Li 1 , Xiaojuan Cai 1 ,Shoji Yuen 2 1 BASICS, Shanghai Jiao Tong University 2 Graduate School of Information Science, Nagoya University 19th, April. 2010
1BASICS, Shanghai Jiao Tong University 2Graduate School of Information Science, Nagoya University
1 / 19 APDCM’10
2 / 19 APDCM’10
x ≤ 6 x ≤ 5
x ≥ 5, y ≤ 25, x := 0
x ≥ 6, y ≤ 30, x := 0 3 / 19 APDCM’10
dim bright press? x:=0 x<=10 press? x>10 press? press?
press!, x := 0 press!, x ≥ 10, x := 0 4 / 19 APDCM’10
5 / 19 APDCM’10
x1 < 2 x1 < 2 W TP
x ≥ 2, x1 := 0
W TP , x1 ≥ 2 ∧ y1 ≤ 25, x1 := 0 x2 < 3 x2 < 3 RDP
x2 ≥ 3, x2 := 0
RDP , x2 ≥ 3 ∧ y2 ≤ 30, x2 := 0
release! require? release! require?
= ⇒∈ δint
6 / 19 APDCM’10
x1 < 2 x1 < 2
I. II.
W TP
x1 ≥ 2, x1 := 0
W TP , x1 ≥ 2 ∧ y1 ≤ 25, x1 := 0 x2 < 3 x2 < 3 ERR RDP
x2 ≥ 3, x2 := 0
y
2
≥ 20 RDP , x2 ≥ 3 ∧ y2 ≤ 30, x2 := 0
releaseW ! requireW ? releaseR! requireR? requireW ? : δpush : δpop 7 / 19 APDCM’10
x ≤ 6
x := 0, y := 0 y > 25
x ≥ 5, y ≤ 25, x := 0
x := 0, y := 0 y > 30
x ≥ 6, y ≤ 30, x := 0 8 / 19 APDCM’10
x ≤ 6 xp ≤ 0∨ xp ≥ t
x := 0, y := 0, xp := 0 y > 25
x ≥ 5, y ≤ 25, x := 0, xp := 0
x := 0, y := 0 y > 30
x ≥ 6, y ≤ 30, x := 0 xp ≤ t
xp ≥ t
9 / 19 APDCM’10
1 pat?, x := 0 pat?, x < 2 2 triggerp!, x ≥ 2,x := 0 x > 25 3 pat?, x := 0 p a t ? , x < 2 4 triggerq!, 2 ≤ x ≤ 25,x := 0 5 pat?, x := 0 triggerq!, 2 ≤ x ≤ 30, x := 0 pat?, x < 2 x > 3 xrun ≤ 150 1 xrun ≤ 50 turn?, ⊤, ∅ apop⊤, ∅ bpop ⊤ , ∅ pat?, ⊤, ∅ turn?, ⊤, ∅ cpop, ⊤, ∅ : δpush : δpop
10 / 19 APDCM’10
1 pat?, x := 0 pat?, x < 2 2 triggerp!, x ≥ 2,x := 0 x > 25 3 pat?, x := 0 p a t ? , x < 2 4 triggerq!, 2 ≤ x ≤ 25,x := 0 5 pat?, x := 0 triggerq!, 2 ≤ x ≤ 30, x := 0 pat?, x < 2 x > 3 xrun ≤ 150 1 xrun ≤ 50 turn?, ⊤, ∅ apop⊤, ∅ bpop ⊤ , ∅ pat?, ⊤, ∅ turn?, ⊤, ∅ cpop, ⊤, ∅ : δpush : δpop
(S0, 0) 11 / 19 APDCM’10
1 pat?, x := 0 pat?, x < 2 2 triggerp!, x ≥ 2,x := 0 x > 25 3 pat?, x := 0 p a t ? , x < 2 4 triggerq!, 2 ≤ x ≤ 25,x := 0 5 pat?, x := 0 triggerq!, 2 ≤ x ≤ 30, x := 0 pat?, x < 2 x > 3 xrun ≤ 150 1 xrun ≤ 50 turn?, ⊤, ∅ apop⊤, ∅ bpop ⊤ , ∅ pat?, ⊤, ∅ turn?, ⊤, ∅ cpop, ⊤, ∅ : δpush : δpop
(S0, 0) 12 / 19 APDCM’10
1 pat?, x := 0 pat?, x < 2 2 triggerp!, x ≥ 2,x := 0 x > 25 3 pat?, x := 0 p a t ? , x < 2 4 triggerq!, 2 ≤ x ≤ 25,x := 0 5 pat?, x := 0 triggerq!, 2 ≤ x ≤ 30, x := 0 pat?, x < 2 x > 3 xrun ≤ 150 1 xrun ≤ 50 turn?, ⊤, ∅ apop⊤, ∅ bpop ⊤ , ∅ pat?, ⊤, ∅ turn?, ⊤, ∅ cpop, ⊤, ∅ : δpush : δpop
(S0, 0) 13 / 19 APDCM’10
1 pat?, x := 0 pat?, x < 2 2 triggerp!, x ≥ 2,x := 0 x > 25 3 pat?, x := 0 p a t ? , x < 2 4 triggerq!, 2 ≤ x ≤ 25,x := 0 5 pat?, x := 0 triggerq!, 2 ≤ x ≤ 30, x := 0 pat?, x < 2 x > 3 xrun ≤ 150 1 xrun ≤ 50 turn?, ⊤, ∅ apop⊤, ∅ bpop ⊤ , ∅ pat?, ⊤, ∅ turn?, ⊤, ∅ cpop, ⊤, ∅ : δpush : δpop
(S0, 0) 14 / 19 APDCM’10
1 pat?, x := 0 pat?, x < 2 2 triggerp!, x ≥ 2,x := 0 x > 25 3 pat?, x := 0 p a t ? , x < 2 4 triggerq!, 2 ≤ x ≤ 25,x := 0 5 pat?, x := 0 triggerq!, 2 ≤ x ≤ 30, x := 0 pat?, x < 2 x > 3 xrun ≤ 150 1 xrun ≤ 50 turn?, ⊤, ∅ apop⊤, ∅ bpop ⊤ , ∅ pat?, ⊤, ∅ turn?, ⊤, ∅ cpop, ⊤, ∅ : δpush : δpop
(S1, 3) (S0, 0) 15 / 19 APDCM’10
1 pat?, x := 0 pat?, x < 2 2 3′ triggerp!, x ≥ 2,x := 0 x > 25 3 pat?, x := 0 p a t ? , x < 2 4 triggerq!, 2 ≤ x ≤ 25,x := 0 5 pat?, x := 0 triggerq!, 2 ≤ x ≤ 30, x := 0 pat?, x < 2 x > 3 xrun ≤ 150 1 xrun ≤ 50 turn?, ⊤, ∅ apop⊤, ∅ bpop ⊤ , ∅ pat?, ⊤, ∅ turn?, ⊤, ∅ cpop, ⊤, ∅ : δpush : δpop
(S0, 0) 16 / 19 APDCM’10
17 / 19 APDCM’10
18 / 19 APDCM’10
19 / 19 APDCM’10