Presentation on theme: "The Leading Edge of Real-Time and Embedded Solutions Real Time OSGi Glenn Coates, Sr. Design Consultant."— Presentation transcript:
The Leading Edge of Real-Time and Embedded Solutions Real Time OSGi Glenn Coates, Sr. Design Consultant
Slide 2 PERC Product Line PERC Ultra – soft real-time Java PERC Pico - hard real-time Java PERC Raven - safety-critical Java
Slide 3 Benefits of OSGi for Real Time Systems OSGi provides many benefits for SRT systems and potentially HRT systems –Runtime maintenance and upgrade –Component abstraction and software decomposition However, a number of issues need to be considered. RT OSGi bundles, must be compatible with one another –Functional Viewpoint –Real Time View point –Memory Usage and CPU usage –Timing compatibility in RT systems is often as important as functional compatibility. Real Time partitioning within OSGi
Slide 4 OSGi for Soft Real Time Each OSGi Soft Real Time Bundle could specify: –CPU usage budget – Memory utilization budget –Obtained via profiling, and measurement –Resource budgets need to be “enforced” by the OSGI platform Look at existing Adaptive Partitioning Systems for Soft and Firm Real Time Systems –Enforcement of CPU budgets under heavy/full load –Components can borrow free CPU time from other components –CPU slack time is not wasted –Resource budgets can be modified at run-time so system can adapt to fault conditions or other scenarios
Slide 5 Hard Real Time Java Missed deadlines cannot be tolerated Very small memory footprint Throughput efficiency of optimized C Simplicity of run-time environment No garbage collection, Scoped Memory used instead Compile-time proof that system is free from memory errors. Support for local static analysis instead of brittle global static analysis to automatically determine worst case resource needs
Slide 6 OSGi Hard Real Time Each OSGi HRT Bundle could specify: –Worst Case CPU Utilization –Worst Case memory utilization –Based on static analysis or programmer annotations –Worst case resource budgets need to be “guaranteed” by the OSGI platform Example, ARINC 653 OS Partitioning for Safety Critical Avionics –Spatial Partitioning - isolation, safety and integrity –Temporal Partitioning - Hard enforcement of component CPU usage
Slide 8 Conclusion Smaller OSGi for Embedded RT Systems - existing OSGi is too big Real Time Partitioning to prevent Bundles from interfering with one another. Look at existing Adaptive Partitioning Systems for Soft Real Time Systems OSGi Look at ARINC 653 OS Partitioning for Hard Real Time OSGi One OSGi does not fit into every environment. Could a layered OSGi with distinct profiles be adopted?