Levels of Specialization in Real-Time Operating Systems

ions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISR Abstractions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029ions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029 LUH Levels of Specialization in Real-Time Operating Systems – Case Study: GPSLogger 16 – 22 Case Study: GPSLogger Abstractions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISRions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISR Abstractions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029ions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029 LUH Levels of Specialization in Real-Time Operating Systems – Case Study: GPSLogger 16 – 22 Case Study: GPSLogger Abstractions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISRions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISR Abstractions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029ions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029 LUH Levels of Specialization in Real-Time Operating Systems – Case Study: GPSLogger 16 – 22 Case Study: GPSLogger Abstractions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISR Abstractions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029ions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISR Abstractions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029 LUH Levels of Specialization in Real-Time Operating Systems – Case Study: GPSLogger 16 – 22 LED Thread sleep Case Study: GPSLogger Abstractions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISR Abstractions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029ions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISR Abstractions Instances Interactions Text segment (bytes) 91,084 91,196 90,572 Data & BSS segment (bytes) 18,328 17,472 16,712 Startup time (cycles) 60,426 53,827 51,029 LUH Levels of Specialization in Real-Time Operating Systems – Case Study: GPSLogger 16 – 22 LED Thread sleep Agenda Motivation Specialization Levels of System-Software Specialization Case Study: GPSLogger Benefits and Challenges Summary LUH Levels of Specialization in Real-Time Operating Systems – Case Study: GPSLogger 17 – 22