SlideShare una empresa de Scribd logo
1 de 50
Descargar para leer sin conexión
R e a l-tim e a n d V M M
-R e a l-tim e   X e n fo r E m b e d d e d D e v ic e s



              C h u c k Y o o a n d te a m
       O p e r a tin g S y s te m s L a b o r a to r y
                  K o r e a U n iv e r s ity
                    F e b . 25, 2009
C o n te n ts
• M o tiv a tio n
• B a c k g ro u n d
   – T w o k e y p r o p e r tie s in r e a l-tim e s y s te m s
• C h a lle n g e s to X e n
   – d e te r m in is m
   – p r e d ic ta b ility
• D e v e lo p m e n t s ta tu s


                                                                   2
M o tiv a tio n s
           w h y r e a l-tim e s u p p o r t is im p o r ta n t

• V a r io u s fo r m s o f n e w e m b e d d e d s y s te m s
   – R e a l-tim e r e q u ir e m e n t
• M o b ile p h o n e to r u n b o th :
   – C o m m u n ic a tio n s ta c k lik e G S M , C D M A
   – A p p lic a tio n s lik e U I, g a m e s
• A u to m o b ile s , R o b o ts , U A V , a n d m o r e



                                                                  3
D e te r m in is m in R e a l-tim e S y s te m
• S c h e d u la b ility
     – T h e o r e tic a l fo u n d a tio n
     – T a s k T i = (p i, c i, d i),
         e x e c u tio n c i tim e w ith in a d e a d lin e d i, d u r in g e a c h p e r io d p i
     – S c h e d u la b ility c a n b e d e c id e d fo r a g iv e n s c h e d u lin g p o lic y a n d
       a r e a l-tim e ta s k s e t

• R e a l-tim e o p e r a tin g s y s te m p e r fo r m s s c h e d u la b ility te s t
  w h e n e v e r th e ta s k s e t o r th e s c h e d u lin g p o lic y is c h a n g e d
     – P e r fo r m s a d m is s io n c o n tr o l s o th a t a ll th e ta s k in th e s y s te m c a n
       m e e t th e e x e c u tio n c o n d itio n
     – In o r d e r to s im p lify th e s c h e d u la b ility a n a ly s is a t r u n -tim e , it fix e s
       th e ta s k s e t a n d u tiliz a tio n a p r io r i.



                                                                                                             4
S c h e d u la b ility T e s t
• F o r a g iv e n T a s k s e t T = {T i (p i , c i , d i )} a n d
  A lg o r ith m A , s c h e d u le r S c h e c k s w h e th e r a ll
  th e ta s k s in th e s y s te m m e e t th e e x e c u tio n
  c o n d itio n
• T is R M -s c h e d u la b le if a n d o n ly if
                               ሺ         wi tሻ≤ t
                                                                pi
                  , where t = kpj , j = 1,2, … , i, k = 1, … , ቞ ቟ ,
                                                                pj
                                        t
                             i

                  wi ሺtሻ=         ck      , 0 < t < pi .
                                       pk
                            k=1



• T is E D F -s c h e d u la b le if a n d o n ly if
                                                  ci
                                            n

                                       U=         ൬b ≤ 1 .
                                                  pi
                                            i=1



                                                                        5
P r e d ic ta b ility in R e a l-tim e S y s te m
• In te r r u p t is a k e y o b s ta c le to p r e d ic ta b ility
    – In te r r u p t is a s y n c h r o n o u s a n d u n -d e te r m in is tic
    – F o r p r e d ic ta b ility , n e e d to m a k e in te r r u p t p r o c e s s in g
      p r e d ic ta b le

• R e a l-tim e o p e r a tin g s y s te m a d o p ts m e c h a n is m s
  to m a k e it tim e -b o u n d e d
    –   D is a b le a n o th e r in te r r u p t
    –   N e s te d /p r io r itiz e in te r r u p t
    –   P o llin g I/O
    –   D e fe r r e d (D e la y e d ) p r o c e s s in g
          • e .g .) b o tto m h a lf, s o ftir q , e tc .

                                                                                            6
X e n : P h y s ic a l tim e != V ir tu a l tim e

                          (2 4 fr m /s )                                   (1 2 fr m /s )
                          M e d ia p la y e r                              M e d ia p la y e r



                     S c h e d u lin g o v e r                             S c h e d u lin g o v e r
                                                       !=
                     p h y s ic a l m a c h in e                           p h y s ic a l m a c h in e
                 P h y s ic a l M a c h in e
                                                                     V ir tu a l M a c h in e V M 1
                            PM1

                           P h y s ic a l tim e                                   V ir tu a l t im e

                                                                       P h y s ic a l M a c h in e
D is c r e te                                        D is c r e te
 s y s te m                                           s y s te m                   P h y s ic a l tim e
      tim e                                                tim e
  in P M 1                                             in V M 1
                                                                                                          N o t d e fin e d


                                                                                                                        7
                              P h y s ic a l tim e                                P h y s ic a l tim e
X e n : I/O m o d e l
• D o e s n o t p r o v id e p r e d ic ta b le tim e -b o u n d
• S p lit d r iv e r m o d e l is n o t s u ita b le fo r r e a l-
  tim e I/O




                                                                     8
V M M fo r E m b e d d e d S y s te m s
• X e n -A R M fr o m S a m s u n g E le c .
  (f ir s t A R M p o r tin g )
• L 4 fr o m O p e n K e r n e l L a b s
  (m ic r o k e r n e l-b a s e d v ir tu a liz a tio n )
• V L X fr o m V ir tu a lL o g ix
  (r e a l-tim e s u p p o r t R T O S r u n s in s id e th e V M M )



       S im ila r is s u e s in h e r ite d !

                                                                        9
C h a lle n g e to X e n



HOW TO PR OVIDE
DE TER MINIS M?

                           10
S c h e d u lin g in X e n
• S E D F , C r e d it s c h e d u le r s
    – S im p le E D F im p le m e n ts r e a l-tim e E D F s c h e d u le r
         • U s e r s h o u ld d e fin e p e r io d , e x e c u tio n s lic e
    – C r e d it s c h e d u le r im p le m e n ts c r e d it b a s e d fa ir s c h e d u lin g
      w ith I/O b o o s t
         • S u p p o r ts m u lti-p r o c e s s o r , lo a d b a la n c in g
         • I/O B O O S T p r io r ity to k e e p r e s p o n s iv e n e s s

• T im e k e e p in g in X e n
    – T im e r in te r r u p ts a r e d is tr ib u te d o v e r V M s
         • H a r d w a r e tim e r in te r r u p ts a r e h a n d le d b y th e X e n ,
           a n d d e liv e r e d b y v ia e v e n t c h a n n e l
         • V M c a n b e a w a r e o f tim e p a s s a g e b y v ir tu a l t im e r in te r r u p t
           w h ic h h a s b e e n s e n t b y th e X e n
               – T im e flo w s o n ly w h e n th e g u e s t O S is s c h e d u le d b y th e V M M

                                                                                                       11
H o w to P e r fo r m S c h e d u la b ility
                   A n a ly s is ?
• P r o b le m
   – T a s k s c h e d u lin g s h o u ld b e p e r fo r m e d b y R T O S
          • I t p e r fo r m s s c h e d u la b ilit y t e s t, R T s c h e d u lin g p o lic y
          • X e n d o e s n o t k n o w t h e t a s k s in th e R T O S
    – H o w e v e r , R T g u e s t is n o t a w a r e o f th e p h y s ic a l tim e
          • R T O S is a w a r e o f t h e v ir t u a l tim e p r o v id e d b y t h e X e n
          • D e a d lin e m ig h t b e m is s e d if t h e X e n d o e s n o t t im e ly s c h e d u le R T g u e s t

                          R T guest is not
                          aware of this time

                                                                                                    V ir tu a l tim e
                       R T V ir tu a l M a c h in e V M 1
                                                                   V ir tu a l M a c h in e V M 2
                         Performs schedulability test

                                                                                                    V ir tu a l tim e r
                                                                                                    in t e r r u p t
                                                        Xen

                                                            P h y s ic a l tim e
                                    P h y s ic a l                                                                        12
                                    d e a d lin e
S o lu tio n 1 - In te g r a te d
                   s c h e d u lin g a t V M M
• S c h e d u lin g a t th e lo w e s t la y e r
    – At VMM ?
         • V M M s h o u ld b e a w a r e o f a ll th e r e a l-tim e ta s k s in R T g u e s t
           OS
              – e .g .) L 4 ta s k s c h e d u lin g
         • W h a t if m u ltip le R T g u e s t O S

    – In a d d itio n ,
         • H o w to s u p p o r t G P O S
              – S c h e d u lin g a n a ly s is w h e n e v e r G P O S c r e a te s a u s e r p r o c e s s
              – S o r tin g a ll th e ta s k s in a ll th e g u e s ts fo r S E D F a t r u n tim e s h o u ld
                h a v e a c o n s id e r a b le o v e r h e a d
         • In te r fe r e G P O S s c h e d u le r
              – L o c a l s c h e d u le r k n o w s a b e s t w a y to u tiliz e th e r e s o u r c e s

                                                                                                                 13
S o lu tio n 2 - W o r k lo a d a g g r e g a tio n
• H ie r a r c h ic a l s c h e d u lin g
  fr a m e w o r k
     – R T g u e s t O S c a n p r e s e r v e its                             S c h e d u la b ility T e s t w ith
                                                                               Abstract interface,
       o w n s c h e d u lin g p o lic y a n d
                                                                               i.e . p e r io d ic ta s k m o d e l Γi (Π,Θ)
       s c h e d u la b ility
           • N o g lo b a l s c h e d u la b ility te s t fo r   Abstract
                                                                                         Γ1(Π,Θ)                             Γ2(Π,Θ)
             lo c a l ta s k s e t c h a n g e                   interface
     – A g g r e g a te R T g u e s t O S (its
       ta s k s ) a s o n e r e a l-tim e ta s k                       S u b s y s te m S 1              S u b s y s te m S 2
                                                                            P r e s e r v e lo c a l        P r e s e r v e lo c a l
                                                                         s c h e d u lin g p o lic y ,
     – Im p lic a tio n to X e n                                                                         s c h e d u lin g p o lic y ,
                                                                         s c h e d u la b ility te s t   s c h e d u la b ility te s t
           • N e e d a b s tr a c t in te r fa c e to
             tr a n s la t e a ll th e R T t a s k s to a
              s in g le R T ta s k
           • s lig h tly m o r e o v e r h e a d
                                                                   RT                  RT
                                                                   ta s k              ta s k
                                                                   T 1 (p i,e i        T 2 (p i,e i
                                                                   )                   )
                                                                                                                                         14
