Upload
dokhanh
View
221
Download
2
Embed Size (px)
Citation preview
PDP 4PS : Periodic Delayed
Protocol for Partitioned
Systems
Authors: Antoine Jaouën
Etienne Borde
Laurent Pautet
Thomas Robert
direction ou services 4/17/2014 Page 2 PDP 4PS : A deterministic communication protocol
Introduction & Issues Context
N1 Inter-Partition Communication mechanism
• Usage : Data Fusion, Triple Modular Redundancy
• Issues : Natively not supported by ARINC
Non-Propagation Non disturbance of non-faulty partitions by faulty partitions (i.e.
port overflow, message loss)
Message Identification Ability to identify the origin of each message
Safety Critical systems • Under standard specification
(ARINC, CENELEC-EN 50128)
• Partitioned systems (space & time
segregation of applications)
• Certification requirements
direction ou services 4/17/2014 Page 3 PDP 4PS : A deterministic communication protocol
Introduction & Issues The Periodic Delayed Protocol (PDP)
Objectives : Deterministic N1 mechanism • Message consumption order known
• Execution time & memory overheads minimized (e.g. No locks)
• Tight estimation of sufficient memory space
Communication Model • Periodic task set
• One message produced per job
• Message available at the sender’s job deadline
• PDP available next receiver’s job
• Messages ordered with jobs deadlines
Communication Mechanism • Wait-free shared circular queue (aka. PDP buffer)
• One pre-defined slot per message
Message Identification
• One pre-defined message per slot
Non-Propagation
direction ou services
B A C R B A R B C A B R A B C A B A
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
4/17/2014 Page 4
Introduction & Issues PDP - Example
PDP 4PS : A deterministic communication protocol
a1 b1 b2 c1 a2 b3 a3 b4 c2 a4 b5 a5 b6 c3
PDP Available
New job of R
PDP buffer
Nothing to read Nothing to read
Task A B C R
P
D
C
6
5
2
5
5
1
10
10
1
15
15
2
A A
B
B
R
A B
C
A B A B
C
B
C
R
Key:
A
Deadline of A
R can consume
direction ou services
B
31 33 35 37 39 41 43 45 47 49 51 53 55 57 59
4/17/2014 Page 5
Introduction & Issues PDP - Example
PDP 4PS : A deterministic communication protocol
a1 b1 b2 c1 a2 b3 a3 b4 c2 a4 b5 a5 b6 c3
PDP Outdated PDP Available
New job of R
PDP buffer
Task A B C R
P
D
C
6
5
2
5
5
1
10
10
1
15
15
2
Key:
A
Deadline of A
direction ou services 4/17/2014 Page 6 PDP 4PS : A deterministic communication protocol
Introduction & Issues PDP adaptation to partitioned systems
I) Implementation issue
Space & time segregation • PDP : for shared memory systems
• PDP : direct transfer to the receiver queue
II) Design issue
• How do we deal with disjoint memory ?
• How do we allow the PDP semantic
• How do we maintain the Non-Propagation
& Message Identification properties
Activated Activated
Activated
P1 P2 P3
Context switch Context switch
Time
Activated
Inter-Partition Communication example
direction ou services 4/17/2014 Page 7
PDP 4PS : For Partitioned Systems General Methodology
PDP 4PS : A deterministic communication protocol
Message Conditioning Before Transfer • Store msg in sender memory space
• Prevent from msg overproduction
• Non-Propagation
• Provide sender IDs to msg
• Message Identification
Message Actual Transfer • Done before next receiver activation
Message Conditioning After Transfer • Store msg in receiver memory space
• Insert msg in the RPB
• Non-Propagation
• Message Identification
General architecture
direction ou services 4/17/2014 Page 8
PDP 4PS 4PS – For Partitioned Systems
Features:
• Role separation (DO-297)
• XML configuration
Two architectures:
1. For platform suppliers
• Native implementation
• Wait-free access protocol
2. For application suppliers
• Reduce maintenance effort
PDP 4PS : A deterministic communication protocol
direction ou services 4/17/2014 Page 9
PDP 4PS : For Platform Supplier Methodology
PDP 4PS : A deterministic communication protocol
Message Conditioning Before Transfer • Store msg in EPB under PDP policy
• Check slot state before insertion
• No overproduction
• Non-Propagation
Message Actual Transfer • By the Partitioning Kernel
• Execute at receiver partition activation
• Transfer only PDP available msg
• Statically determined
• Message Identification
Message Conditioning After Transfer • Insert the msg in the RPB by the
Partitioning Kernel
Transfer and insertion by Partitioning
Kernel
Emission by senders Reception by receiver
Platform supplier architecture
direction ou services
P1 P3 P1 P3 P1 Idle P1 Idle
B A C R B A B A C R B A B C A B A
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29
4/17/2014 Page 10
PDP 4PS : For Platform Supplier An example
PDP 4PS : A deterministic communication protocol
P2 P2 P2
a1 b1 b2 c1 a2 b3 RPB
EPB
P1 EPB
P2 a1 b1 b2 a2 b3 a3 b4 a4 b5 a5 b6 c3 c2 c1
Flush Nothing to flush
PDP Available PDP Available
R can consume
Partition Task
P1 (RMS) A, B
P2 C
P3 R
Task A B C R
P
D
C
6
5
2
5
5
1
10
10
1
15
15
2
direction ou services
P1 P3 P1 P3 P1 Idle P1 Idle
B A C R B A B A C R B A B C A B A
31 33 35 37 39 41 43 45 47 49 51 53 55 57 59
4/17/2014 Page 11
PDP 4PS : For Platform Supplier An example
PDP 4PS : A deterministic communication protocol
P2 P2 P2
a1 b1 b2 c1 a2 b3 a3 b4 c2 a4 b5 a5 b6 c3 RPB
EPB
P1 EPB
P2 a3 b4 a4 b5 a5 b6 a6 b7 c3 c2
Flush
PDP Available PDP Available
PDP Outdated R can consume
c4
Partition Task
P1 (RMS) A, B
P2 C
P3 R
Task A B C R
P
D
C
6
5
2
5
5
1
10
10
1
15
15
2 New job of R
direction ou services 4/17/2014 Page 12
PDP 4PS : For Application Supplier Methodology
PDP 4PS : A deterministic communication protocol
Message Conditioning Before Transfer • Store msg in Partitioning Kernel
sending port
• Maintain the number of sent msg by job
• No overproduction
• Non-Propagation
Message Actual Transfer • Partitioning Kernel original transfer
policy (e.g. FIFO)
• Done before next receiver activation
Message Conditioning After Transfer • Store msg in Partitioning Kernel
receiving ports
• Message Identification
• Insert the msg in the RPB by the
receiver
Transfer by Partitioning Kernel
Emission by senders Insertion and reception by receiver
Application Supplier architecture
direction ou services 4/17/2014 Page 13 PDP 4PS : A deterministic communication protocol
Conclusion
N1 Inter-Partition Communication mechanism
• Main properties
- Periodic task set
- Specific communication model
- Deterministic message delivery order
- Non-Propagation and Message Identification properties
• Two architectures
- For Platform supplier : wait-free
- For Application supplier
• Experimented on POK (Partitioned Open Kernel)
Further works
• Model transformation to produce kernel or application configuration
• Adaptation to direct memory accesses
direction ou services 4/17/2014 Page 14 PDP 4PS : A deterministic communication protocol
Thank you