Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Model checking and abstraction
ACM Transactions on Programming Languages and Systems (TOPLAS)
Model checking large software specifications
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Filter-based model checking of partial systems
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Using the ASTRAL model checker to analyze mobile IP
Proceedings of the 21st international conference on Software engineering
Decoupling synchronization from local control for efficient symbolic model checking of statecharts
Proceedings of the 21st international conference on Software engineering
FORTE XII / PSTV XIX '99 Proceedings of the IFIP TC6 WG6.1 Joint International Conference on Formal Description Techniques for Distributed Systems and Communication Protocols (FORTE XII) and Protocol Specification, Testing and Verification (PSTV XIX)
Staging Static Analyses Using Abstraction-Based Program Specialization
PLILP '98/ALP '98 Proceedings of the 10th International Symposium on Principles of Declarative Programming
Specification and verification of concurrent systems in CESAR
Proceedings of the 5th Colloquium on International Symposium on Programming
Construction of Abstract State Graphs with PVS
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Verification Tools for Finite-State Concurrent Systems
A Decade of Concurrency, Reflections and Perspectives, REX School/Symposium
Abstraction-based deductive-algorithmic verification of reactive systems
Abstraction-based deductive-algorithmic verification of reactive systems
Using predicate abstraction to reduce object-oriented programs for model checking
FMSP '00 Proceedings of the third workshop on Formal methods in software practice
Applications of model checking at Honeywell Laboratories
SPIN '01 Proceedings of the 8th international SPIN workshop on Model checking of software
Tool-supported program abstraction for finite-state verification
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Model checking Java programs using structural heuristics
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
Finding Feasible Counter-examples when Model Checking Abstracted Java Programs
TACAS 2001 Proceedings of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Software Construction and Analysis Tools for Future Space Missions
TACAS '02 Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Formal Modeling and Analysis of Advanced Scheduling Features in an Avionics RTOS
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
Property Dependent Abstraction of Control Structure for Software Verification
FME '02 Proceedings of the International Symposium of Formal Methods Europe on Formal Methods - Getting IT Right
Using the Bandera Tool Set to Model-Check Properties of Concurrent Java Software
CONCUR '01 Proceedings of the 12th International Conference on Concurrency Theory
Combining Static Analysis and Model Checking for Software Analysis
Proceedings of the 16th IEEE international conference on Automated software engineering
On Inspection and Verification of Software with Timing Requirements
IEEE Transactions on Software Engineering
Proceedings of the 26th International Conference on Software Engineering
Test input generation with java PathFinder
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Simulation and verification II: event-triggered environments for verification of real-time systems
Proceedings of the 35th conference on Winter simulation: driving innovation
Verifying Time Partitioning in the DEOS Scheduling Kernel
Formal Methods in System Design
Capturing OS expertise in an event type system: the Bossa experience
EW 10 Proceedings of the 10th workshop on ACM SIGOPS European workshop
Application of automated environment generation to commercial software
Proceedings of the 2006 international symposium on Software testing and analysis
Synchronous Modeling and Validation of Priority Inheritance Schedulers
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
An Empirical Study of Structural Constraint Solving Techniques
ICFEM '09 Proceedings of the 11th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
What went wrong: explaining counterexamples
SPIN'03 Proceedings of the 10th international conference on Model checking software
Model extraction for ARINC 653 based avionics software
Proceedings of the 14th international SPIN conference on Model checking software
Formal analysis of the priority ceiling protocol
RTSS'10 Proceedings of the 21st IEEE conference on Real-time systems symposium
CASSIS'04 Proceedings of the 2004 international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
Model checking machine code with the GNU debugger
SPIN'05 Proceedings of the 12th international conference on Model Checking Software
Hi-index | 0.00 |
This paper describes an experiment to use the Spin model checking system to support automated verification of time partitioning in the Honeywell DEOS real-time scheduling kernel. The goal of the experiment was to investigate whether model checking could be used to find a subtle implementation error that was originally discovered and fixed during the standard formal review process. To conduct the experiment, a core slice of the DEOS scheduling kernel was first translated without abstraction from C++ into Promela (the input language for Spin). We constructed an abstract “test-driver” environment and carefully introduced several abstractions into the system to support verification. Several experiments were run to attempt to verify that the system implementation adhered to the critical time partitioning requirements. During these experiments, the known error was rediscovered in the time partitioning implementation. We believe this case study provides several insights into how to develop cost-effective methods and tools to support the software design and implementation review process.