--%>

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 Binary operator Binary operator

    Binary operator: It is an operator taking two operands. Java has numerous binary operators, like the arithmetic operators +, -, *, / and %, and the Boolean operators &&, || and ^, among others.

  • Q : What does compatibility testing include

    What does compatibility testing include and who will perform the testing?

  • Q : What is Universal Character Set or UTF

    UTF: Universal Character Set (abbreviated as UCS) Transformation Format. The format for symbolizing multibyte characters which is compatible with programs and file systems which were only made to handle single byte characters.

  • Q : Explain myriad of computer systems of

    Explain myriad of computer systems of your target users?

  • Q : Platform security of S60 third Edition

    How do I know that platform security abilities my S60 3rd Edition application needs?

  • Q : What is Round robin allocation Round

    Round robin allocation: It is an allocation of time slices which repeatedly cycles regarding a set of eligible threads in the fixed order.

  • Q : Define Race hazard Race hazard : It is

    Race hazard: It is a situation which occurs between multiple threads sharing a resource. The race hazard occurs whenever one thread's suppositions regarding the state of a resource are invalidated by the actions of the other thread.

  • Q : What is decimal Decimal: The number

    Decimal: The number representation in decimal is base 10. In base 10, the digits 0 to 9 are utilized. Digit positions symbolize successive powers of 10.

  • Q : Reading Algorithms Assignment 1:

    Assignment 1: Algorithms Rules: See the Assignment Rules file on the class Moodle site. 1 Reading Algorithms (20 points) Input: A nonempty string of characters S1S2 . . . Sn, and a positive integer n giving the number of characters in the string. Output: See t

  • Q : What is Break statement Break statement

    Break statement: A statement employed to break out of a loop, switch statement or labeled block. In all situations, control continues with the statement instantly, subsequent to the containing block.