A g g r e g a tio n
                    P e r io d ic r e s o u r c e m o d e l
• k = m a x ( ┌ (t-(Π-Θ)) ┐/ Π, 1 )
   – n u m b e r o f p e r io d s w ith in t
   – i.e . k = 3 fo r th e fig u r e b e lo w

                                  t


                         Π
          Π-Θ                          kΠ-Θ
                                       kΠ

                         Θ                      Θ             Θ


                                                                  15
E x a m p le o f A g g r e g a tio n
•    F o r R T g u e s t R w h o s e ta s k s e t T is {t 1 (5 0 , 7 , 5 0 ), t 2 (7 5 , 9 , 7 5 )} a n d
     a lg o r ith m A is E D F .
       – U tiliz a tio n o f w o r k lo a d = 0 .2 6
       – L e t p e r io d Π, r e s o u r c e c a p a c ity U = Θ / Π

                            t − ሺ + 1ሻ Π − Θሻ if t ∈ ሾ k + 1ሻ − 2Θ, ሺ + 1ሻ − Θሿ
                                       ሺ              ሺ
                                 k                           Π       k    Π
       – S u p p ly b o u n d fu n c tio n (s b f) : m in im u m r e s o u r c e s u p p ly fr o m V M M
                 sbfΓ ሺ ሻ= b
                       t
                            ሺ − 1ሻ
                             k      Θ          otherwise,
                                                   t − ሺ − Θሻ
                                                        Π
                                 , where k = max ቆቜ           ቝ ,1ቇ
                                                        Π

                                               t
                    dbfEDF ሺ tሻ=
                            W,                    ⋅ ei .
       – D e m a n d b o u n d fu n c tio n (d b f) : to ta l r e s o u r c e d e m a n d fo r t h e w o r k lo a d
                                               pi
                                      T i ∈W

       – G r a y r e g io n in th e g r a p h p r e s e n ts fe a s ib le

              ∀0 < t ≤ LCMW , dbfEDF ሺ tሻ≤ sbfR ሺ ሻ
                                      W,             t
         r e s o u r c e a llo c a tio n

    , where LCMW is the least common multiple of pi for all Ti ∈ W .
                                                                                       0 .2 8



     L e ts a s s u m e t h a t Π= 1 0 ,
•
       – W e n e e d to a llo c a te a t le a s t 2 .8 (a s Θ) to R                         I.S h in , I . L e e “C ompositional real-time
       – R o u n d in g it a n d w e g e t Γ(1 0 , 3 )                                      scheduling framework with periodic model,”
                                                                                            A C M T r a n s . o n E m b e d d e d C o m p u tin g S y s te m s
                                                                                            V o l.7 (3 ), 2 0 0 8
                                                                                                                                                      16
T o m a k e a g g r e g a tio n w o r k
• T o in c o r p o r a te th e h ie r a r c h ic a l s c h e d u lin g
  fr a m e w o r k
    – N e e d a to o l to c a lc u la te w ith th e g iv e n ta s k s e t

• R e s o u r c e s u p p ly b o u n d >= R e s o u r c e d e m a n d
  bound
    – X e n s h o u ld p r o v id e e n o u g h r e s o u r c e s to R T O S
         • R T O S c a lc u la te s d e m a n d b o u n d
           (to ta l r e s o u r c e d e m a n d to m e e t th e s c h e d u la b ility )
         • X e n p r o v id e s C P U r e s o u r c e to R T O S a t le a s t to r e s o u r c e
           s u p p ly b o u n d
           (m in im u m r e s o u r c e s u p p ly fo r a c o r r e s p o n d in g s c h e d u lin g
           p o lic y )


                                                                                                       17
C h a lle n g e to X e n




HOW TO DEAL WITH
PR EDIC TABILITY?

                           18
H o w to H a n d le In te r r u p ts in T im e -
          b o u n d e d fa s h io n ?
• P r o b le m
   – X e n ’s d o m a in m o d e l
     s p lits p h y s ic a l I/O
     p r o c e s s in g fr o m v ir tu a l
                                                           D om 0                        RT-
     m a c h in e                                                                               Dom U
                                                         (physical
                                                                                        Dom U
                                                          driver)
       • A d d itio n a l la te n c y
       • U n b o u n d e d -p r o c e s s in g
                                                          1. Asynch.     2. VM
         tim e                                            Inter-VM comm.   S cheduling
            – D om 0 m ay be kept busy                   (n o t-tim e b o u n d e d )
                                                                                    Xen
            i.e . ta r g e t g u e s t m a y n o t b e
               s c h e d u le d im m e d ia te ly


                                                                                                  19
S o lu tio n 1 – P u ttin g R T g u e s t a t
                     Dom 0
• At Dom 0
  – S p e c ia l c o n tr o l/d r iv e r d o m a in
  – F o r fa s te r I/O r e s p o n s e
       • G o o d fo r tim e ly in te r r u p t
         p r o c e s s in g


• Cons                                                         R T -D o m 0                              Dom U
                                                              ( Additional I/O
  – A n o th e r n o n -R T V M ’s I/O                                                                    (n o n -R T
                                                           processing for DomU)                            g u e s t)
    p r o c e s s in g is a ffe c te d
       • H a r d to s u p p o r t s c h e d u la b ility
         a n a ly s is                                                          Xen
         (n o n -R T g u e s t p r o c e s s in g ,
         w h ic h is n o t tim e -b o u n d e d )
  – R T g u e s t c a n b e o v e r lo a d e d                 In te r r u p t fo r d o m U (n o n -R T g u e s t )

    w ith to o m a n y in te r r u p ts
                                                                                                               20
S o lu tio n 2 - A d o p tin g R e a l-tim e
                     S u b la y e r (R T L )
  •   L e t R T g u e s t a c c e s s p h y s ic a l d e v ic e s d ir e c t ly
       – R T d e v ic e s a r e d e d ic a te d to R T g u e s ts
       – In te r r u p t s e r v ic e r o u tin e (IS R ) o f R T g u e s t s h o u ld b e m in im a l
  •   A d d r e a l-t im e s u b la y e r to p r o v id e t im e -b o u n d e d in te r r u p ts fo r R T g u e s t
       – H a n d le R T g u e s t’s in te r r u p t fir s t
       – T h r o ttle in te r r u p t p r o c e s s in g fo r R T g u e s t a n d n o n -R T g u e s t
               • S e le c t iv e ly d e liv e r in te r r u p ts to d o m 0 b y m o n ito r in g in c o m in g in te r r u p ts
               • T o a v o id u n b o u n d e d in t e r r u p t p r o c e s s in g fo r n o n -R T g u e s t
                             e .g .) n e tw o r k flo o d in g




                                                                           RT-                                  N o n -R T
             R T -D o m U                                                                     Dom 0
                                                                          Dom U                                  Dom U
            R T d e v ic e
                                                                 Always delivered
              d r iv e r s
                                                                                                    S electively delivered
              Prioritized R T guest’s
              interrupt processing                                  Xen                    R TL
Xen
                   R TL                                                             (Throttle interrupt
       (physical interrupt handler)                                                   processing )
                                                                                                                                  21
M o re o n R T L
• R T L c o n tr o ls th e in c o m in g r a te o f th e
  a g g r e s s iv e in te r r u p ts
   – d is c a r d in te r r u p ts w h e n to o m a n y
     if c u r r e n t in te r r u p t in c o m in g r a te > m a x im u m in te r r u p t
      r a te th r e s h o ld
         • M a x . in te r r u p t r a te c o u ld b e d e r iv e d fr o m
            a v a ila b le c p u b a n d w id th fr o m s c h e d u la b ility
            a n a ly s is




                                                                                            22
D e v e lo p m e n t s ta tu s
• P o r te d u C /O S -II o v e r X e n A R M p la tfo r m
   – F r e e s c a le iM X 2 1
• B e in g im p le m e n te d
   – H ie r a r c h ic a l s c h e d u le r
   – T o o ls fo r s c h e d u la b ility a n a ly s is
   –RTL
• P r e v ie w a t
  h ttp ://w w w .y o u tu b e .c o m /w a tc h ?v = V li9 z b 6 2 C e

                                                                23
C o n c lu s io n
• R e a l-tim e s u p p o r t is im p o r ta n t
• X e n c a n d o it




                                                   24
THANKS !


           25
R e a l-tim e a n d V M M
                -R e a l-tim e   X e n fo r E m b e d d e d D e v ic e s



                              C h u c k Y o o a n d te a m
                       O p e r a tin g S y s te m s L a b o r a to r y
                                  K o r e a U n iv e r s ity
                                    F e b . 25, 2009


0 2 /2 5 /0 9                                                              1
C o n te n ts
• M o tiv a tio n
• B a c k g ro u n d
          – T w o k e y p r o p e r tie s in r e a l-tim e s y s te m s
• C h a lle n g e s to X e n
          – d e te r m in is m
          – p r e d ic ta b ility
• D e v e lo p m e n t s ta tu s


0 2 /2 5 /0 9                                                             2
M o tiv a tio n s
                  w h y r e a l-tim e s u p p o r t is im p o r ta n t

• V a r io u s fo r m s o f n e w e m b e d d e d s y s te m s
          – R e a l-tim e r e q u ir e m e n t
• M o b ile p h o n e to r u n b o th :
          – C o m m u n ic a tio n s ta c k lik e G S M , C D M A
          – A p p lic a tio n s lik e U I, g a m e s
• A u to m o b ile s , R o b o ts , U A V , a n d m o r e



0 2 /2 5 /0 9                                                            3
D e te r m in is m in R e a l-tim e S y s te m
• S c h e d u la b ility
          – T h e o r e tic a l fo u n d a tio n
          – T a s k T i = (p i, c i, d i),
                e x e c u tio n c i tim e w ith in a d e a d lin e d i, d u r in g e a c h p e r io d p i
          – S c h e d u la b ility c a n b e d e c id e d fo r a g iv e n s c h e d u lin g p o lic y a n d
            a r e a l-tim e ta s k s e t

