1 / 16

Information Extraction for Real-time Embedded Systems

Information Extraction for Real-time Embedded Systems. Sebastian Fischmeister University of Waterloo esg.uwaterloo.ca. Aim of the Talk.

soleil
Download Presentation

Information Extraction for Real-time Embedded Systems

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. Information Extraction for Real-time Embedded Systems Sebastian FischmeisterUniversity of Waterloo esg.uwaterloo.ca

  2. Aim of the Talk • Provide an overview of the research done within or associated with the project ORF-RE 03-045: “Certification of Safety-critical Software-intensive Systems” • Create an opportunity for integrating of research results and collaborating

  3. Assumptions / Facts • Software is where the innovation is happening!Features sell, apps everywhere • Software size and complexity is thechallenge! Illustrating one root cause:Bridge from Tokyoto Vancouver

  4. Assumptions / Facts • Computing systems are now beyond deep human comprehension. • Evidence: • Software size is growing exponentially • Processor complexity is growing exponentially • 80% of the developer’s time is debugging • We have software with 100M lines of code!

  5. 100M LOC? • Nuclear shutdown system: 40k lines of code • F-22 Raptor (‘97): 1.7M lines of code • F-35 Joint Strike Fighter (‘06): 5.7M lines of code • Boeing 787 (‘09): 6.5M lines of code • Current generation limousine: 100M LOC Can we comprehend such software?

  6. 10 000 dots 100K? 10M?

  7. Trying to Understand the Certification Problem • Toronto: 2,503,281 • Ontario: 13,210,667 • USA: 300M You need to ensure that each person is doingthe right thing at the right time.

  8. Project Sampler:Real-time Embedded Software Group @ University of Waterloo

  9. Vision: Information Extraction Time-triggered runtime verification Time aware instrumentation Crit. CFG & sampling [FM’11] Coverage criterion [RTAS’09, TII] Tagging ISA extension [TR] Debugging, tracing & monitoring framework for RT embedded applications Mem vs. sampl. tradeoff [RV’11] Basics [TR] Security [TR] Preemptive [OPODIS’11] bitvec+[LCTES’11] Super-loop [LCTES’11] Markers [LCTES’10] Observability in software Time-triggered execution monitoring

  10. Understanding Complex Programs • Problem: Can we efficiently trace information flow in a software system? => Tagging • Implemented in QNX at the kernel level • Applied to tracing, resource scheduling, and security • Applicable to testing, monitoring non-functional req. Network Tag Tag Tag Process Tag X

  11. Understanding Complex Programs • Problem: Can we instrument programs without changing the timing (thus the behaviour)? => time-aware instrumentation • Applied to three case studies (OLPC, FS, SNU) • Software solution, hardware solution, code dup • Useful for tracing, testing, information extraction Instrumented Deadline X Original Frequency X X Executiontime

  12. Monitoring Complex Programs • Problem: Can we engineer run-time monitoring and checking of programs? => TTRV Steering Application Eval. properties Program Observe Monitor Report Observer • Time-triggered monitoring & property evaluation • Useful for system safety,security, steering, tuning, …

  13. Trying to Understand Complex Programs • Problem: How do people try to understand software systems? => debugging study Successfuldebuggers Failingdebuggers • Useful to guide future tools • Useful to understand developers’ minds

  14. Conclusions • Software systems are hard to understand • Software is growing in size and complexity => Developers need support to understand what is going on at run time! • We research methods that help developers understand what the software is doing, especially tailored to (real-time) embedded systems. • (We also work on benchmarking & real-time networking) • (We also host the CFI Real-time Embedded Software Lab)

  15. Acknowledgements • This research was supported in part by industrial partners and the Canadian tax payer! • In collaboration with Akramul Azim, Pansy Arafa, Akramul Azim, Shay Berkovich, Borzoo Bonakdarpour, Sina Gholamian, Hany Kashif, Patrick Lam, Samaneh Navabpour, Hiren Patel, Yassir Rizwan, Ahmad Rehman, Johnson Thomas, Mahesh Tripunithara, Augusto Oliveira, Wallace Wu.

  16. Thanks. Questions? (PS: Postdoc positions available,email me at sfischme@uwaterloo.ca)

More Related