1 / 8

Real Time OSGi

Real Time OSGi. Glenn Coates, Sr. Design Consultant. PERC Product Line. PERC Ultra – soft real-time Java PERC Pico - hard real-time Java PERC Raven - safety-critical Java. Benefits of OSGi for Real Time Systems. OSGi provides many benefits for SRT systems and potentially HRT systems

van
Download Presentation

Real Time OSGi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Real Time OSGi Glenn Coates, Sr. Design Consultant

  2. PERC Product Line • PERC Ultra – soft real-time Java • PERC Pico - hard real-time Java • PERC Raven - safety-critical Java

  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

  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

  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

  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

  7. OSGi RT Profiles Profile Model? OSGi ‘Profiles’ OSGi-Enterprise OSGi-SRT OSGi-HRT OSGi Core Common OSGi Platform

  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?

More Related