--%>

Explain VeriSoft

VeriSoft (Godefroid, 2005) is a model checker for C and C++; other languages can be used, but components in other languages are treated as black boxes. VeriSoft has been used to find defects in very large telecommunications programs (Chandra, Godefroid, and Palm 2002). It is available for download at the VeriSoft website. This package includes a version of VeriSoft for analyzing multiprocess C or C++ programs whose processes communicate via a predefined set of types of communication objects. It is a “stateless” model checker, in that visited states are not saved. It uses clever partial-order reduction search algorithms utilizing program analysis to avoid revisiting states, and guarantees complete coverage of the state space to some depth, while preserving correctness properties. Verisoft can search for four basic types of errors:

  • Deadlocks.
  • Divergences. A divergence occurs when a process does not attempt to communicate with the rest of the system for more than a given (user-specified) amount of time.
  • Livelocks. A livelock occurs when a process is blocked during a sequence of more than a given (user-specified) number of successive states in the state space.
  • Violations of state assertions, the assertions having been stated using a special operation VS_assert(boolean_expr).

To represent non-determinism in the model or environment, VeriSoft provides a special operation VS_toss to express non-deterministic choice, which is like Verify.random in Java PathFinder.

   Related Questions in Programming Languages

  • Q : Explain SQA personnel regarding

    Do you think that the role of SQA personnel regarding inspections or testing?

  • Q : Property Specifications of Java

    Property Specifications: The most straightforward way to specify and check simple safety properties in JPF is to use Java assertions inside the application under analysis. This allows the specification of properties that only depend on the application

  • Q : State the term XLL State the term XLL?

    State the term XLL? Answer: The specification of XML Link Language has XPointer or XLink.

  • Q : What is Super type Super type : It is a

    Super type: It is a type with a child sub type. The sub-type or super-type relationship is more common than the sub-class or super-class relationship. An interface which is implemented by the class is a super type of the class. The interface which is

  • Q : Define Unicode Unicode : It is a 16-bit

    Unicode: It is a 16-bit character set designed to make it simpler to exchange and exhibit information which makes use of a broad range of dissimilar languages and symbols.

  • Q : Explain If-else statement If-else

    If-else statement: It is a control structure employed to select between performing one of two alternative events.     if(boolean-expression){        // Statem

  • Q : What is an Instruction set Instruction

    Instruction set: The set of instructions which characterize a specific Central Processing Unit. The programs written in the instruction set of one type of CPU can’t usually be run on any other kind of CPU.

  • Q : What is a Real-Time System What is a

    What is a Real-Time System?

  • Q : Define Identifiers Define Identifiers

    Define Identifiers and their naming convention in brief?

  • Q : Define Anonymous object Anonymous

    Anonymous object: An object formed without an identifier. They are generally formed as array elements, actual arguments or method outcomes. For example:     private Point[] vertices = { &n