SlideShare a Scribd company logo
1 of 20
Download to read offline
RETIS Lab
              Real-Time Systems Laboratory

                    7th IEEE Workshop on
          Embedded Systems for Real-Time Multimedia
                      Grenoble, France
                  October, 15th – 16th, 2009

     “The Wizard of OS: a Heartbeat for Legacy
                   Multimedia Applications”




Tommaso Cucinotta, Fabio Checconi    Luca Abeni, Luigi Palopoli 
   Real­Time Systems Laboratory         University of Trento
    Scuola Superiore Sant'Anna
                                               © 2008 Scuola Superiore Sant’Anna
Motivations

    General­Purpose Operating Systems
      Very effective for storing & managing multimedia contents

      Designed for
          • average­case performance

          • serving applications on a best­effort basis

      They are not the best candidate for serving real­time 

         applications with tight timing constraints
          • nor for real­time multimedia

Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Motivations
    Overcoming limitations of a GPOS for multimedia
      Large buffers used to compensate unpredictability
          • ==> no real­time interaction nor low­latency multimedia

      One­application one­system paradigm
          • For example, for low­latency real­time audio processing (jack), 
             gaming, CD/DVD burning, etc...

      POSIX real­time extensions
          • Priority­based, no temporal isolation
          • Not appropriate for deploying the multitude of (soft) real­time 
             applications populating the systems of tomorrow
Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Motivations
    Recent developments in GPOS scheduling
      EDF­based real­time scheduling with temporal isolation
          • Better utilization of resources
          • Independent applications are isolated from the temporal perspective

      Various APIs for accessing the enhanced functionality
          • For example, the FRSH API from
          • For example, the API from 

      They require modifications of the applications
          • at the source­code level

      What about legacy multimedia applications ?
Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Research objectives

    This research aims to
      Allow legacy real­time applications to benefit of real­time 
         scheduling facilities available on a GPOS

      Without any change in the application source­code




Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Proposed approach

    Proposed approach
      An appropriate tracing mechanism observes the 

         application, inferring main parameters affecting a (periodic) 
         multimedia application temporal behaviour:
          • job execution time
          • period

      Scheduling guarantees are automagically provisioned by 

         the OS, according to proper scheduling parameters
          • Based on sound arguments from real­time theory
Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Proposed approach

Comprehensive view
   Application tracing

   Period estimation (events analysis)

   On­line WCET estimation

   Automagic provisioning of 
     scheduling guarantees




Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Real­time theory
    Reservation­based scheduling: (Q, P)
    Known results from the real­time theory
      Not all (Q, P) with
         a given Q/P are
         equal

      Highlighted by the
         supply­bound
         function shown


Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Real­time theory

What are the reservation 
parameters needed for 
correctly scheduling a real­
time periodic task with 
assigned WCET and period ?


The minimum reservation 
utilization is achieved

   when the reservation period 

     equals the task period

       • or any integer sub­
         multiple
Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Core problem

    How to detect the application period ?
      Of a legacy real­time application (no source­code 
         availability, no modifications)
    Proposed approach
      Tracing the application behaviour at run­time

      For the purpose of identifying “periodicity patterns”




Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Legacy application tracing

    Tracing legacy multimedia application
      Tracing what the application does
          • What system calls it periodically calls

               – Waiting, reading time information, posting timers, disk 
                  operations, network operations, etc...

      Tracing how the application behaves temporally
          • When it suspends and resumes

    Results obtained with system­call tracing

Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Legacy application tracing

    Available mechanisms
      strace Linux utility
          • Designed as debugging helper, too much overhead due to the 
             generation of unneeded data

      ptrace() system call
          • Allows an external process to trace the execution of a target 
             process, forcing it to stop at each entry and exit of a system call

    We developed qostrace
      A low­overhead system­call tracer based on ptrace()
Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Period detection

  The tracer produces a sequence of time­stamps




  Time­stamps used to compute a Fourier­transform




  A heuristic catches the first harmonic
Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Heuristic

  Identification of local peaks


  Selection of candidate peaks
  (sensibly higher than average)


  Perform a weighted linear regression 
  among the candidate peaks


  The peak closest to the regression 
  line inclination coefficient wins




Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Experimental results
    Set­up
      Linux OS, with an implementation of the CBS scheduler
      Feedback­scheduling by means of LFS (prior paper)
      Custom video player, using libavformat/libavcodec
          • modified to monitor the Inter­Frame time

      Application tracing by using qostrace
    Validation metrics
      Inter­Frame time

      Allocated bandwidth
Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Experimental results

 Inter­Frame times Cumulative Distribution Function




Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Experimental results




Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
The bill

    What it costs (tracing overhead)
      When using strace: +4,8%

      When using qostrace: +2,75%

         42% overhead reduction with the custom tracer




Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Future work

    Reducing further the tracing overhead
      Kernel­level tracer
    Period detection heuristic
      More comprehensive evaluation

      Precision with respect to available parameters

      Improvements for enhanced precision and reduced 
         overhead

      Facing with multi­thread applications
Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore
Thanks for your attention




                                  Questions ?




Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna
                                                                        © 2007 Scuola Superiore

