Sloth : Let the Hardware Do the Work! Wanja Hofer , Daniel Lohmann, - - PowerPoint PPT Presentation

sloth let the hardware do the work
SMART_READER_LITE
LIVE PREVIEW

Sloth : Let the Hardware Do the Work! Wanja Hofer , Daniel Lohmann, - - PowerPoint PPT Presentation

Sloth : Let the Hardware Do the Work! Wanja Hofer , Daniel Lohmann, Fabian Scheler, Wolfgang Schr oder-Preikschat SOSP 2009, WiP Session Confessions of a Slothful Wanja Hofer Sloth : Let the Hardware Do the Work! (SOSP-WiP 2009) 2 How It


slide-1
SLIDE 1

Sloth: Let the Hardware Do the Work!

Wanja Hofer, Daniel Lohmann, Fabian Scheler, Wolfgang Schr¨

  • der-Preikschat

SOSP 2009, WiP Session

slide-2
SLIDE 2

Confessions of a Slothful

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 2

slide-3
SLIDE 3

How It All Began...

Building embedded OSes as used in automotive industry Prevalent OS standard: OSEK OS

Event-triggered, priority-driven real-time system

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 3

slide-4
SLIDE 4

Let the Hardware Do the Work!

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 4

slide-5
SLIDE 5

Sloth: Threads as Interrupts

Idea: Let interrupt subsystem do the scheduling and dispatching work New: All threads are interrupt handlers and have interrupt priorities New: setReady(thread) is implemented as an IRQ

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 5

slide-6
SLIDE 6

Sloth: Design and Example

IRQ Source Thread A prio=1 request IRQ Source Thread B prio=2 request IRQ Source Thread C prio=3 request IRQ Arbi- tration Unit CPU curprio=X IRQ Vector Table threadA() threadB() threadC()

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 6

slide-7
SLIDE 7

Sloth: Design and Example

IRQ Source Thread A prio=1 request IRQ Source Thread B prio=2 request IRQ Source Thread C prio=3 request IRQ Arbi- tration Unit CPU curprio=1 IRQ Vector Table threadA() threadB() threadC()

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 6

slide-8
SLIDE 8

Sloth: Design and Example

IRQ Source Thread A prio=1 request IRQ Source Thread B prio=2 request IRQ Source Thread C prio=3 request IRQ Arbi- tration Unit CPU curprio=1 IRQ Vector Table threadA() threadB() threadC()

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 6

slide-9
SLIDE 9

Sloth: Design and Example

IRQ Source Thread A prio=1 request IRQ Source Thread B prio=2 request IRQ Source Thread C prio=3 request IRQ Arbi- tration Unit CPU curprio=3 IRQ Vector Table threadA() threadB() threadC()

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 6

slide-10
SLIDE 10

Sloth: Design and Example

IRQ Source Thread A prio=1 request IRQ Source Thread B prio=2 request IRQ Source Thread C prio=3 request IRQ Arbi- tration Unit CPU curprio=3 IRQ Vector Table threadA() threadB() threadC()

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 6

slide-11
SLIDE 11

Sloth: Design and Example

IRQ Source Thread A prio=1 request IRQ Source Thread B prio=2 request IRQ Source Thread C prio=3 request IRQ Arbi- tration Unit CPU curprio=3 IRQ Vector Table threadA() threadB() threadC()

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 6

slide-12
SLIDE 12

Sloth: Design and Example

IRQ Source Thread A prio=1 request IRQ Source Thread B prio=2 request IRQ Source Thread C prio=3 request IRQ Arbi- tration Unit CPU curprio=2 IRQ Vector Table threadA() threadB() threadC()

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 6

slide-13
SLIDE 13

Sloth: Design and Example

IRQ Source Thread A prio=1 request IRQ Source Thread B prio=2 request IRQ Source Thread C prio=3 request IRQ Arbi- tration Unit CPU curprio=1 IRQ Vector Table threadA() threadB() threadC()

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 6

slide-14
SLIDE 14

Sloth: Advantages

Simple Small Fast (2–20x) Cool

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 7

slide-15
SLIDE 15

Sloth: One of the Seven Deadly Sins

David Fincher, Se7en (1995)

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 8

slide-16
SLIDE 16

Sloth: One of the Seven Deadly Sins

David Fincher, Se7en (1995) Nicolas le Rouge, Le Grant Kalendrier Des Bergiers (1496)

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 8

slide-17
SLIDE 17

More About Being a Sloth

  • 1. Talk to me!
  • 2. http://www4.cs.fau.de/Research/Sloth/

Wanja Hofer Sloth: Let the Hardware Do the Work! (SOSP-WiP 2009) 9