• R e a l-tim e o p e r a tin g s y s te m p e r fo r m s s c h e d u la b ility te s t
  w h e n e v e r th e ta s k s e t o r th e s c h e d u lin g p o lic y is c h a n g e d
          – P e r fo r m s a d m is s io n c o n tr o l s o th a t a ll th e ta s k in th e s y s te m c a n
            m e e t th e e x e c u tio n c o n d itio n
          – In o r d e r to s im p lify th e s c h e d u la b ility a n a ly s is a t r u n -tim e , it fix e s
            th e ta s k s e t a n d u tiliz a tio n a p r io r i.



0 2 /2 5 /0 9                                                                                                     4




                                                                                                                      4
S c h e d u la b ility T e s t
• F o r a g iv e n T a s k s e t T = {T i (p i , c i , d i )} a n d
  A lg o r ith m A , s c h e d u le r S c h e c k s w h e th e r a ll
  th e ta s k s in th e s y s te m m e e t th e e x e c u tio n
  c o n d itio n
• T is R M -s c h e d u la b le if a n d o n ly if
                               ሺ      wi tሻ≤ t
                                                                pi
                  , where t = kpj , j = 1,2, … , i, k = 1, … , ቞ ቟ ,
                                                                pj
                                        t
                             i

                  wi ሺtሻ=         ck      , 0 < t < pi .
                                       pk
                            k=1



• T is E D F -s c h e d u la b le if a n d o n ly if
                                                  ci
                                            n

                                       U=         ൬b ≤ 1 .
                                                  pi
                                            i=1



0 2 /2 5 /0 9                                                           5
P r e d ic ta b ility in R e a l-tim e S y s te m
• In te r r u p t is a k e y o b s ta c le to p r e d ic ta b ility
          – I n te r r u p t is a s y n c h r o n o u s a n d u n -d e t e r m in is t ic
          – F o r p r e d ic ta b ility , n e e d to m a k e in te r r u p t p r o c e s s in g
            p r e d ic ta b le

• R e a l-tim e o p e r a tin g s y s te m a d o p ts m e c h a n is m s
  to m a k e it tim e -b o u n d e d
          –     D is a b le a n o th e r in te r r u p t
          –     N e s t e d /p r io r itiz e in t e r r u p t
          –     P o llin g I /O
          –     D e fe r r e d (D e la y e d ) p r o c e s s in g
                  • e .g .) b o tto m h a lf, s o ftir q , e tc .

0 2 /2 5 /0 9                                                                                     6
X e n : P h y s ic a l tim e != V ir tu a l tim e

                              (2 4 f r m /s )                                    (1 2 f r m /s )
                              M e d ia p la y e r                                M e d ia p la y e r



                         S c h e d u lin g o v e r                               S c h e d u lin g o v e r
                                                            !=
                         p h y s ic a l m a c h in e                             p h y s ic a l m a c h in e
                     P h y s ic a l M a c h in e
                                                                           V ir t u a l M a c h in e V M 1
                                PM1

                               P h y s ic a l t im e                                    V ir tu a l tim e

                                                                             P h y s ic a l M a c h in e
D is c r e t e                                            D is c r e t e
 s y s te m                                                s y s te m                    P h y s ic a l t im e
      tim e                                                     tim e
  in P M 1                                                  in V M 1
                                                                                                                 N o t d e fin e d


    0 2 /2 5 /0 9                                                                                                              7
                                  P h y s ic a l t im e                                 P h y s ic a l t im e




                                                                                                                                     7
X e n : I/O m o d e l
• D o e s n o t p r o v id e p r e d ic ta b le tim e -b o u n d
• S p lit d r iv e r m o d e l is n o t s u ita b le fo r r e a l-
  tim e I/O




0 2 /2 5 /0 9                                                        8
V M M fo r E m b e d d e d S y s te m s
• X e n -A R M fr o m S a m s u n g E le c .
       (fir s t A R M p o r tin g )
• L 4 fr o m O p e n K e r n e l L a b s
       (m ic r o k e r n e l-b a s e d v ir tu a liz a tio n )
• V L X fr o m V ir tu a lL o g ix
       (r e a l-tim e s u p p o r t R T O S r u n s in s id e th e V M M )



                S im ila r is s u e s in h e r ite d !

0 2 /2 5 /0 9                                                                9
C h a lle n g e to X e n



      HOW TO PR OVIDE
      DETE R MINIS M?

0 2 /2 5 /0 9                   10
S c h e d u lin g in X e n
• S E D F , C r e d it s c h e d u le r s
          – S im p le E D F im p le m e n ts r e a l-tim e E D F s c h e d u le r
                • U s e r s h o u ld d e fin e p e r io d , e x e c u tio n s lic e
          – C r e d it s c h e d u le r im p le m e n ts c r e d it b a s e d fa ir s c h e d u lin g
            w ith I/O b o o s t
                • S u p p o r ts m u lti-p r o c e s s o r , lo a d b a la n c in g
                • I/O B O O S T p r io r ity to k e e p r e s p o n s iv e n e s s

• T im e k e e p in g in X e n
          – T im e r in te r r u p ts a r e d is tr ib u t e d o v e r V M s
                • H a r d w a r e tim e r in te r r u p ts a r e h a n d le d b y th e X e n ,
                  a n d d e liv e r e d b y v ia e v e n t c h a n n e l
                • V M c a n b e a w a r e o f tim e p a s s a g e b y v ir tu a l tim e r in te r r u p t
                  w h ic h h a s b e e n s e n t b y th e X e n
                      – T im e flo w s o n ly w h e n th e g u e s t O S is s c h e d u le d b y th e V M M

0 2 /2 5 /0 9                                                                                                 11
H o w to P e r fo r m S c h e d u la b ility
                             A n a ly s is ?
• P r o b le m
   – T a s k s c h e d u lin g s h o u ld b e p e r f o r m e d b y R T O S
                 • It p e r f o r m s s c h e d u la b ilit y te s t , R T s c h e d u lin g p o lic y
                 • X e n d o e s n o t k n o w t h e t a s k s in th e R T O S
          – H o w e v e r , R T g u e s t is n o t a w a r e o f th e p h y s ic a l tim e
                 • R T O S is a w a r e o f th e v ir tu a l tim e p r o v id e d b y t h e X e n
                 • D e a d lin e m ig h t b e m is s e d if th e X e n d o e s n o t t im e ly s c h e d u le R T g u e s t

                                 R T guest is not
                                 aware of this time

                                                                                                           V ir tu a l t im e
                              R T V ir tu a l M a c h in e V M 1
                                                                          V ir tu a l M a c h in e V M 2
                                Performs schedulability test

                                                                                                           V ir tu a l t im e r
                                                                                                           in t e r r u p t
                                                               Xen

                                                                   P h y s ic a l tim e
                                           P h y s ic a l
0 2 /2 5 /0 9                                                                                                                     12
                                           d e a d lin e
S o lu tio n 1 - In te g r a te d
                          s c h e d u lin g a t V M M
• S c h e d u lin g a t th e lo w e s t la y e r
          – At VM M ?
                • V M M s h o u ld b e a w a r e o f a ll th e r e a l-tim e ta s k s in R T g u e s t
                  OS
                      – e .g .) L 4 ta s k s c h e d u lin g
                • W h a t if m u ltip le R T g u e s t O S

          – I n a d d it io n ,
                • H o w to s u p p o r t G P O S
                      – S c h e d u lin g a n a ly s is w h e n e v e r G P O S c r e a te s a u s e r p r o c e s s
                      – S o r tin g a ll th e ta s k s in a ll th e g u e s ts fo r S E D F a t r u n tim e s h o u ld
                        h a v e a c o n s id e r a b le o v e r h e a d
                • In te r fe r e G P O S s c h e d u le r
                      – L o c a l s c h e d u le r k n o w s a b e s t w a y to u tiliz e th e r e s o u r c e s

0 2 /2 5 /0 9                                                                                                            13
S o lu tio n 2 - W o r k lo a d a g g r e g a tio n
• H ie r a r c h ic a l s c h e d u lin g
  fr a m e w o r k
          – R T g u e s t O S c a n p r e s e r v e its                              S c h e d u la b ility T e s t w it h
                                                                                     Abstract interface,
            o w n s c h e d u lin g p o lic y a n d
                                                                                     i.e . p e r io d ic ta s k m o d e l Γi (Π,Θ)
            s c h e d u la b ility
                • N o g lo b a l s c h e d u la b ility te s t fo r   Abs tract
                                                                                               Γ1(Π,Θ)                               Γ2(Π,Θ)
                  lo c a l ta s k s e t c h a n g e                   interface
          – A g g r e g a te R T g u e s t O S (its
            ta s k s ) a s o n e r e a l-tim e ta s k                       S u b s y s te m S 1                S u b s y s te m S 2
                                                                                 P r e s e r v e lo c a l          P r e s e r v e lo c a l
                                                                              s c h e d u lin g p o lic y ,
          – Im p lic a tio n to X e n                                                                           s c h e d u lin g p o lic y ,
                                                                              s c h e d u la b ilit y t e s t   s c h e d u la b ilit y t e s t
                • N e e d a b s tr a c t in te r fa c e to
                  tr a n s la te a ll th e R T ta s k s to a
                   s in g le R T ta s k
                • s lig h tly m o r e o v e r h e a d
                                                                        RT                   RT
                                                                        ta s k               ta s k
                                                                        T 1 (p i,e i         T 2 (p i,e i
                                                                        )                    )
0 2 /2 5 /0 9                                                                                                                                     14
A g g r e g a tio n
                            P e r io d ic r e s o u r c e m o d e l
• k = m a x ( ┌ (t-(Π-Θ)) ┐/ Π, 1 )
          – n u m b e r o f p e r io d s w ith in t
          – i.e . k = 3 fo r th e f ig u r e b e lo w

                                          t


                                 Π
                  Π-Θ                          kΠ-Θ
                                               kΠ

                                 Θ                      Θ             Θ