More Related Content

Similar to The Wizard of OS: a Heartbeat for Legacy Multimedia Applications

Research in Soft Real-Time and Virtualized Applications on Linux
Research in Soft Real-Time and Virtualized Applications on LinuxResearch in Soft Real-Time and Virtualized Applications on Linux
Research in Soft Real-Time and Virtualized Applications on Linuxtcucinotta
 
Modeling and simulation of power consumption and execution times for real-tim...
Modeling and simulation of power consumption and execution times for real-tim...Modeling and simulation of power consumption and execution times for real-tim...
Modeling and simulation of power consumption and execution times for real-tim...tcucinotta
 
Providing Performance Guarantees to Virtual Machines using Real-Time Scheduling
Providing Performance Guarantees to Virtual Machines using Real-Time SchedulingProviding Performance Guarantees to Virtual Machines using Real-Time Scheduling
Providing Performance Guarantees to Virtual Machines using Real-Time Schedulingtcucinotta
 
Virtual Network Functions as Real-Time Containers in Private Clouds
Virtual Network Functions as Real-Time Containers in Private CloudsVirtual Network Functions as Real-Time Containers in Private Clouds
Virtual Network Functions as Real-Time Containers in Private Cloudstcucinotta
 
The IRMOS Real-Time Scheduler
The IRMOS Real-Time SchedulerThe IRMOS Real-Time Scheduler
The IRMOS Real-Time Schedulertcucinotta
 
Building IT with Precision - SUSE Linux Enterprise Real Time
Building IT with Precision - SUSE Linux Enterprise Real TimeBuilding IT with Precision - SUSE Linux Enterprise Real Time
Building IT with Precision - SUSE Linux Enterprise Real TimeJeff Reser
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating SystemsPawandeep Kaur
 
An Exception Based Approach to Timing Constraints Violations in Real-Time and...
An Exception Based Approach to Timing Constraints Violations in Real-Time and...An Exception Based Approach to Timing Constraints Violations in Real-Time and...
An Exception Based Approach to Timing Constraints Violations in Real-Time and...tcucinotta
 
An Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux
An Evaluation of Adaptive Partitioning of Real-Time Workloads on LinuxAn Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux
An Evaluation of Adaptive Partitioning of Real-Time Workloads on Linuxtcucinotta
 
Timeline: An Operating System Abstraction for Time-Aware Applications
Timeline: An Operating System Abstraction for Time-Aware ApplicationsTimeline: An Operating System Abstraction for Time-Aware Applications
Timeline: An Operating System Abstraction for Time-Aware Applicationsbane5isp
 
Employment Hero monitoring solution
Employment Hero monitoring solutionEmployment Hero monitoring solution
Employment Hero monitoring solutionLuong Vo
 
CSense: A Stream-Processing Toolkit for Robust and High-Rate Mobile Sensing A...
CSense: A Stream-Processing Toolkit for Robust and High-Rate Mobile Sensing A...CSense: A Stream-Processing Toolkit for Robust and High-Rate Mobile Sensing A...
CSense: A Stream-Processing Toolkit for Robust and High-Rate Mobile Sensing A...Farley Lai
 
Embedded Intro India05
Embedded Intro India05Embedded Intro India05
Embedded Intro India05Rajesh Gupta
 
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...Lionel Briand
 
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...Amazon Web Services
 
Semantics in Sensor Networks
Semantics in Sensor NetworksSemantics in Sensor Networks
Semantics in Sensor NetworksOscar Corcho
 
Real Time Systems
Real Time SystemsReal Time Systems
Real Time Systemsleo3004
 
Resource Management in (Embedded) Real-Time Systems
Resource Management in (Embedded) Real-Time SystemsResource Management in (Embedded) Real-Time Systems
Resource Management in (Embedded) Real-Time Systemsjeronimored
 
