--%>

What is SLAM

SLAM is a Microsoft project that blurs the line between static analysis and model checking and deductive reasoning. The main goal of SLAM is to check temporal safety properties of C programs (it actually checks that a program correctly uses the interface to an external library) while minimizing the problem of false positives (by using counterexample-driven refinement) without overburdening the users with code annotations. SLAM is original in the sense that it first creates a Boolean abstraction of the original program, then refines the abstraction until it can prove the property or produce a counterexample.

SLAM is one of the rare model checkers with a successful technology transfer story. Indeed, the SLAM analysis engine forms the core of a newly released tool called Static Driver Verifier (SDV) that systematically analyzes the source code of Microsoft Windows device drivers against a set of rules that define what it means for a device driver to accurately interact with the Windows operating system kernel.

   Related Questions in Programming Languages

  • Q : What is First in-first out First in,

    First in, first out: It is FIFO semantics of the queue data structure. Items are eliminated in the order in which they arrived in the queue; therefore older items are always eliminated before newer ones.

  • Q : What is an IP address IP address : An

    IP address: An Internet Protocol (abbreviated as IP) address for a networked computer. Presently, IP addresses comprises of 4-byte values, written in dotted decimal notation, like 129.12.0.1. In future, IP addresses will be 16-bytes long to accommodat

  • Q : Describe Real number Real number : It

    Real number: It is a number with an integer and a fractional portion. The primitive types double and float are employed to symbolize real numbers.

  • Q : Explain Semantic error Semantic error:

    Semantic error: It is an error in the meaning of program. A statement might contain no syntax errors, however might still break the rules of Java language. For example, when ivar is an int variable, the shown statement is syntactically correct

  • Q : Uses of BYTE Write a program that shows

    Write a program that shows the uses of BYTE, WORD and DWORD?

  • Q : What does WSDL stand for What does WSDL

    What does WSDL stand for?

  • Q : Explain Package declaration Package

    Package declaration: It is a declaration employed to name a package. This should be the first item in the source file, preceding any import statements. For example,     pa

  • Q : What is an Overriding for chaining

    Overriding for chaining: It is a form of method overriding in which the sub-class version of a method verifies to see whether it can react to the message on its own and just calls the super-class version of the method.

  • Q : Explain Cohesion Cohesion : The level

    Cohesion: The level to which a component executes a single well-stated task. A strongly cohesive technique, for example, will execute a single task, like adding an item to a data structure, or sorting several data, while a weakly cohesive technique wi

  • Q : Use of UpdateProgress control in AJAX

    What is the use of UpdateProgress control in AJAX?