--%>

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 : Simple Sorting Program in C Shell

    Assignment: Sorting You will write a simple sorting program. This program should be invoked as follows: shell% ./fastsort -i inputfile -o outputfile

  • Q : Which kernel objects is utilize for

    Which kernel objects is utilize for thread Synchronization on various processes? Answer: For thread synchronization on various processes kernel objects are utilize

  • Q : Is it possible to encode mathematics

    Is it possible to encode mathematics using XML?

  • 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 : Define Constant Constant : It is the

    Constant: It is the memory block where value can be stored once although can’t modify later on throughout program execution. Example: const int pi =3.14;

  • Q : Who is liable for XML Who is liable for

    Who is liable for XML?

  • Q : Define Deadlock Deadlock : A situation

    Deadlock: A situation which occurs whenever two threads each acquires the lock to one of a set of resources which they both require.

  • Q : Explain the relationship between XHTML

    Explain the relationship between XHTML and SGML.

  • Q : Describe Throw an exception Throw an

    Throw an exception: Whenever an exceptional circumstance occurs in a program - frequently as an outcome of a logical error and exception object is formed and thrown. When the exception is not caught by an exception handler, the program will finish wit

  • Q : Web based programming homework

    Component 2 Task b: Task Description Computing students at this University who study on undergraduate courses require a method to view their module marks and to see how they are progressing on the module. You have been asked to develop a web