Summarizing videos with Attention
Summarizing videos with AttentionSummarizing videos with Attention
Summarizing videos with AttentionArithmer Inc.
 

Similar to The Wizard of OS: a Heartbeat for Legacy Multimedia Applications (20)

Research in Soft Real-Time and Virtualized Applications on Linux
Research in Soft Real-Time and Virtualized Applications on LinuxResearch in Soft Real-Time and Virtualized Applications on Linux
Research in Soft Real-Time and Virtualized Applications on Linux
 
Modeling and simulation of power consumption and execution times for real-tim...
Modeling and simulation of power consumption and execution times for real-tim...Modeling and simulation of power consumption and execution times for real-tim...
Modeling and simulation of power consumption and execution times for real-tim...
 
Providing Performance Guarantees to Virtual Machines using Real-Time Scheduling
Providing Performance Guarantees to Virtual Machines using Real-Time SchedulingProviding Performance Guarantees to Virtual Machines using Real-Time Scheduling
Providing Performance Guarantees to Virtual Machines using Real-Time Scheduling
 
Virtual Network Functions as Real-Time Containers in Private Clouds
Virtual Network Functions as Real-Time Containers in Private CloudsVirtual Network Functions as Real-Time Containers in Private Clouds
Virtual Network Functions as Real-Time Containers in Private Clouds
 
The IRMOS Real-Time Scheduler
The IRMOS Real-Time SchedulerThe IRMOS Real-Time Scheduler
The IRMOS Real-Time Scheduler
 
Building IT with Precision - SUSE Linux Enterprise Real Time
Building IT with Precision - SUSE Linux Enterprise Real TimeBuilding IT with Precision - SUSE Linux Enterprise Real Time
Building IT with Precision - SUSE Linux Enterprise Real Time
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating Systems
 
Rt kernel-prn
Rt kernel-prnRt kernel-prn
Rt kernel-prn
 
An Exception Based Approach to Timing Constraints Violations in Real-Time and...
An Exception Based Approach to Timing Constraints Violations in Real-Time and...An Exception Based Approach to Timing Constraints Violations in Real-Time and...
An Exception Based Approach to Timing Constraints Violations in Real-Time and...
 
An Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux
An Evaluation of Adaptive Partitioning of Real-Time Workloads on LinuxAn Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux
An Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux
 
Timeline: An Operating System Abstraction for Time-Aware Applications
Timeline: An Operating System Abstraction for Time-Aware ApplicationsTimeline: An Operating System Abstraction for Time-Aware Applications
Timeline: An Operating System Abstraction for Time-Aware Applications
 
Employment Hero monitoring solution
Employment Hero monitoring solutionEmployment Hero monitoring solution
Employment Hero monitoring solution
 
CSense: A Stream-Processing Toolkit for Robust and High-Rate Mobile Sensing A...
CSense: A Stream-Processing Toolkit for Robust and High-Rate Mobile Sensing A...CSense: A Stream-Processing Toolkit for Robust and High-Rate Mobile Sensing A...
CSense: A Stream-Processing Toolkit for Robust and High-Rate Mobile Sensing A...
 
Embedded Intro India05
Embedded Intro India05Embedded Intro India05
Embedded Intro India05
 
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
Approximation-Refinement Testing of Compute-Intensive Cyber-Physical Models: ...
 
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
Big Data in the Cloud: How the RISElab Enables Computers to Make Intelligent ...
 
Semantics in Sensor Networks
Semantics in Sensor NetworksSemantics in Sensor Networks
Semantics in Sensor Networks
 
Real Time Systems
Real Time SystemsReal Time Systems
Real Time Systems
 
Resource Management in (Embedded) Real-Time Systems
Resource Management in (Embedded) Real-Time SystemsResource Management in (Embedded) Real-Time Systems
Resource Management in (Embedded) Real-Time Systems
 
Summarizing videos with Attention
Summarizing videos with AttentionSummarizing videos with Attention
Summarizing videos with Attention
 