0 2 /2 5 /0 9                                                             15
E x a m p le o f A g g r e g a tio n
•      F o r R T g u e s t R w h o s e ta s k s e t T is {t 1 (5 0 , 7 , 5 0 ), t 2 (7 5 , 9 , 7 5 )} a n d
       a lg o r ith m A is E D F .
          – U tiliz a t io n o f w o r k lo a d = 0 .2 6
          – L e t p e r io d Π, r e s o u r c e c a p a c ity U = Θ / Π

                                t − ሺ + 1ሻ Π − Θሻ if t ∈ ሾ k + 1ሻ − 2Θ, ሺ + 1ሻ − Θሿ
                                           ሺ              ሺ
                                     k                           Π       k    Π
          – S u p p ly b o u n d fu n c tio n (s b f) : m in im u m r e s o u r c e s u p p ly fr o m V M M
                     sbfΓ ሺtሻ= b
                                ሺ − 1ሻ
                                 k      Θ          otherwise,
                                                       t − ሺ − Θሻ
                                                            Π
                                     , where k = max ቆቜ           ቝ ,1ቇ
                                                            Π

                                                   t
                       dbfEDF ሺ tሻ=
                               W,                     ⋅ ei .
          – D e m a n d b o u n d f u n c t io n (d b f ) : to ta l r e s o u r c e d e m a n d f o r t h e w o r k lo a d
                                                   pi
                                          T i ∈W

          – G r a y r e g io n in t h e g r a p h p r e s e n t s fe a s ib le

               ∀0 < t ≤ LCMW , dbfEDF ሺ tሻ≤ sbfR ሺ
                                       W,             tሻ
            r e s o u r c e a llo c a t io n

     , where LCMW is the least common multiple of pi for all Ti ∈ W .
                                                                                             0 .2 8



       L e ts a s s u m e th a t Π= 1 0 ,
•
          – W e n e e d t o a llo c a t e a t le a s t 2 .8 (a s Θ) to R                          I .S h in , I . L e e “C ompos itional real-time
          – R o u n d in g it a n d w e g e t Γ(1 0 , 3 )                                         s cheduling framework with periodic model,”
                                                                                                  A C M T r a n s . o n E m b e d d e d C o m p u t in g S y s t e m s
                                                                                                  V o l.7 (3 ), 2 0 0 8
0 2 /2 5 /0 9                                                                                                                                                 16
T o m a k e a g g r e g a tio n w o r k
• T o in c o r p o r a te th e h ie r a r c h ic a l s c h e d u lin g
  fr a m e w o r k
          – N e e d a to o l t o c a lc u la t e w ith t h e g iv e n ta s k s e t

• R e s o u r c e s u p p ly b o u n d >= R e s o u r c e d e m a n d
  bound
          – X e n s h o u ld p r o v id e e n o u g h r e s o u r c e s to R T O S
                 • R T O S c a lc u la te s d e m a n d b o u n d
                   (to ta l r e s o u r c e d e m a n d to m e e t th e s c h e d u la b ility )
                 • X e n p r o v id e s C P U r e s o u r c e to R T O S a t le a s t to r e s o u r c e
                   s u p p ly b o u n d
                   (m in im u m r e s o u r c e s u p p ly fo r a c o r r e s p o n d in g s c h e d u lin g
                   p o lic y )


0 2 /2 5 /0 9                                                                                                  17
C h a lle n g e to X e n




      HOW TO DE AL WITH
      PR E DIC TABILITY?

0 2 /2 5 /0 9                   18
H o w to H a n d le In te r r u p ts in T im e -
              b o u n d e d fa s h io n ?
• P r o b le m
          – X e n ’s d o m a in m o d e l
            s p lits p h y s ic a l I/O
            p r o c e s s in g fr o m v ir tu a l
                                                                    Dom 0                           RT-
            m a c h in e                                                                                   Dom U
                                                                   (physical
                                                                                                   Dom U
                                                                    driver)
                • A d d itio n a l la te n c y
                • U n b o u n d e d -p r o c e s s in g
                                                                   1. Asynch.     2. VM
                  tim e                                            Inter-VM comm.   S cheduling
                     – D om 0 m ay be kept busy                   (n o t -t im e b o u n d e d )
                                                                                               Xen
                     i.e . ta r g e t g u e s t m a y n o t b e
                        s c h e d u le d im m e d ia te ly


0 2 /2 5 /0 9                                                                                                19
S o lu tio n 1 – P u ttin g R T g u e s t a t
                             D om 0
• At D om 0
          – S p e c ia l c o n t r o l/d r iv e r d o m a in
          – F o r fa s t e r I/O r e s p o n s e
                • G o o d fo r tim e ly in te r r u p t
                  p r o c e s s in g


• Cons                                                                  R T -D o m 0                             Dom U
                                                                       ( Additional I/O
          – A n o th e r n o n -R T V M ’s I/O                                                                    (n o n -R T
                                                                    processing for DomU)                           g u e s t)
            p r o c e s s in g is a ffe c t e d
                • H a r d to s u p p o r t s c h e d u la b ility
                  a n a ly s is                                                          Xen
                  (n o n -R T g u e s t p r o c e s s in g ,
                  w h ic h is n o t tim e -b o u n d e d )
          – R T g u e s t c a n b e o v e r lo a d e d                  In te r r u p t fo r d o m U (n o n -R T g u e s t)

            w ith to o m a n y in te r r u p ts
0 2 /2 5 /0 9                                                                                                          20
S o lu tio n 2 - A d o p tin g R e a l-tim e
                              S u b la y e r (R T L )
  •      L e t R T g u e s t a c c e s s p h y s ic a l d e v ic e s d ir e c t ly
            – R T d e v ic e s a r e d e d ic a te d to R T g u e s ts
            – In te r r u p t s e r v ic e r o u tin e (IS R ) o f R T g u e s t s h o u ld b e m in im a l
  •      A d d r e a l-tim e s u b la y e r to p r o v id e tim e -b o u n d e d in te r r u p ts fo r R T g u e s t
          – H a n d le R T g u e s t’s in te r r u p t fir s t
            – T h r o ttle in te r r u p t p r o c e s s in g fo r R T g u e s t a n d n o n -R T g u e s t
                      • S e le c t iv e ly d e liv e r in te r r u p t s t o d o m 0 b y m o n ito r in g in c o m in g in te r r u p t s
                      • T o a v o id u n b o u n d e d in te r r u p t p r o c e s s in g fo r n o n -R T g u e s t
                                    e .g .) n e tw o r k flo o d in g




                                                                                  RT-                                     N o n -R T
                    R T -D o m U                                                                       D om 0
                                                                                 Dom U                                     Dom U
                   R T d e v ic e
                                                                        Always delivered
                     d r iv e r s
                                                                                                             S electively delivered
                     Prioritized R T guest’s
                     interrupt processing                                  Xen                    R TL
Xen
                       R TL                                                                (Throttle interrupt
           (physical interrupt handler)                                                      processing )
  0 2 /2 5 /0 9                                                                                                                             21
M o re o n R T L
• R T L c o n tr o ls th e in c o m in g r a te o f th e
  a g g r e s s iv e in te r r u p ts
          – d is c a r d in te r r u p t s w h e n t o o m a n y
            if c u r r e n t in te r r u p t in c o m in g r a te > m a x im u m in te r r u p t
                r a te th r e s h o ld
                   • M a x . in te r r u p t r a te c o u ld b e d e r iv e d f r o m
                      a v a ila b le c p u b a n d w id th fr o m s c h e d u la b ilit y
                      a n a ly s is




0 2 /2 5 /0 9                                                                                      22
D e v e lo p m e n t s ta tu s
• P o r te d u C /O S -II o v e r X e n A R M p la tfo r m
          – F r e e s c a le iM X 2 1
• B e in g im p le m e n te d
          – H ie r a r c h ic a l s c h e d u le r
          – T o o ls fo r s c h e d u la b ility a n a ly s is
          –RTL
• P r e v ie w a t
  h ttp ://w w w .y o u tu b e .c o m /w a tc h ?v = V li9 z b 6 2 C e o

0 2 /2 5 /0 9                                                    23
C o n c lu s io n
• R e a l-tim e s u p p o r t is im p o r ta n t
• X e n c a n d o it




0 2 /2 5 /0 9                                      24
THANKS !


0 2 /2 5 /0 9    25

Más contenido relacionado

La actualidad más candente

You Want Me to Say That? Creative Ways to Motivate the Field to Adopt Your Me...
You Want Me to Say That? Creative Ways to Motivate the Field to Adopt Your Me...You Want Me to Say That? Creative Ways to Motivate the Field to Adopt Your Me...
You Want Me to Say That? Creative Ways to Motivate the Field to Adopt Your Me...Corporate Visions
 
Auto trading application
Auto trading applicationAuto trading application
Auto trading applicationRitesh Saxena
 
Trading system for indian market
Trading system for indian marketTrading system for indian market
Trading system for indian marketRitesh Saxena
 
2012 Melissa McFerrin Hoop School
2012 Melissa McFerrin Hoop School2012 Melissa McFerrin Hoop School
2012 Melissa McFerrin Hoop SchoolPatosha Jeffery
 
Materia programacion
Materia programacionMateria programacion
Materia programacionBlanca C.
 
Plugin for open e cry
Plugin for open e cryPlugin for open e cry
Plugin for open e cryRitesh Saxena
 
Automated trading application case study
Automated trading application   case studyAutomated trading application   case study
Automated trading application case studyRitesh Saxena
 
Leslletres3
Leslletres3Leslletres3
Leslletres3monika88
 
Mercado laboral españa vs francia - presentacion
Mercado laboral   españa vs francia - presentacionMercado laboral   españa vs francia - presentacion
Mercado laboral españa vs francia - presentacionDavid Lopez Alamar
 

La actualidad más candente (18)

You Want Me to Say That? Creative Ways to Motivate the Field to Adopt Your Me...
You Want Me to Say That? Creative Ways to Motivate the Field to Adopt Your Me...You Want Me to Say That? Creative Ways to Motivate the Field to Adopt Your Me...
You Want Me to Say That? Creative Ways to Motivate the Field to Adopt Your Me...
 
Auto trading application
Auto trading applicationAuto trading application
Auto trading application
 
Fix engine
Fix engineFix engine
Fix engine
 
MECANICA AUTOMOTRIZ
MECANICA AUTOMOTRIZMECANICA AUTOMOTRIZ
MECANICA AUTOMOTRIZ
 
Trading system for indian market
Trading system for indian marketTrading system for indian market
Trading system for indian market
 
DJ Kiko Sales Deck
DJ Kiko Sales DeckDJ Kiko Sales Deck
DJ Kiko Sales Deck
 
