fiji priority rollback protocol
play

Fiji Priority Rollback Protocol Lukasz Ziarek Fiji Systems Inc. - PowerPoint PPT Presentation

Fiji Priority Rollback Protocol Lukasz Ziarek Fiji Systems Inc. Filip Pizlo, Ethan Blanton, and Jan Vitek Fiji Systems LLC Wednesday, August 18, 2010 Communication between mixed-criticality partitions Situational Awareness Flight System


  1. Fiji Priority Rollback Protocol Lukasz Ziarek Fiji Systems Inc. Filip Pizlo, Ethan Blanton, and Jan Vitek Fiji Systems LLC Wednesday, August 18, 2010

  2. Communication between mixed-criticality partitions Situational Awareness Flight System Fiji Systems LLC Wednesday, August 18, 2010

  3. Communication between mixed-criticality partitions Situational Awareness Flight System e r a w e l d d i M Fiji Systems LLC Wednesday, August 18, 2010

  4. Communication between mixed-criticality partitions Situational Awareness Flight System package data e r a w e l d d i M Fiji Systems LLC Wednesday, August 18, 2010

  5. Communication between mixed-criticality partitions Situational Awareness Flight System send data e r a w e l d d i M Fiji Systems LLC Wednesday, August 18, 2010

  6. Communication between mixed-criticality partitions Situational Awareness Flight System unpack data e r a w e l d d i M Fiji Systems LLC Wednesday, August 18, 2010

  7. Communication between mixed-criticality partitions airspace data structure Situational Awareness Flight System update shared state e r a w e l d d i M Fiji Systems LLC Wednesday, August 18, 2010

  8. Communication between mixed-criticality partitions airspace data structure Situational Awareness Flight System e r a w e l d d i M Fiji typically a communication protocol Systems LLC Wednesday, August 18, 2010

  9. Communication between mixed-criticality partitions Situational Awareness Flight System airspace data structure Fiji Systems LLC Wednesday, August 18, 2010

  10. Communication between mixed-criticality partitions can we allow direct access? Situational Awareness Flight System airspace data structure Fiji Systems LLC Wednesday, August 18, 2010

  11. Communication between mixed-criticality partitions mediate access via a lock Situational Awareness Flight System airspace data structure Fiji Systems LLC Wednesday, August 18, 2010

  12. Communication between mixed-criticality partitions Situational Awareness Flight System airspace data structure how do we guarantee responsiveness of Fiji higher criticality partitions? Systems LLC Wednesday, August 18, 2010

  13. Communication between mixed-criticality partitions Situational Awareness Flight System airspace data structure Fiji Systems LLC Wednesday, August 18, 2010

  14. Communication between mixed-criticality partitions Situational Awareness Flight System gate call airspace data structure PRP lock Fiji Systems LLC Wednesday, August 18, 2010

  15. Communication between mixed-criticality partitions Situational Awareness Flight System gate call airspace data structure PRP lock PRP allows for priority aware, criticality aware, safe, Fiji reliable, shared memory between partitions Systems LLC Wednesday, August 18, 2010

  16. PRP Locks Flight System’s partition is guaranteed fast Bound on preemption based on data structure size Situational awareness' partition access is slightly slower but is still bounded in time Fiji Systems LLC Wednesday, August 18, 2010

  17. Inspiration from Transactions Atomic replacement for locks Automatic serializability detection Runtime monitoring Aborts - ability to rollback Fiji Systems LLC Wednesday, August 18, 2010

  18. Inspiration from Transactions New programming Atomic replacement for locks model Automatic serializability detection Runtime monitoring Aborts - ability to rollback Fiji Systems LLC Wednesday, August 18, 2010

  19. Inspiration from Transactions New programming Atomic replacement for locks model Automatic serializability detection Unpredictable Runtime monitoring Aborts - ability to rollback Fiji Systems LLC Wednesday, August 18, 2010

  20. Inspiration from Transactions New programming Atomic replacement for locks model Automatic serializability detection Unpredictable Runtime monitoring Aborts - ability to rollback Fiji Systems LLC Wednesday, August 18, 2010

  21. Inspiration from Transactions New programming Atomic replacement for locks model Automatic serializability detection Unpredictable Runtime monitoring Aborts - ability to rollback Fiji Systems LLC Wednesday, August 18, 2010

  22. PRP: Two Options Write Buffering All updates buffered : memory is always consistent Write Logging Updates to shared memory : undo log allows reversion to consistent state of memory Fiji Systems LLC Wednesday, August 18, 2010

  23. Write Buffering synchronized(lock){ foo.a = x; foo.b = y; foo.c = z; foo.a = w; if(foo.b+4 > foo.a) ... } Fiji Systems LLC Wednesday, August 18, 2010

  24. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.c = z; foo.a = w; if(foo.b+4 > foo.a) ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  25. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.c = z; foo.a = w; if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  26. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.c = z; foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  27. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  28. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  29. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  30. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  31. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  32. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  33. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  34. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  35. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Fiji Systems LLC Wednesday, August 18, 2010

  36. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Commit Fiji Systems LLC Wednesday, August 18, 2010

  37. lock set to acquired Write Buffering in WB mode synchronized(lock){ foo.a = x; foo.b = y; foo.a , w foo.c = z; foo.c , z foo.a = w; foo.b , y if(foo.b+4 > foo.a) foo.a , x ... Buffer } Commit Set lock mode to commit Fiji Systems LLC Wednesday, August 18, 2010

  38. Acquisition by higher priority thread WB lock foo.a , w foo.c , z High Priority foo.b , y Thread foo.a , x Fiji Systems LLC Wednesday, August 18, 2010

  39. Acquisition by higher priority thread WB lock foo.a , w foo.c , z High Priority foo.b , y Thread foo.a , x Fiji Systems LLC Wednesday, August 18, 2010

  40. Acquisition by higher priority thread WB lock foo.a , w foo.c , z High Priority foo.b , y Thread foo.a , x Fiji Systems LLC Wednesday, August 18, 2010

  41. Acquisition by higher priority thread WB lock foo.a , w foo.c , z High Priority foo.b , y Thread foo.a , x Fiji Systems LLC Wednesday, August 18, 2010

  42. Acquisition by higher priority thread WB lock foo.a , w foo.c , z High Priority foo.b , y Thread foo.a , x Fiji Systems LLC Wednesday, August 18, 2010

  43. Acquisition by higher priority thread WB lock foo.a , w foo.c , z High Priority foo.b , y No priority boosting! Thread foo.a , x High Priority Thread Acquires Lock Fiji Systems LLC Wednesday, August 18, 2010

  44. Acquisition by higher priority thread Main Memory Commit lock foo.a , w foo.c , z High Priority foo.b , y Thread foo.a , x Fiji Systems LLC Wednesday, August 18, 2010

Recommend


More recommend