The Wizard of OS: a Heartbeat for Legacy Multimedia Applications

  • 1. RETIS Lab Real-Time Systems Laboratory 7th IEEE Workshop on Embedded Systems for Real-Time Multimedia Grenoble, France October, 15th – 16th, 2009 “The Wizard of OS: a Heartbeat for Legacy         Multimedia Applications” Tommaso Cucinotta, Fabio Checconi Luca Abeni, Luigi Palopoli  Real­Time Systems Laboratory University of Trento Scuola Superiore Sant'Anna © 2008 Scuola Superiore Sant’Anna
  • 2. Motivations General­Purpose Operating Systems  Very effective for storing & managing multimedia contents  Designed for • average­case performance • serving applications on a best­effort basis  They are not the best candidate for serving real­time  applications with tight timing constraints • nor for real­time multimedia Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 3. Motivations Overcoming limitations of a GPOS for multimedia  Large buffers used to compensate unpredictability • ==> no real­time interaction nor low­latency multimedia  One­application one­system paradigm • For example, for low­latency real­time audio processing (jack),  gaming, CD/DVD burning, etc...  POSIX real­time extensions • Priority­based, no temporal isolation • Not appropriate for deploying the multitude of (soft) real­time  applications populating the systems of tomorrow Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 4. Motivations Recent developments in GPOS scheduling  EDF­based real­time scheduling with temporal isolation • Better utilization of resources • Independent applications are isolated from the temporal perspective  Various APIs for accessing the enhanced functionality • For example, the FRSH API from • For example, the API from   They require modifications of the applications • at the source­code level  What about legacy multimedia applications ? Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 5. Research objectives This research aims to  Allow legacy real­time applications to benefit of real­time  scheduling facilities available on a GPOS  Without any change in the application source­code Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 6. Proposed approach Proposed approach  An appropriate tracing mechanism observes the  application, inferring main parameters affecting a (periodic)  multimedia application temporal behaviour: • job execution time • period  Scheduling guarantees are automagically provisioned by  the OS, according to proper scheduling parameters • Based on sound arguments from real­time theory Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 7. Proposed approach Comprehensive view  Application tracing  Period estimation (events analysis)  On­line WCET estimation  Automagic provisioning of  scheduling guarantees Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 8. Real­time theory Reservation­based scheduling: (Q, P) Known results from the real­time theory  Not all (Q, P) with a given Q/P are equal  Highlighted by the supply­bound function shown Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 9. Real­time theory What are the reservation  parameters needed for  correctly scheduling a real­ time periodic task with  assigned WCET and period ? The minimum reservation  utilization is achieved  when the reservation period  equals the task period • or any integer sub­ multiple Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 10. Core problem How to detect the application period ?  Of a legacy real­time application (no source­code  availability, no modifications) Proposed approach  Tracing the application behaviour at run­time  For the purpose of identifying “periodicity patterns” Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 11. Legacy application tracing Tracing legacy multimedia application  Tracing what the application does • What system calls it periodically calls – Waiting, reading time information, posting timers, disk  operations, network operations, etc...  Tracing how the application behaves temporally • When it suspends and resumes Results obtained with system­call tracing Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 12. Legacy application tracing Available mechanisms  strace Linux utility • Designed as debugging helper, too much overhead due to the  generation of unneeded data  ptrace() system call • Allows an external process to trace the execution of a target  process, forcing it to stop at each entry and exit of a system call We developed qostrace  A low­overhead system­call tracer based on ptrace() Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 13. Period detection The tracer produces a sequence of time­stamps Time­stamps used to compute a Fourier­transform A heuristic catches the first harmonic Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 14. Heuristic Identification of local peaks Selection of candidate peaks (sensibly higher than average) Perform a weighted linear regression  among the candidate peaks The peak closest to the regression  line inclination coefficient wins Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 15. Experimental results Set­up  Linux OS, with an implementation of the CBS scheduler  Feedback­scheduling by means of LFS (prior paper)  Custom video player, using libavformat/libavcodec • modified to monitor the Inter­Frame time  Application tracing by using qostrace Validation metrics  Inter­Frame time  Allocated bandwidth Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 16. Experimental results Inter­Frame times Cumulative Distribution Function Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 17. Experimental results Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 18. The bill What it costs (tracing overhead)  When using strace: +4,8%  When using qostrace: +2,75% 42% overhead reduction with the custom tracer Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 19. Future work Reducing further the tracing overhead  Kernel­level tracer Period detection heuristic  More comprehensive evaluation  Precision with respect to available parameters  Improvements for enhanced precision and reduced  overhead  Facing with multi­thread applications Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore
  • 20. Thanks for your attention Questions ? Tommaso Cucinotta – Real Time Systems Laboratory (ReTiS) – Scuola Superiore Sant'Anna Sant’Anna © 2007 Scuola Superiore