The Rare Glitch Project: Verification Tools for Embedded Systems Ed Clarke, David Garlan, Bruce Krogh, Reid Simmons, Jeannette Wing Carnegie Mellon University Pittsburgh, PA.
Download
Report
Transcript The Rare Glitch Project: Verification Tools for Embedded Systems Ed Clarke, David Garlan, Bruce Krogh, Reid Simmons, Jeannette Wing Carnegie Mellon University Pittsburgh, PA.
The Rare Glitch Project:
Verification Tools for Embedded Systems
Ed Clarke, David Garlan, Bruce Krogh,
Reid Simmons, Jeannette Wing
Carnegie Mellon University
Pittsburgh, PA
Embedded Systems
They are highly distributed, multi-task, concurrent
real-time systems.
They control increasingly sophisticated physical
systems.
They operate with increasing autonomy under
adverse and unpredictable conditions.
They eventually will be seamlessly woven into the
fabric of our everyday lives.
Carnegie Mellon: The Rare Glitch Project
2
Jeannette M. Wing
Verification
Grand Challenge
To ensure the correctness of these embedded systems as
they operate in increasingly complex environments—for the
safety and good of the general public.
Opportunity
State of the art verification tools are well suited for control
systems.
Embedded systems have narrow hardware/software
interface.
Embedded systems architectures are simpler and more
regular.
Feasibility
We are not trying to solve the whole verification problem, but
one for a class of systems for which we believe we can make
the next big success story.
Carnegie Mellon: The Rare Glitch Project
3
Jeannette M. Wing
Our Long-Term Vision
To provide design engineers with lightweight “pushbutton” tools, each checking a specific applicationspecific property.
Check
Check
Restart
Deadlock Race
Carnegie Mellon: The Rare Glitch Project
Check
4
Check
Check
Power
usage
Fuel
usage
Jeannette M. Wing
Three Main Thrusts of Our Project
system
environment
Verifying system integrity
Synchronization constraints
Resource constraints
Real-time constraints
Modeling the environment
Hybrid dynamics
Stochastic models
Usability
Extracting models
Explaining tool feedback
Carnegie Mellon: The Rare Glitch Project
5
Jeannette M. Wing
Technical Challenges
Interleavings of multiple task executions
Inter-task dependencies and synchronization
requirements
System resource constraints
Hard real-time constraints
Interactions with complex physical dynamic systems
Adverse, unpredictable environments
Stringent requirements for autonomy, fault tolerance,
and survivability
Carnegie Mellon: The Rare Glitch Project
6
Jeannette M. Wing
Technical Approach
Embedded System
Environment
Design Engineer’s Verification Toolbox
Usability
System Integrity Properties
Synchronization
Constraints
Resource
Constraints
Modeling the Environment
System-Environment Modeling Uncertainty:
Interactions: Hybrid
Stochastic Models
Dynamics
Real-time
Constraints
Foundational Building Blocks
Model checking techniques and tools
Task-level system architecture, task executive languages
Continuous dynamics, quantitative analysis, reliability analysis
Carnegie Mellon: The Rare Glitch Project
7
Jeannette M. Wing
Cross-Cutting Themes
Exploit model checking techniques and tools.
Focus on the task level.
Incorporate continuous domains in our models.
Carnegie Mellon: The Rare Glitch Project
8
Jeannette M. Wing
Verifying System Integrity
Synchronization constraints
Publish-subscribe
architecture
Cyclic-tasks with shared variables
Research question: How can we reason about their aggregate
behavior?
Resource constraints
Continuous,
consumable (e.g., fuel) and
renewable (e.g., bandwidth, disk space)
resources
Research question: How should we specify and verify resource
constraints?
Real-time constraints
Quantitative
timing analysis
Research questions: How can we extend this technique to
continuous time? How can we deal with dynamic process
creation and deletion?
Carnegie Mellon: The Rare Glitch Project
9
Jeannette M. Wing
Modeling the Environment
Hybrid dynamics
Dealing
with both discrete and continuous state
variables
Research question: How can we automate and scale differential
equations models for large systems?
Stochastic models
Dealing
with uncertainty, unpredictability
Using continuous variables (e.g., probabilities) for
reliability and cost-benefit analyses
Research questions: How can we handle dependent events,
cascading of events? Both nondeterministic and probabilistic
state transitions?
Carnegie Mellon: The Rare Glitch Project
10
Jeannette M. Wing
Usability
Extracting models
Synchronization
skeletons
Translators for task execution languages
Research question: How can we balance expressibility of
languages with efficiency of verification and user-friendliness?
Explaining verification tool results
Adopt
AI techniques to explain counterexamples for
task executive programs.
Develop techniques to view and browse the temporal
evolution of counterexamples.
Research question: How can we create virtual execution traces
that can be used by existing visualization tools?
Carnegie Mellon: The Rare Glitch Project
11
Jeannette M. Wing
The Rare Glitch Tool Suite
Checkers and Provers
Specification and
Modeling
Languages
Specification
Analysis Engines
Checkmate
Reliability and
Cost Analyzers
Prism
SMV
Counterexamples
Explanation
Generator
Model
PVS
Abstraction/
Refinement
Processor
Symp
…
…
Carnegie Mellon: The Rare Glitch Project
12
Jeannette M. Wing
Preliminary Planning
Technical
So
far: Technical presentations of our current work
To do
Identification of case studies
Identification of common group project
Continue
to pursue existing two-way and three-way
collaborations
Administrative
Weekly
project meetings, project name, project web
page
Carnegie Mellon: The Rare Glitch Project
13
Jeannette M. Wing
Project Administration
Principal Investigators
Ed
Clarke, David Garlan, Bruce Krogh, Reid Simmons,
Jeannette Wing (POC)
Industrial connections
Honeywell
Technology Center
CMU High Dependability Computing Consortium
Years 3 and 5
Hold
workshops for technical exchange with industry
Carnegie Mellon: The Rare Glitch Project
14
Jeannette M. Wing
Preview of This Afternoon’s Talks
Ed Clarke
Verifying
Bus Protocol Standards for Embedded
Systems
Bruce Krogh
Model
Checking for Hybrid Systems
Jeannette Wing
Scenario
Graph Generation and MDP-Based Analysis
David Garlan
Model
Checking Publish-Subscribe Software
Architectures
Carnegie Mellon: The Rare Glitch Project
15
Jeannette M. Wing