AbstractMost of the research effort towards verification of concurrent software has focused on multithreaded code. On the other hand, concurrency in low-end embedded systems is predominantly based on interrupts. Low-end embedded systems are ubiquitous in safety-critical applications such as those supporting transportation and medical automation; their verification is important. Although interrupts are superficially similar to threads, there are subtle semantic differences between the two abstractions. This paper compares and contrasts threads and interrupts from the point of view of verifying the absence of race conditions. We identify a small set of extensions that permit thread verification tools to also verify interrupt-driven software, ...
With the spread of multi-core systems, the need to write concurrent programs in order to take advant...
The interrupt mechanism in a system-on-chip (SoC) joins the SoCs hardware and software behaviors. We...
We describe an approach to design static analysis and verification tools for concurrent programs tha...
AbstractMost of the research effort towards verification of concurrent software has focused on multi...
Journal ArticleInterrupts are superficially similar to threads, but there are subtle semantic differ...
Interrupt-driven software is difficult to test and debug, especially when interrupts can be nested a...
Interrupt-driven software is difficult to test and debug, especially when interrupts can be nested a...
Abstract—Interrupt-driven software is difficult to test and debug, especially when interrupts can be...
Modern systems involve a complex organization of computational processes sharing access to both proc...
We consider software written for networked, wireless sensor nodes, and specialize software verificat...
Information security is important in academia, industry and government. The use of formal methods in...
AbstractThe paper details the author's thread verification experiences with four applications: Linux...
Ensuring the reliability of multithreaded software systems is difficult due to the interaction betwe...
ManuscriptWhile developing embedded and real-time systems, it is usually necessary to write code tha...
We consider software written for networked, wireless sensor nodes, and specialize software verificat...
With the spread of multi-core systems, the need to write concurrent programs in order to take advant...
The interrupt mechanism in a system-on-chip (SoC) joins the SoCs hardware and software behaviors. We...
We describe an approach to design static analysis and verification tools for concurrent programs tha...
AbstractMost of the research effort towards verification of concurrent software has focused on multi...
Journal ArticleInterrupts are superficially similar to threads, but there are subtle semantic differ...
Interrupt-driven software is difficult to test and debug, especially when interrupts can be nested a...
Interrupt-driven software is difficult to test and debug, especially when interrupts can be nested a...
Abstract—Interrupt-driven software is difficult to test and debug, especially when interrupts can be...
Modern systems involve a complex organization of computational processes sharing access to both proc...
We consider software written for networked, wireless sensor nodes, and specialize software verificat...
Information security is important in academia, industry and government. The use of formal methods in...
AbstractThe paper details the author's thread verification experiences with four applications: Linux...
Ensuring the reliability of multithreaded software systems is difficult due to the interaction betwe...
ManuscriptWhile developing embedded and real-time systems, it is usually necessary to write code tha...
We consider software written for networked, wireless sensor nodes, and specialize software verificat...
With the spread of multi-core systems, the need to write concurrent programs in order to take advant...
The interrupt mechanism in a system-on-chip (SoC) joins the SoCs hardware and software behaviors. We...
We describe an approach to design static analysis and verification tools for concurrent programs tha...