--%>

Use of setjmp and longjmp

Use of setjmp() and longjmp(): In C/C++, setjmp() saves the contents of the registers at a particular state in the program and longjmp() will restore that state later. In this way, longjmp() “returns” to the state of the program when setjmp() was called.

In general these functions are problematic for C++ because they do not support C++ object semantics. In particular, they do not ensure the proper destructor calls and so objects may not be cleaned up properly, leaving the system in a bad state.

Using these functions may also degrade performance by preventing optimization on local variables. For C++ exception handling, try/catch constructs are recommended instead.

214_serjmp.jpg

For model checking in particular, non-hierarchical long jumps are difficult to model with modeling languages like Java. These functions need to do register restoration which requires modeling of registers and their related operations, adding considerable overhead to model-checking effort.

   Related Questions in Programming Languages

  • Q : Use Polymorphism Use Polymorphism :

    Use Polymorphism: Programs, especially those converted from non-OOP languages like C, sometimes use state where they should use inheritance. For example,

    Q : Explain the way of the Orbeon Explain

    Explain the way of the Orbeon.

  • Q : Define the term Critical section

    Critical section: It is a section of code in which there is potential for a race hazard. The critical sections made use of the synchronized statements or methods.

  • Q : Explain Polymorphism Polymorphism : It

    Polymorphism: It is the ability of an object reference to be employed as if it referred to an object with various forms. The polymorphism in Java outcomes from both class inheritance and interface inheritance. The actually different forms frequently o

  • Q : Explain Infinite loop Infinite loop :

    Infinite loop: The loop whose termination test never computes to false. At times this is a deliberate act on the portion of the programmer, employing a construct like:         whi

  • Q : Define Bootstrap classes Bootstrap

    Bootstrap classes: The classes which make up the Java Platform Core Application Programming Interface (API), like those found in the java.lang, java.io and java.io packages.

  • Q : Main purpose of Child Header files

    Illustrate what is the main purpose of Child Header files?

  • Q : Define Thread starvation Thread

    Thread starvation: It is a condition which applies to a thread which is prevented from running by other threads which do not yield or turn into blocked.

  • Q : DOT Net namespace Explain the main

    Explain the main classes given by the .NET namespace to process the XML files.

  • Q : Define the term Boolean Boolean : It is

    Boolean: It is one of the Java's primitive types. The Boolean type has merely two values: true and false.