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

Slides:



Advertisements
Similar presentations
Path-aware Time-triggered Runtime Verification Samaneh Navabpour 1, Borzoo Bonakdarpour 2, Sebastian Fischmeister 1 1 Department of Electrical and Computer.
Advertisements

The Technology Integration Planning Model
A Survey of Runtime Verification Jonathan Amir 2004.
Embedded System Lab. What is an embedded systems? An embedded system is a computer system designed for specific control functions within a larger system,
Ensuring Operating System Kernel Integrity with OSck By Owen S. Hofmann Alan M. Dunn Sangman Kim Indrajit Roy Emmett Witchel Kent State University College.
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
DISCo WS - Milan - June 3, Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano – Bicocca Claudio Ferretti.
Automatic Verification of Component-Based Real-Time CORBA Applications Gabor Madl Sherif Abdelwahed
Chess Review May 11, 2005 Berkeley, CA Composable Code Generation for Distributed Giotto Tom Henzinger Christoph Kirsch Slobodan Matic.
Interfaces for Control Components Rajeev Alur University of Pennsylvania Joint work with Gera Weiss (and many others)
Verifying Distributed Real-time Properties of Embedded Systems via Graph Transformations and Model Checking Gabor Madl
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
MOBIES Project Progress Report Engine Throttle Controller Design Using Multiple Models of Computation Edward Lee Haiyang Zheng with thanks to Ptolemy Group.
5/24/011 Advanced Tool Integration for Embedded Systems Assurance Insup Lee Department of Computer and Information Science University of Pennsylvania.
Distinctions Between Computing Disciplines
Software Faults and Fault Injection Models --Raviteja Varanasi.
Renesas Electronics America Inc. © 2012 Renesas Electronics America Inc. All rights reserved. Debugging on RX with IAR Embedded Workbench.
On the relation between software development and control function development in automotive embedded systems Stefan Kowalewski Embedded Software Laboratory.
Slides created by: Professor Ian G. Harris Test and Debugging  Controllability and observability are required Controllability Ability to control sources.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
VTT-STUK assessment method for safety evaluation of safety-critical computer based systems - application in BE-SECBS project.
Computer Science Open Research Questions Adversary models –Define/Formalize adversary models Need to incorporate characteristics of new technologies and.
Overview of EASE results 2009 Prof. Per Runeson – Director.
Reliable Design of Safety Critical Systems Dr. Abhik Roychoudhury School of Computing
Industrial Excellence Center (IXC) Embedded Applications Software Engineering (EASE) Prof. Per Runeson.
Research Activities and Vision at IIT Kharagpur on Embedded Electronic Systems presented by S. Mukhopadhyay, Electrical Engineering, I.I.T. Kharagpur.
PRESTO: Improvements of Industrial Real-Time Embedded Systems Development Process
1 Martin Schulz, Lawrence Livermore National Laboratory Brian White, Sally A. McKee, Cornell University Hsien-Hsin Lee, Georgia Institute of Technology.
Renesas Electronics America Inc. © 2012 Renesas Electronics America Inc. All rights reserved. Class ID: Debugging on RX with IAR Embedded Workbench Micael.
1 Hybrid-Formal Coverage Convergence Dan Benua Synopsys Verification Group January 18, 2010.
Safety-Critical Systems 7 Summary T V - Lifecycle model System Acceptance System Integration & Test Module Integration & Test Requirements Analysis.
Handling Mixed-Criticality in SoC- based Real-Time Embedded Systems Rodolfo Pellizzoni, Patrick Meredith, Min-Young Nam, Mu Sun, Marco Caccamo, Lui Sha.
Static Program Analysis of Embedded Software Ramakrishnan Venkitaraman Graduate Student, Computer Science Advisor: Dr. Gopal Gupta
BridgePoint Integration John Wolfe / Robert Day Accelerated Technology.
Software Safety Case Why, what and how… Jon Arvid Børretzen.
UNIT-1 SOFTWARE PRODUCT AND PROCESS: Introduction – S/W Engineering paradigm – Verification – Validation – Life cycle models – System engineering –
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
1 BBN Technologies Quality Objects (QuO): Adaptive Management and Control Middleware for End-to-End QoS Craig Rodrigues, Joseph P. Loyall, Richard E. Schantz.
Static WCET Analysis vs. Measurement: What is the Right Way to Assess Real-Time Task Timing? Worst Case Execution Time Prediction by Static Program Analysis.
Click to edit Master text styles JavaMOP Hamid Reza Niroomand A presentation to Dr. Babamir.
CrossCheckSimulation Results Conclusions References Model Instrumentation Modeling with CUTS Property Specification SPRUCE Challenge Problem Checking Model.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Supervised By: Dr. Juergen Dingel Suchita Ganesan, Laith “Leo” Juwaidah, Nondini Das Madiha Kazmi, Mojtaba Bagherzadeh Model-Based Monitoring for PapyrusRT.
Test and Verification Solutions128 October 2009 Test and Verification Solutions Improved time to market through automated software testing Mike Bartley,
Computing Systems: Next Call for Proposals Dr. Panagiotis Tsarchopoulos Computing Systems ICT Programme European Commission.
© Fraunhofer IESE Fraunhofer IESE Multi-Language Development of Embedded Systems Dr. Thomas Kuhn Tel.:
Grigore Rosu Founder, President and CEO Professor of Computer Science, University of Illinois
The “Seven Deadly Sins” of Running an Alfresco Project Sabine Otto Director Consulting Services EMEA The Alfresco Implementation Methodology.
Improving System Availability in Distributed Environments Sam Malek with Marija Mikic-Rakic Nels.
Software Systems Division (TEC-SW) ASSERT process & toolchain Maxime Perrotin, ESA.
Open Source Tools for Embedded Systems Exploring Mars with PolarSys The Dawn of the Rover.
How Sage ERP X3 Systems Can Benefit Businesses.  Sage X3 is an affordable and flexible ERP solution designed to help mid-sized companies manage business.
What’s New for the MES Product Suite Tom Hechtman & Jason Coope.
Lazy Preemption to Enable Path-Based Analysis of Interrupt-Driven Code
ATTRACT TWD Symposium, Barcelona, Spain, 1st July 2016
runtime verification Brief Overview Grigore Rosu
State your reasons or how to keep proofs while optimizing code
Group Truck Technology, Powetrain Engineering, Control Systems dept.
Safety-Critical Real-Time Support
Global Challenge Love Heart Lesson 3.
Global Challenge Love Heart Lesson 3.
Global Challenge Love Heart Lesson 3.
The Technology Integration Planning Model
Global Challenge Love Heart Lesson 3.
Global Challenge Love Heart Lesson 3.
Global Challenge Love Heart Lesson 3.
Global Challenge Love Heart Lesson 3.
Global Challenge Love Heart Lesson 3.
Global Challenge Love Heart Lesson 3.
Presentation transcript:

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

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

Assumptions / Facts Software is where the innovation is happening! Features sell, apps everywhere Software size and complexity is the challenge! 3 Illustrating one root cause: Bridge from Tokyo to Vancouver

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! 4

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 5 Can we comprehend such software?

dots 100K? 10M?

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

PROJECT SAMPLER: REAL-TIME EMBEDDED SOFTWARE UNIVERSITY OF WATERLOO 8

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

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. 10 Process Network Tag X

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 11 Instrumented Frequency Execution time Original Deadline X XX

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

Trying to Understand Complex Programs Problem: How do people try to understand software systems? => debugging study 13 Useful to guide future tools Useful to understand developers’ minds Successful debuggers Failing debuggers

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) 14

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. 15

Thanks. Questions? (PS: Postdoc positions available, me at