Nature Art Exhibition Event Postcard
Nature Art Exhibition Event PostcardNature Art Exhibition Event Postcard
Nature Art Exhibition Event Postcard
 
Angio RM blog
Angio RM blogAngio RM blog
Angio RM blog
 
2012 Melissa McFerrin Hoop School
2012 Melissa McFerrin Hoop School2012 Melissa McFerrin Hoop School
2012 Melissa McFerrin Hoop School
 
Portfolio 2012
Portfolio 2012Portfolio 2012
Portfolio 2012
 
Delibera giunta n_175
Delibera giunta n_175Delibera giunta n_175
Delibera giunta n_175
 
Materia programacion
Materia programacionMateria programacion
Materia programacion
 
Plugin for open e cry
Plugin for open e cryPlugin for open e cry
Plugin for open e cry
 
Automated trading application case study
Automated trading application   case studyAutomated trading application   case study
Automated trading application case study
 
Designbait
DesignbaitDesignbait
Designbait
 
Leslletres3
Leslletres3Leslletres3
Leslletres3
 
Mercado laboral españa vs francia - presentacion
Mercado laboral   españa vs francia - presentacionMercado laboral   españa vs francia - presentacion
Mercado laboral españa vs francia - presentacion
 
Protocolo resposta pep r
Protocolo resposta pep rProtocolo resposta pep r
Protocolo resposta pep r
 

Destacado

Linux Foundation Collaboration Summit 13 :10 years of Xen and Beyond
Linux Foundation Collaboration Summit 13 :10 years of Xen and BeyondLinux Foundation Collaboration Summit 13 :10 years of Xen and Beyond
Linux Foundation Collaboration Summit 13 :10 years of Xen and BeyondThe Linux Foundation
 
Transcendent memoryupdate xensummit2010-final
Transcendent memoryupdate xensummit2010-finalTranscendent memoryupdate xensummit2010-final
Transcendent memoryupdate xensummit2010-finalThe Linux Foundation
 
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e VarnishEscalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e VarnishLucas Brasilino
 
OWF: Xen Project - Moving a commercial open source project to an open source ...
OWF: Xen Project - Moving a commercial open source project to an open source ...OWF: Xen Project - Moving a commercial open source project to an open source ...
OWF: Xen Project - Moving a commercial open source project to an open source ...The Linux Foundation
 
Xen.org: The past, the present and exciting Future
Xen.org: The past, the present and exciting FutureXen.org: The past, the present and exciting Future
Xen.org: The past, the present and exciting FutureThe Linux Foundation
 

Destacado (10)

Linux Foundation Collaboration Summit 13 :10 years of Xen and Beyond
Linux Foundation Collaboration Summit 13 :10 years of Xen and BeyondLinux Foundation Collaboration Summit 13 :10 years of Xen and Beyond
Linux Foundation Collaboration Summit 13 :10 years of Xen and Beyond
 
Ian Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 KeynoteIan Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 Keynote
 
Transcendent memoryupdate xensummit2010-final
Transcendent memoryupdate xensummit2010-finalTranscendent memoryupdate xensummit2010-final
Transcendent memoryupdate xensummit2010-final
 
Nakajima hvm-be final
Nakajima hvm-be finalNakajima hvm-be final
Nakajima hvm-be final
 
Nakajima numa-final
Nakajima numa-finalNakajima numa-final
Nakajima numa-final
 
XS Oracle 2009 Intro Slides
XS Oracle 2009 Intro SlidesXS Oracle 2009 Intro Slides
XS Oracle 2009 Intro Slides
 
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e VarnishEscalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
 
OWF: Xen Project - Moving a commercial open source project to an open source ...
OWF: Xen Project - Moving a commercial open source project to an open source ...OWF: Xen Project - Moving a commercial open source project to an open source ...
OWF: Xen Project - Moving a commercial open source project to an open source ...
 
Linux PV on HVM
Linux PV on HVMLinux PV on HVM
Linux PV on HVM
 
Xen.org: The past, the present and exciting Future
Xen.org: The past, the present and exciting FutureXen.org: The past, the present and exciting Future
Xen.org: The past, the present and exciting Future
 

Más de The Linux Foundation

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleThe Linux Foundation
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...The Linux Foundation
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...The Linux Foundation
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...The Linux Foundation
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather ReportThe Linux Foundation
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...The Linux Foundation
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxThe Linux Foundation
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...The Linux Foundation
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderThe Linux Foundation
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...The Linux Foundation
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...The Linux Foundation
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixThe Linux Foundation
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdThe Linux Foundation
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...The Linux Foundation
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DThe Linux Foundation
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsThe Linux Foundation
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...The Linux Foundation
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...The Linux Foundation
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...The Linux Foundation
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEThe Linux Foundation
 

Más de The Linux Foundation (20)

ELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made SimpleELC2019: Static Partitioning Made Simple
ELC2019: Static Partitioning Made Simple
 
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
XPDDS19: How TrenchBoot is Enabling Measured Launch for Open-Source Platform ...
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
 
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
XPDDS19 Keynote: Xen Project Weather Report 2019 - Lars Kurth, Director of Op...
 
XPDDS19 Keynote: Unikraft Weather Report
XPDDS19 Keynote:  Unikraft Weather ReportXPDDS19 Keynote:  Unikraft Weather Report
XPDDS19 Keynote: Unikraft Weather Report
 
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
XPDDS19 Keynote: Secret-free Hypervisor: Now and Future - Wei Liu, Software E...
 
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, XilinxXPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
XPDDS19 Keynote: Xen Dom0-less - Stefano Stabellini, Principal Engineer, Xilinx
 
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
XPDDS19 Keynote: Patch Review for Non-maintainers - George Dunlap, Citrix Sys...
 
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, BitdefenderXPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
XPDDS19: Memories of a VM Funk - Mihai Donțu, Bitdefender
 
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...OSSJP/ALS19:  The Road to Safety Certification: Overcoming Community Challeng...
OSSJP/ALS19: The Road to Safety Certification: Overcoming Community Challeng...
 
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making... OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
OSSJP/ALS19: The Road to Safety Certification: How the Xen Project is Making...
 
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, CitrixXPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
XPDDS19: Speculative Sidechannels and Mitigations - Andrew Cooper, Citrix
 
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltdXPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
XPDDS19: Keeping Coherency on Arm: Reborn - Julien Grall, Arm ltd
 
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
XPDDS19: QEMU PV Backend 'qdevification'... What Does it Mean? - Paul Durrant...
 
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&DXPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
XPDDS19: Status of PCI Emulation in Xen - Roger Pau Monné, Citrix Systems R&D
 
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM SystemsXPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
XPDDS19: [ARM] OP-TEE Mediator in Xen - Volodymyr Babchuk, EPAM Systems
 
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
XPDDS19: Bringing Xen to the Masses: The Story of Building a Community-driven...
 
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
XPDDS19: Will Robots Automate Your Job Away? Streamlining Xen Project Contrib...
 
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
XPDDS19: Client Virtualization Toolstack in Go - Nick Rosbrook & Brendan Kerr...
 
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSEXPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
XPDDS19: Core Scheduling in Xen - Jürgen Groß, SUSE
 

