Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/2157654.2157669acmconferencesArticle/Chapter ViewAbstractPublication PagesfmcadConference Proceedingsconference-collections
research-article

Time-bounded analysis of real-time systems

Published: 30 October 2011 Publication History

Abstract

Real-Time Embedded Software (RTES) constitutes an important sub-class of concurrent safety-critical programs. We consider the problem of verifying functional correctness of periodic RTES, a popular variant of RTES that execute periodic tasks in an order determined by Rate Monotonic Scheduling (RMS). A computational model of a periodic RTES is a finite collection of terminating tasks that arrive periodically and must complete before their next arrival.
We present an approach for time-bounded verification of safety properties in periodic RTES. Our approach is based on sequentialization. Given an RTES C and a time-bound W, we construct (and verify) a sequential program S that over-approximates all executions of C up to time W, while respecting priorities and bounds on the number of preemptions implied by RMS. Our algorithm supports partial-order reduction, preemption locks, and priority locks. We implemented our approach for C programs, with properties specified via user-provided assertions. We evaluated our tool on several realistic examples, and were able to detect a subtle concurrency issue in a robot controller.

References

[1]
C. L. Liu and J. W. Layland, "Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment," Journal of the ACM (JACM), vol. 20, no. 1, pp. 46--61, January 1973.
[2]
"nxtOSEK/JSP Open Source Platform for LEGO MINDSTORMS NXT," http://lejos-osek.sf.net.
[3]
D. C. Locke, D. R. Vogel, L. Lucas, and J. B. Goodenough, "Generic Avionics Software Specification," Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, Technical report CMU/SEI-90-TR-8-ESD-TR-90-209, December 1990.
[4]
N. Kidd, S. Jagannathan, and J. Vitek, "One Stack to Run Them All - Reducing Concurrent Analysis to Sequential Analysis under Priority Scheduling," in Proceedings of the 17th International SPIN Workshop on Model Checking of Software (SPIN '10), Enschede, The Netherlands, September 2010, pp. 245--261.
[5]
K. G. Larsen, P. Pettersson, and W. Yi, "UPPAAL in a Nutshell," International Journal on Software Tools for Technology Transfer (STTT), vol. 1, no. 1--2, pp. 134--152, December 1997.
[6]
V. A. Braberman and M. Felder, "Verification of Real-Time Designs: Combining Scheduling Theory with Automatic Formal Verification," in Proceedings of the 7th ACM SIGSOFT Symposium on Foundations of Software Engineering (FSE '99), ser. Lecture Notes in Computer Science, vol. 1687. Toulouse, France, September, 1999. New York, NY: Springer-Verlag, September 1999, pp. 494--510.
[7]
R. Alur and D. L. Dill, "A Theory of Timed Automata," Theoretical Computer Science (TCS), vol. 126, no. 2, pp. 183--235, April 1994.
[8]
S. Qadeer and D. Wu, "KISS: Keep It Simple and Sequential," in Proceedings of the ACM SIGPLAN 2004 Conference on Programming Language Design and Implementation (PLDI '04). Washington, DC, USA, June 9--11, 2004. New York, NY: Association for Computing Machinery, June 2004, pp. 14--24.
[9]
A. Lal and T. W. Reps, "Reducing Concurrent Analysis Under a Context Bound to Sequential Analysis," in Proceedings of the 20th International Conference on Computer Aided Verification (CAV '08), ser. Lecture Notes in Computer Science, A. Gupta and S. Malik, Eds., vol. 5123. Princeton, NJ, USA, July 7--14, 2008. New York, NY: Springer-Verlag, July 2008, pp. 37--51.
[10]
S. L. Torre, P. Madhusudan, and G. Parlato, "Reducing Context-Bounded Concurrent Reachability to Sequential Reachability," in Proceedings of the 21st International Conference on Computer Aided Verification (CAV '09), ser. Lecture Notes in Computer Science, A. Bouajjani and O. Maler, Eds., vol. 5643. Grenoble, France, June 26 - July 2, 2009. New York, NY: Springer-Verlag, July 2009, pp. 477--492.
[11]
N. Ghafari, A. J. Hu, and Z. Rakamaric, "Context-Bounded Translations for Concurrent Software: An Empirical Evaluation," in Proceedings of the 17th International SPIN Workshop on Model Checking of Software (SPIN '10), Enschede, The Netherlands, September 2010, pp. 227--244.
[12]
M. Emmi, S. Qadeer, and Z. Rakamaric, "Delay-Bounded Scheduling," in Popl11, T. Ball and M. Sagiv, Eds. Austin, TX, USA, January 26--28, 2011. New York, NY: Association for Computing Machinery, January 2011, pp. 411--422.
[13]
A. Biere, A. Cimatti, E. M. Clarke, O. Strichman, and Y. Zue, Bounded Model Checking, ser. Advances in computers. Academic Press, 2003, vol. 58.
[14]
N. Audsley, A. Burns, K. Tindell, and A. Wellings, "Applying New Scheduling Theory to Static Priority Preemptive Scheduling," Software Engineering Journal (SEJ), vol. 8, no. 5, pp. 284--292, May 1993.
[15]
"VxWorks Programmer's Guide."
[16]
R. Mall, Real-Time Systems: Theory and Practice. Prentice Hall, 2009.
[17]
P. Godefroid, Partial-Order Methods for the Verification of Concurrent Systems - An Approach to the State-Explosion Problem, ser. Lecture Notes in Computer Science. Springer-Verlag, 1996, vol. 1032.
[18]
D. Peled, "All from One, One for All: on Model Checking Using Representatives," in Proceedings of the 5th International Conference on Computer Aided Verification (CAV '93), ser. Lecture Notes in Computer Science, C. Courcoubetis, Ed., vol. 697. Elounda, Greece, June 28 - July 1, 1993. New York, NY: Springer-Verlag, June 1993, pp. 409--423.
[19]
D. Bosnacki and G. J. Holzmann, "Improving Spin's Partial-Order Reduction for Breadth-First Search," in Proceedings of the 12th International SPIN Workshop on Model Checking of Software (SPIN '05), ser. Lecture Notes in Computer Science, P. Godefroid, Ed., vol. 3639. San Francisco, CA, August 22--24, 2005. New York, NY: Springer-Verlag, August 2005, pp. 91--105.
[20]
V. Kahlon, C. Wang, and A. Gupta, "Monotonic Partial Order Reduction: An Optimal Symbolic Partial Order Reduction Technique," in Proceedings of the 21st International Conference on Computer Aided Verification (CAV '09), ser. Lecture Notes in Computer Science, A. Bouajjani and O. Maler, Eds., vol. 5643. Grenoble, France, June 26 - July 2, 2009. New York, NY: Springer-Verlag, July 2009, pp. 398--413.
[21]
G. C. Necula, S. McPeak, S. P. Rahul, and W. Weimer, "CIL: Intermediate Language and Tools for Analysis and Transformation of C Programs," in Proceedings of the 11th International Conference on Compiler Construction (CC '02), ser. Lecture Notes in Computer Science, R. N. Horspool, Ed., vol. 2304. Grenoble, France, April 8--12, 2002. New York, NY: Springer-Verlag, April 2002, pp. 213--228.
[22]
E. Clarke, D. Kroening, and F. Lerda, "A Tool for Checking ANSI-C Programs," in Proceedings of the 10th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS '04), ser. Lecture Notes in Computer Science, K. Jensen and A. Podelski, Eds., vol. 2988. Barcelona, Spain, March 29-April 2, 2004. New York, NY: Springer-Verlag, March--April 2004, pp. 168--176.
[23]
V. D'Silva, D. Kroening, and G. Weissenbacher, "A Survey of Automated Techniques for Formal Software Verification," IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD), vol. 27, no. 7, pp. 1165--1178, July 2008.
[24]
F. Laroussinie, N. Markey, and P. Schnoebelen, "Efficient Timed Model Checking for Discrete-Time Systems," Theoretical Computer Science (TCS), vol. 353, no. 1--3, pp. 249--271, March 2006.

Cited By

View all
  • (2021)Bounded Verification of Multi-threaded Programs via Lazy SequentializationACM Transactions on Programming Languages and Systems10.1145/347853644:1(1-50)Online publication date: 9-Dec-2021
  • (2017)Symbolic execution of programmable logic controller codeProceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering10.1145/3106237.3106245(326-336)Online publication date: 21-Aug-2017
  • (2016)Verifying cyber-physical systems by combining software model checking with hybrid systems reachabilityProceedings of the 13th International Conference on Embedded Software10.1145/2968478.2968490(1-10)Online publication date: 1-Oct-2016
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
FMCAD '11: Proceedings of the International Conference on Formal Methods in Computer-Aided Design
October 2011
240 pages
ISBN:9780983567813

Sponsors

In-Cooperation

Publisher

FMCAD Inc

Austin, Texas

Publication History

Published: 30 October 2011

Check for updates

Qualifiers

  • Research-article

Conference

FMCAD '11
Sponsor:

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 14 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Bounded Verification of Multi-threaded Programs via Lazy SequentializationACM Transactions on Programming Languages and Systems10.1145/347853644:1(1-50)Online publication date: 9-Dec-2021
  • (2017)Symbolic execution of programmable logic controller codeProceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering10.1145/3106237.3106245(326-336)Online publication date: 21-Aug-2017
  • (2016)Verifying cyber-physical systems by combining software model checking with hybrid systems reachabilityProceedings of the 13th International Conference on Embedded Software10.1145/2968478.2968490(1-10)Online publication date: 1-Oct-2016
  • (2015)Completeness bounds and sequentialization for model checking of interacting firmware and hardwareProceedings of the 10th International Conference on Hardware/Software Codesign and System Synthesis10.5555/2830840.2830862(202-211)Online publication date: 4-Oct-2015
  • (2015)Lazy-CSeqProceedings of the 30th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE.2015.108(807-812)Online publication date: 9-Nov-2015
  • (2015)Verifying Concurrent Programs by Memory UnwindingProceedings of the 21st International Conference on Tools and Algorithms for the Construction and Analysis of Systems - Volume 903510.1007/978-3-662-46681-0_52(551-565)Online publication date: 11-Apr-2015
  • (2014)Efficient Verification of Periodic Programs using Sequential Consistency and SnapshotsProceedings of the 14th Conference on Formal Methods in Computer-Aided Design10.5555/2682923.2682939(51-58)Online publication date: 21-Oct-2014
  • (2014)Bounded Model Checking of Multi-threaded C Programs via Lazy SequentializationProceedings of the 16th International Conference on Computer Aided Verification - Volume 855910.1007/978-3-319-08867-9_39(585-602)Online publication date: 18-Jul-2014
  • (2013)CSeqProceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE.2013.6693139(710-713)Online publication date: 11-Nov-2013
  • (2013)CSeqProceedings of the 19th international conference on Tools and Algorithms for the Construction and Analysis of Systems10.1007/978-3-642-36742-7_46(616-618)Online publication date: 16-Mar-2013
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media