XS Oracle 2009 Real Time And Vmm

  • 1. R e a l-tim e a n d V M M -R e a l-tim e X e n fo r E m b e d d e d D e v ic e s C h u c k Y o o a n d te a m O p e r a tin g S y s te m s L a b o r a to r y K o r e a U n iv e r s ity F e b . 25, 2009
  • 2. C o n te n ts • M o tiv a tio n • B a c k g ro u n d – T w o k e y p r o p e r tie s in r e a l-tim e s y s te m s • C h a lle n g e s to X e n – d e te r m in is m – p r e d ic ta b ility • D e v e lo p m e n t s ta tu s 2
  • 3. M o tiv a tio n s w h y r e a l-tim e s u p p o r t is im p o r ta n t • V a r io u s fo r m s o f n e w e m b e d d e d s y s te m s – R e a l-tim e r e q u ir e m e n t • M o b ile p h o n e to r u n b o th : – C o m m u n ic a tio n s ta c k lik e G S M , C D M A – A p p lic a tio n s lik e U I, g a m e s • A u to m o b ile s , R o b o ts , U A V , a n d m o r e 3
  • 4. D e te r m in is m in R e a l-tim e S y s te m • S c h e d u la b ility – T h e o r e tic a l fo u n d a tio n – T a s k T i = (p i, c i, d i), e x e c u tio n c i tim e w ith in a d e a d lin e d i, d u r in g e a c h p e r io d p i – S c h e d u la b ility c a n b e d e c id e d fo r a g iv e n s c h e d u lin g p o lic y a n d a r e a l-tim e ta s k s e t • R e a l-tim e o p e r a tin g s y s te m p e r fo r m s s c h e d u la b ility te s t w h e n e v e r th e ta s k s e t o r th e s c h e d u lin g p o lic y is c h a n g e d – P e r fo r m s a d m is s io n c o n tr o l s o th a t a ll th e ta s k in th e s y s te m c a n m e e t th e e x e c u tio n c o n d itio n – In o r d e r to s im p lify th e s c h e d u la b ility a n a ly s is a t r u n -tim e , it fix e s th e ta s k s e t a n d u tiliz a tio n a p r io r i. 4
  • 5. S c h e d u la b ility T e s t • F o r a g iv e n T a s k s e t T = {T i (p i , c i , d i )} a n d A lg o r ith m A , s c h e d u le r S c h e c k s w h e th e r a ll th e ta s k s in th e s y s te m m e e t th e e x e c u tio n c o n d itio n • T is R M -s c h e d u la b le if a n d o n ly if ሺ wi tሻ≤ t pi , where t = kpj , j = 1,2, … , i, k = 1, … , ቞ ቟ , pj t i wi ሺtሻ= ck , 0 < t < pi . pk k=1 • T is E D F -s c h e d u la b le if a n d o n ly if ci n U= ൬b ≤ 1 . pi i=1 5
  • 6. P r e d ic ta b ility in R e a l-tim e S y s te m • In te r r u p t is a k e y o b s ta c le to p r e d ic ta b ility – In te r r u p t is a s y n c h r o n o u s a n d u n -d e te r m in is tic – F o r p r e d ic ta b ility , n e e d to m a k e in te r r u p t p r o c e s s in g p r e d ic ta b le • R e a l-tim e o p e r a tin g s y s te m a d o p ts m e c h a n is m s to m a k e it tim e -b o u n d e d – D is a b le a n o th e r in te r r u p t – N e s te d /p r io r itiz e in te r r u p t – P o llin g I/O – D e fe r r e d (D e la y e d ) p r o c e s s in g • e .g .) b o tto m h a lf, s o ftir q , e tc . 6
  • 7. X e n : P h y s ic a l tim e != V ir tu a l tim e (2 4 fr m /s ) (1 2 fr m /s ) M e d ia p la y e r M e d ia p la y e r S c h e d u lin g o v e r S c h e d u lin g o v e r != p h y s ic a l m a c h in e p h y s ic a l m a c h in e P h y s ic a l M a c h in e V ir tu a l M a c h in e V M 1 PM1 P h y s ic a l tim e V ir tu a l t im e P h y s ic a l M a c h in e D is c r e te D is c r e te s y s te m s y s te m P h y s ic a l tim e tim e tim e in P M 1 in V M 1 N o t d e fin e d 7 P h y s ic a l tim e P h y s ic a l tim e
  • 8. X e n : I/O m o d e l • D o e s n o t p r o v id e p r e d ic ta b le tim e -b o u n d • S p lit d r iv e r m o d e l is n o t s u ita b le fo r r e a l- tim e I/O 8
  • 9. V M M fo r E m b e d d e d S y s te m s • X e n -A R M fr o m S a m s u n g E le c . (f ir s t A R M p o r tin g ) • L 4 fr o m O p e n K e r n e l L a b s (m ic r o k e r n e l-b a s e d v ir tu a liz a tio n ) • V L X fr o m V ir tu a lL o g ix (r e a l-tim e s u p p o r t R T O S r u n s in s id e th e V M M ) S im ila r is s u e s in h e r ite d ! 9
  • 10. C h a lle n g e to X e n HOW TO PR OVIDE DE TER MINIS M? 10
  • 11. S c h e d u lin g in X e n • S E D F , C r e d it s c h e d u le r s – S im p le E D F im p le m e n ts r e a l-tim e E D F s c h e d u le r • U s e r s h o u ld d e fin e p e r io d , e x e c u tio n s lic e – C r e d it s c h e d u le r im p le m e n ts c r e d it b a s e d fa ir s c h e d u lin g w ith I/O b o o s t • S u p p o r ts m u lti-p r o c e s s o r , lo a d b a la n c in g • I/O B O O S T p r io r ity to k e e p r e s p o n s iv e n e s s • T im e k e e p in g in X e n – T im e r in te r r u p ts a r e d is tr ib u te d o v e r V M s • H a r d w a r e tim e r in te r r u p ts a r e h a n d le d b y th e X e n , a n d d e liv e r e d b y v ia e v e n t c h a n n e l • V M c a n b e a w a r e o f tim e p a s s a g e b y v ir tu a l t im e r in te r r u p t w h ic h h a s b e e n s e n t b y th e X e n – T im e flo w s o n ly w h e n th e g u e s t O S is s c h e d u le d b y th e V M M 11
  • 12. H o w to P e r fo r m S c h e d u la b ility A n a ly s is ? • P r o b le m – T a s k s c h e d u lin g s h o u ld b e p e r fo r m e d b y R T O S • I t p e r fo r m s s c h e d u la b ilit y t e s t, R T s c h e d u lin g p o lic y • X e n d o e s n o t k n o w t h e t a s k s in th e R T O S – H o w e v e r , R T g u e s t is n o t a w a r e o f th e p h y s ic a l tim e • R T O S is a w a r e o f t h e v ir t u a l tim e p r o v id e d b y t h e X e n • D e a d lin e m ig h t b e m is s e d if t h e X e n d o e s n o t t im e ly s c h e d u le R T g u e s t R T guest is not aware of this time V ir tu a l tim e R T V ir tu a l M a c h in e V M 1 V ir tu a l M a c h in e V M 2 Performs schedulability test V ir tu a l tim e r in t e r r u p t Xen P h y s ic a l tim e P h y s ic a l 12 d e a d lin e
  • 13. S o lu tio n 1 - In te g r a te d s c h e d u lin g a t V M M • S c h e d u lin g a t th e lo w e s t la y e r – At VMM ? • V M M s h o u ld b e a w a r e o f a ll th e r e a l-tim e ta s k s in R T g u e s t OS – e .g .) L 4 ta s k s c h e d u lin g • W h a t if m u ltip le R T g u e s t O S – In a d d itio n , • H o w to s u p p o r t G P O S – S c h e d u lin g a n a ly s is w h e n e v e r G P O S c r e a te s a u s e r p r o c e s s – S o r tin g a ll th e ta s k s in a ll th e g u e s ts fo r S E D F a t r u n tim e s h o u ld h a v e a c o n s id e r a b le o v e r h e a d • In te r fe r e G P O S s c h e d u le r – L o c a l s c h e d u le r k n o w s a b e s t w a y to u tiliz e th e r e s o u r c e s 13
  • 14. S o lu tio n 2 - W o r k lo a d a g g r e g a tio n • H ie r a r c h ic a l s c h e d u lin g fr a m e w o r k – R T g u e s t O S c a n p r e s e r v e its S c h e d u la b ility T e s t w ith Abstract interface, o w n s c h e d u lin g p o lic y a n d i.e . p e r io d ic ta s k m o d e l Γi (Π,Θ) s c h e d u la b ility • N o g lo b a l s c h e d u la b ility te s t fo r Abstract Γ1(Π,Θ) Γ2(Π,Θ) lo c a l ta s k s e t c h a n g e interface – A g g r e g a te R T g u e s t O S (its ta s k s ) a s o n e r e a l-tim e ta s k S u b s y s te m S 1 S u b s y s te m S 2 P r e s e r v e lo c a l P r e s e r v e lo c a l s c h e d u lin g p o lic y , – Im p lic a tio n to X e n s c h e d u lin g p o lic y , s c h e d u la b ility te s t s c h e d u la b ility te s t • N e e d a b s tr a c t in te r fa c e to tr a n s la t e a ll th e R T t a s k s to a s in g le R T ta s k • s lig h tly m o r e o v e r h e a d RT RT ta s k ta s k T 1 (p i,e i T 2 (p i,e i ) ) 14
  • 15. A g g r e g a tio n P e r io d ic r e s o u r c e m o d e l • k = m a x ( ┌ (t-(Π-Θ)) ┐/ Π, 1 ) – n u m b e r o f p e r io d s w ith in t – i.e . k = 3 fo r th e fig u r e b e lo w t Π Π-Θ kΠ-Θ kΠ Θ Θ Θ 15
  • 16. E x a m p le o f A g g r e g a tio n • F o r R T g u e s t R w h o s e ta s k s e t T is {t 1 (5 0 , 7 , 5 0 ), t 2 (7 5 , 9 , 7 5 )} a n d a lg o r ith m A is E D F . – U tiliz a tio n o f w o r k lo a d = 0 .2 6 – L e t p e r io d Π, r e s o u r c e c a p a c ity U = Θ / Π t − ሺ + 1ሻ Π − Θሻ if t ∈ ሾ k + 1ሻ − 2Θ, ሺ + 1ሻ − Θሿ ሺ ሺ k Π k Π – S u p p ly b o u n d fu n c tio n (s b f) : m in im u m r e s o u r c e s u p p ly fr o m V M M sbfΓ ሺ ሻ= b t ሺ − 1ሻ k Θ otherwise, t − ሺ − Θሻ Π , where k = max ቆቜ ቝ ,1ቇ Π t dbfEDF ሺ tሻ= W, ⋅ ei . – D e m a n d b o u n d fu n c tio n (d b f) : to ta l r e s o u r c e d e m a n d fo r t h e w o r k lo a d pi T i ∈W – G r a y r e g io n in th e g r a p h p r e s e n ts fe a s ib le ∀0 < t ≤ LCMW , dbfEDF ሺ tሻ≤ sbfR ሺ ሻ W, t r e s o u r c e a llo c a tio n , where LCMW is the least common multiple of pi for all Ti ∈ W . 0 .2 8 L e ts a s s u m e t h a t Π= 1 0 , • – W e n e e d to a llo c a te a t le a s t 2 .8 (a s Θ) to R I.S h in , I . L e e “C ompositional real-time – R o u n d in g it a n d w e g e t Γ(1 0 , 3 ) scheduling framework with periodic model,” A C M T r a n s . o n E m b e d d e d C o m p u tin g S y s te m s V o l.7 (3 ), 2 0 0 8 16
  • 17. T o m a k e a g g r e g a tio n w o r k • T o in c o r p o r a te th e h ie r a r c h ic a l s c h e d u lin g fr a m e w o r k – N e e d a to o l to c a lc u la te w ith th e g iv e n ta s k s e t • R e s o u r c e s u p p ly b o u n d >= R e s o u r c e d e m a n d bound – X e n s h o u ld p r o v id e e n o u g h r e s o u r c e s to R T O S • R T O S c a lc u la te s d e m a n d b o u n d (to ta l r e s o u r c e d e m a n d to m e e t th e s c h e d u la b ility ) • X e n p r o v id e s C P U r e s o u r c e to R T O S a t le a s t to r e s o u r c e s u p p ly b o u n d (m in im u m r e s o u r c e s u p p ly fo r a c o r r e s p o n d in g s c h e d u lin g p o lic y ) 17
  • 18. C h a lle n g e to X e n HOW TO DEAL WITH PR EDIC TABILITY? 18
  • 19. H o w to H a n d le In te r r u p ts in T im e - b o u n d e d fa s h io n ? • P r o b le m – X e n ’s d o m a in m o d e l s p lits p h y s ic a l I/O p r o c e s s in g fr o m v ir tu a l D om 0 RT- m a c h in e Dom U (physical Dom U driver) • A d d itio n a l la te n c y • U n b o u n d e d -p r o c e s s in g 1. Asynch. 2. VM tim e Inter-VM comm. S cheduling – D om 0 m ay be kept busy (n o t-tim e b o u n d e d ) Xen i.e . ta r g e t g u e s t m a y n o t b e s c h e d u le d im m e d ia te ly 19
  • 20. S o lu tio n 1 – P u ttin g R T g u e s t a t Dom 0 • At Dom 0 – S p e c ia l c o n tr o l/d r iv e r d o m a in – F o r fa s te r I/O r e s p o n s e • G o o d fo r tim e ly in te r r u p t p r o c e s s in g • Cons R T -D o m 0 Dom U ( Additional I/O – A n o th e r n o n -R T V M ’s I/O (n o n -R T processing for DomU) g u e s t) p r o c e s s in g is a ffe c te d • H a r d to s u p p o r t s c h e d u la b ility a n a ly s is Xen (n o n -R T g u e s t p r o c e s s in g , w h ic h is n o t tim e -b o u n d e d ) – R T g u e s t c a n b e o v e r lo a d e d In te r r u p t fo r d o m U (n o n -R T g u e s t ) w ith to o m a n y in te r r u p ts 20
  • 21. S o lu tio n 2 - A d o p tin g R e a l-tim e S u b la y e r (R T L ) • L e t R T g u e s t a c c e s s p h y s ic a l d e v ic e s d ir e c t ly – R T d e v ic e s a r e d e d ic a te d to R T g u e s ts – In te r r u p t s e r v ic e r o u tin e (IS R ) o f R T g u e s t s h o u ld b e m in im a l • A d d r e a l-t im e s u b la y e r to p r o v id e t im e -b o u n d e d in te r r u p ts fo r R T g u e s t – H a n d le R T g u e s t’s in te r r u p t fir s t – T h r o ttle in te r r u p t p r o c e s s in g fo r R T g u e s t a n d n o n -R T g u e s t • S e le c t iv e ly d e liv e r in te r r u p ts to d o m 0 b y m o n ito r in g in c o m in g in te r r u p ts • T o a v o id u n b o u n d e d in t e r r u p t p r o c e s s in g fo r n o n -R T g u e s t e .g .) n e tw o r k flo o d in g RT- N o n -R T R T -D o m U Dom 0 Dom U Dom U R T d e v ic e Always delivered d r iv e r s S electively delivered Prioritized R T guest’s interrupt processing Xen R TL Xen R TL (Throttle interrupt (physical interrupt handler) processing ) 21
  • 22. M o re o n R T L • R T L c o n tr o ls th e in c o m in g r a te o f th e a g g r e s s iv e in te r r u p ts – d is c a r d in te r r u p ts w h e n to o m a n y if c u r r e n t in te r r u p t in c o m in g r a te > m a x im u m in te r r u p t r a te th r e s h o ld • M a x . in te r r u p t r a te c o u ld b e d e r iv e d fr o m a v a ila b le c p u b a n d w id th fr o m s c h e d u la b ility a n a ly s is 22
  • 23. D e v e lo p m e n t s ta tu s • P o r te d u C /O S -II o v e r X e n A R M p la tfo r m – F r e e s c a le iM X 2 1 • B e in g im p le m e n te d – H ie r a r c h ic a l s c h e d u le r – T o o ls fo r s c h e d u la b ility a n a ly s is –RTL • P r e v ie w a t h ttp ://w w w .y o u tu b e .c o m /w a tc h ?v = V li9 z b 6 2 C e 23
  • 24. C o n c lu s io n • R e a l-tim e s u p p o r t is im p o r ta n t • X e n c a n d o it 24
  • 25. THANKS ! 25
  • 26. R e a l-tim e a n d V M M -R e a l-tim e X e n fo r E m b e d d e d D e v ic e s C h u c k Y o o a n d te a m O p e r a tin g S y s te m s L a b o r a to r y K o r e a U n iv e r s ity F e b . 25, 2009 0 2 /2 5 /0 9 1
  • 27. C o n te n ts • M o tiv a tio n • B a c k g ro u n d – T w o k e y p r o p e r tie s in r e a l-tim e s y s te m s • C h a lle n g e s to X e n – d e te r m in is m – p r e d ic ta b ility • D e v e lo p m e n t s ta tu s 0 2 /2 5 /0 9 2
  • 28. M o tiv a tio n s w h y r e a l-tim e s u p p o r t is im p o r ta n t • V a r io u s fo r m s o f n e w e m b e d d e d s y s te m s – R e a l-tim e r e q u ir e m e n t • M o b ile p h o n e to r u n b o th : – C o m m u n ic a tio n s ta c k lik e G S M , C D M A – A p p lic a tio n s lik e U I, g a m e s • A u to m o b ile s , R o b o ts , U A V , a n d m o r e 0 2 /2 5 /0 9 3
  • 29. D e te r m in is m in R e a l-tim e S y s te m • S c h e d u la b ility – T h e o r e tic a l fo u n d a tio n – T a s k T i = (p i, c i, d i), e x e c u tio n c i tim e w ith in a d e a d lin e d i, d u r in g e a c h p e r io d p i – S c h e d u la b ility c a n b e d e c id e d fo r a g iv e n s c h e d u lin g p o lic y a n d a r e a l-tim e ta s k s e t • R e a l-tim e o p e r a tin g s y s te m p e r fo r m s s c h e d u la b ility te s t w h e n e v e r th e ta s k s e t o r th e s c h e d u lin g p o lic y is c h a n g e d – P e r fo r m s a d m is s io n c o n tr o l s o th a t a ll th e ta s k in th e s y s te m c a n m e e t th e e x e c u tio n c o n d itio n – In o r d e r to s im p lify th e s c h e d u la b ility a n a ly s is a t r u n -tim e , it fix e s th e ta s k s e t a n d u tiliz a tio n a p r io r i. 0 2 /2 5 /0 9 4 4
  • 30. S c h e d u la b ility T e s t • F o r a g iv e n T a s k s e t T = {T i (p i , c i , d i )} a n d A lg o r ith m A , s c h e d u le r S c h e c k s w h e th e r a ll th e ta s k s in th e s y s te m m e e t th e e x e c u tio n c o n d itio n • T is R M -s c h e d u la b le if a n d o n ly if ሺ wi tሻ≤ t pi , where t = kpj , j = 1,2, … , i, k = 1, … , ቞ ቟ , pj t i wi ሺtሻ= ck , 0 < t < pi . pk k=1 • T is E D F -s c h e d u la b le if a n d o n ly if ci n U= ൬b ≤ 1 . pi i=1 0 2 /2 5 /0 9 5
  • 31. P r e d ic ta b ility in R e a l-tim e S y s te m • In te r r u p t is a k e y o b s ta c le to p r e d ic ta b ility – I n te r r u p t is a s y n c h r o n o u s a n d u n -d e t e r m in is t ic – F o r p r e d ic ta b ility , n e e d to m a k e in te r r u p t p r o c e s s in g p r e d ic ta b le • R e a l-tim e o p e r a tin g s y s te m a d o p ts m e c h a n is m s to m a k e it tim e -b o u n d e d – D is a b le a n o th e r in te r r u p t – N e s t e d /p r io r itiz e in t e r r u p t – P o llin g I /O – D e fe r r e d (D e la y e d ) p r o c e s s in g • e .g .) b o tto m h a lf, s o ftir q , e tc . 0 2 /2 5 /0 9 6
  • 32. X e n : P h y s ic a l tim e != V ir tu a l tim e (2 4 f r m /s ) (1 2 f r m /s ) M e d ia p la y e r M e d ia p la y e r S c h e d u lin g o v e r S c h e d u lin g o v e r != p h y s ic a l m a c h in e p h y s ic a l m a c h in e P h y s ic a l M a c h in e V ir t u a l M a c h in e V M 1 PM1 P h y s ic a l t im e V ir tu a l tim e P h y s ic a l M a c h in e D is c r e t e D is c r e t e s y s te m s y s te m P h y s ic a l t im e tim e tim e in P M 1 in V M 1 N o t d e fin e d 0 2 /2 5 /0 9 7 P h y s ic a l t im e P h y s ic a l t im e 7
  • 33. X e n : I/O m o d e l • D o e s n o t p r o v id e p r e d ic ta b le tim e -b o u n d • S p lit d r iv e r m o d e l is n o t s u ita b le fo r r e a l- tim e I/O 0 2 /2 5 /0 9 8
  • 34. V M M fo r E m b e d d e d S y s te m s • X e n -A R M fr o m S a m s u n g E le c . (fir s t A R M p o r tin g ) • L 4 fr o m O p e n K e r n e l L a b s (m ic r o k e r n e l-b a s e d v ir tu a liz a tio n ) • V L X fr o m V ir tu a lL o g ix (r e a l-tim e s u p p o r t R T O S r u n s in s id e th e V M M ) S im ila r is s u e s in h e r ite d ! 0 2 /2 5 /0 9 9
  • 35. C h a lle n g e to X e n HOW TO PR OVIDE DETE R MINIS M? 0 2 /2 5 /0 9 10
  • 36. S c h e d u lin g in X e n • S E D F , C r e d it s c h e d u le r s – S im p le E D F im p le m e n ts r e a l-tim e E D F s c h e d u le r • U s e r s h o u ld d e fin e p e r io d , e x e c u tio n s lic e – C r e d it s c h e d u le r im p le m e n ts c r e d it b a s e d fa ir s c h e d u lin g w ith I/O b o o s t • S u p p o r ts m u lti-p r o c e s s o r , lo a d b a la n c in g • I/O B O O S T p r io r ity to k e e p r e s p o n s iv e n e s s • T im e k e e p in g in X e n – T im e r in te r r u p ts a r e d is tr ib u t e d o v e r V M s • H a r d w a r e tim e r in te r r u p ts a r e h a n d le d b y th e X e n , a n d d e liv e r e d b y v ia e v e n t c h a n n e l • V M c a n b e a w a r e o f tim e p a s s a g e b y v ir tu a l tim e r in te r r u p t w h ic h h a s b e e n s e n t b y th e X e n – T im e flo w s o n ly w h e n th e g u e s t O S is s c h e d u le d b y th e V M M 0 2 /2 5 /0 9 11
  • 37. H o w to P e r fo r m S c h e d u la b ility A n a ly s is ? • P r o b le m – T a s k s c h e d u lin g s h o u ld b e p e r f o r m e d b y R T O S • It p e r f o r m s s c h e d u la b ilit y te s t , R T s c h e d u lin g p o lic y • X e n d o e s n o t k n o w t h e t a s k s in th e R T O S – H o w e v e r , R T g u e s t is n o t a w a r e o f th e p h y s ic a l tim e • R T O S is a w a r e o f th e v ir tu a l tim e p r o v id e d b y t h e X e n • D e a d lin e m ig h t b e m is s e d if th e X e n d o e s n o t t im e ly s c h e d u le R T g u e s t R T guest is not aware of this time V ir tu a l t im e R T V ir tu a l M a c h in e V M 1 V ir tu a l M a c h in e V M 2 Performs schedulability test V ir tu a l t im e r in t e r r u p t Xen P h y s ic a l tim e P h y s ic a l 0 2 /2 5 /0 9 12 d e a d lin e
  • 38. S o lu tio n 1 - In te g r a te d s c h e d u lin g a t V M M • S c h e d u lin g a t th e lo w e s t la y e r – At VM M ? • V M M s h o u ld b e a w a r e o f a ll th e r e a l-tim e ta s k s in R T g u e s t OS – e .g .) L 4 ta s k s c h e d u lin g • W h a t if m u ltip le R T g u e s t O S – I n a d d it io n , • H o w to s u p p o r t G P O S – S c h e d u lin g a n a ly s is w h e n e v e r G P O S c r e a te s a u s e r p r o c e s s – S o r tin g a ll th e ta s k s in a ll th e g u e s ts fo r S E D F a t r u n tim e s h o u ld h a v e a c o n s id e r a b le o v e r h e a d • In te r fe r e G P O S s c h e d u le r – L o c a l s c h e d u le r k n o w s a b e s t w a y to u tiliz e th e r e s o u r c e s 0 2 /2 5 /0 9 13
  • 39. S o lu tio n 2 - W o r k lo a d a g g r e g a tio n • H ie r a r c h ic a l s c h e d u lin g fr a m e w o r k – R T g u e s t O S c a n p r e s e r v e its S c h e d u la b ility T e s t w it h Abstract interface, o w n s c h e d u lin g p o lic y a n d i.e . p e r io d ic ta s k m o d e l Γi (Π,Θ) s c h e d u la b ility • N o g lo b a l s c h e d u la b ility te s t fo r Abs tract Γ1(Π,Θ) Γ2(Π,Θ) lo c a l ta s k s e t c h a n g e interface – A g g r e g a te R T g u e s t O S (its ta s k s ) a s o n e r e a l-tim e ta s k S u b s y s te m S 1 S u b s y s te m S 2 P r e s e r v e lo c a l P r e s e r v e lo c a l s c h e d u lin g p o lic y , – Im p lic a tio n to X e n s c h e d u lin g p o lic y , s c h e d u la b ilit y t e s t s c h e d u la b ilit y t e s t • N e e d a b s tr a c t in te r fa c e to tr a n s la te a ll th e R T ta s k s to a s in g le R T ta s k • s lig h tly m o r e o v e r h e a d RT RT ta s k ta s k T 1 (p i,e i T 2 (p i,e i ) ) 0 2 /2 5 /0 9 14
  • 40. A g g r e g a tio n P e r io d ic r e s o u r c e m o d e l • k = m a x ( ┌ (t-(Π-Θ)) ┐/ Π, 1 ) – n u m b e r o f p e r io d s w ith in t – i.e . k = 3 fo r th e f ig u r e b e lo w t Π Π-Θ kΠ-Θ kΠ Θ Θ Θ 0 2 /2 5 /0 9 15
  • 41. E x a m p le o f A g g r e g a tio n • F o r R T g u e s t R w h o s e ta s k s e t T is {t 1 (5 0 , 7 , 5 0 ), t 2 (7 5 , 9 , 7 5 )} a n d a lg o r ith m A is E D F . – U tiliz a t io n o f w o r k lo a d = 0 .2 6 – L e t p e r io d Π, r e s o u r c e c a p a c ity U = Θ / Π t − ሺ + 1ሻ Π − Θሻ if t ∈ ሾ k + 1ሻ − 2Θ, ሺ + 1ሻ − Θሿ ሺ ሺ k Π k Π – S u p p ly b o u n d fu n c tio n (s b f) : m in im u m r e s o u r c e s u p p ly fr o m V M M sbfΓ ሺtሻ= b ሺ − 1ሻ k Θ otherwise, t − ሺ − Θሻ Π , where k = max ቆቜ ቝ ,1ቇ Π t dbfEDF ሺ tሻ= W, ⋅ ei . – D e m a n d b o u n d f u n c t io n (d b f ) : to ta l r e s o u r c e d e m a n d f o r t h e w o r k lo a d pi T i ∈W – G r a y r e g io n in t h e g r a p h p r e s e n t s fe a s ib le ∀0 < t ≤ LCMW , dbfEDF ሺ tሻ≤ sbfR ሺ W, tሻ r e s o u r c e a llo c a t io n , where LCMW is the least common multiple of pi for all Ti ∈ W . 0 .2 8 L e ts a s s u m e th a t Π= 1 0 , • – W e n e e d t o a llo c a t e a t le a s t 2 .8 (a s Θ) to R I .S h in , I . L e e “C ompos itional real-time – R o u n d in g it a n d w e g e t Γ(1 0 , 3 ) s cheduling framework with periodic model,” A C M T r a n s . o n E m b e d d e d C o m p u t in g S y s t e m s V o l.7 (3 ), 2 0 0 8 0 2 /2 5 /0 9 16
  • 42. T o m a k e a g g r e g a tio n w o r k • T o in c o r p o r a te th e h ie r a r c h ic a l s c h e d u lin g fr a m e w o r k – N e e d a to o l t o c a lc u la t e w ith t h e g iv e n ta s k s e t • R e s o u r c e s u p p ly b o u n d >= R e s o u r c e d e m a n d bound – X e n s h o u ld p r o v id e e n o u g h r e s o u r c e s to R T O S • R T O S c a lc u la te s d e m a n d b o u n d (to ta l r e s o u r c e d e m a n d to m e e t th e s c h e d u la b ility ) • X e n p r o v id e s C P U r e s o u r c e to R T O S a t le a s t to r e s o u r c e s u p p ly b o u n d (m in im u m r e s o u r c e s u p p ly fo r a c o r r e s p o n d in g s c h e d u lin g p o lic y ) 0 2 /2 5 /0 9 17
  • 43. C h a lle n g e to X e n HOW TO DE AL WITH PR E DIC TABILITY? 0 2 /2 5 /0 9 18
  • 44. H o w to H a n d le In te r r u p ts in T im e - b o u n d e d fa s h io n ? • P r o b le m – X e n ’s d o m a in m o d e l s p lits p h y s ic a l I/O p r o c e s s in g fr o m v ir tu a l Dom 0 RT- m a c h in e Dom U (physical Dom U driver) • A d d itio n a l la te n c y • U n b o u n d e d -p r o c e s s in g 1. Asynch. 2. VM tim e Inter-VM comm. S cheduling – D om 0 m ay be kept busy (n o t -t im e b o u n d e d ) Xen i.e . ta r g e t g u e s t m a y n o t b e s c h e d u le d im m e d ia te ly 0 2 /2 5 /0 9 19
  • 45. S o lu tio n 1 – P u ttin g R T g u e s t a t D om 0 • At D om 0 – S p e c ia l c o n t r o l/d r iv e r d o m a in – F o r fa s t e r I/O r e s p o n s e • G o o d fo r tim e ly in te r r u p t p r o c e s s in g • Cons R T -D o m 0 Dom U ( Additional I/O – A n o th e r n o n -R T V M ’s I/O (n o n -R T processing for DomU) g u e s t) p r o c e s s in g is a ffe c t e d • H a r d to s u p p o r t s c h e d u la b ility a n a ly s is Xen (n o n -R T g u e s t p r o c e s s in g , w h ic h is n o t tim e -b o u n d e d ) – R T g u e s t c a n b e o v e r lo a d e d In te r r u p t fo r d o m U (n o n -R T g u e s t) w ith to o m a n y in te r r u p ts 0 2 /2 5 /0 9 20
  • 46. S o lu tio n 2 - A d o p tin g R e a l-tim e S u b la y e r (R T L ) • L e t R T g u e s t a c c e s s p h y s ic a l d e v ic e s d ir e c t ly – R T d e v ic e s a r e d e d ic a te d to R T g u e s ts – In te r r u p t s e r v ic e r o u tin e (IS R ) o f R T g u e s t s h o u ld b e m in im a l • A d d r e a l-tim e s u b la y e r to p r o v id e tim e -b o u n d e d in te r r u p ts fo r R T g u e s t – H a n d le R T g u e s t’s in te r r u p t fir s t – T h r o ttle in te r r u p t p r o c e s s in g fo r R T g u e s t a n d n o n -R T g u e s t • S e le c t iv e ly d e liv e r in te r r u p t s t o d o m 0 b y m o n ito r in g in c o m in g in te r r u p t s • T o a v o id u n b o u n d e d in te r r u p t p r o c e s s in g fo r n o n -R T g u e s t e .g .) n e tw o r k flo o d in g RT- N o n -R T R T -D o m U D om 0 Dom U Dom U R T d e v ic e Always delivered d r iv e r s S electively delivered Prioritized R T guest’s interrupt processing Xen R TL Xen R TL (Throttle interrupt (physical interrupt handler) processing ) 0 2 /2 5 /0 9 21
  • 47. M o re o n R T L • R T L c o n tr o ls th e in c o m in g r a te o f th e a g g r e s s iv e in te r r u p ts – d is c a r d in te r r u p t s w h e n t o o m a n y if c u r r e n t in te r r u p t in c o m in g r a te > m a x im u m in te r r u p t r a te th r e s h o ld • M a x . in te r r u p t r a te c o u ld b e d e r iv e d f r o m a v a ila b le c p u b a n d w id th fr o m s c h e d u la b ilit y a n a ly s is 0 2 /2 5 /0 9 22
  • 48. D e v e lo p m e n t s ta tu s • P o r te d u C /O S -II o v e r X e n A R M p la tfo r m – F r e e s c a le iM X 2 1 • B e in g im p le m e n te d – H ie r a r c h ic a l s c h e d u le r – T o o ls fo r s c h e d u la b ility a n a ly s is –RTL • P r e v ie w a t h ttp ://w w w .y o u tu b e .c o m /w a tc h ?v = V li9 z b 6 2 C e o 0 2 /2 5 /0 9 23
  • 49. C o n c lu s io n • R e a l-tim e s u p p o r t is im p o r ta n t • X e n c a n d o it 0 2 /2 5 /0 9 24
  • 50. THANKS ! 0 2 /2 5 /0 9 25