--%>

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 : Define the term XSL-FO Define the term

    Define the term XSL-FO. Answr: A sub-element of XSL used for explaining font sizes, how information flows from one page to other and page layouts.

  • Q : CPU programming When a process enters

    When a process enters the CPU, your program must now "fork"and "exe" a stand alone child process. You MUST use "glxgears" for the child process.                            When a context switch occurs

  • Q : What is Homogeneous collection

    Homogeneous collection: A group of objects with similar dynamic type. Arrays are the most general homogeneous collection objects.

  • Q : Define the term Marking interface

    Define the term Marking interface: It is an interface with no methods.

  • Q : What is an Operator Operator : It is a

    Operator: It is a symbol, like -, = or ?: taking one, two or three operands and yielding an outcome. The operators are employed in both arithmetic and Boolean expressions.

  • Q : Types of validation controls of ASP.NET

    List the types of validation controls that are available in the ASP.NET AJAX 4.0?

  • Q : State the term DOM and how does this

    State the term DOM and how does this relate to XML?

  • Q : What is Random Access Memory Random

    Random Access Memory: Random access memory, or RAM, is the memory whose contents are simply accessible to the processing components of a computer. In specific, the time it takes to read and write to a particular portion of the memory does not based on

  • Q : Define Object serialization Object

    Object serialization: The writing of an object's contents in such a manner that its state can be restored, either at a later time, or in a different procedure. This can be employed to store objects between runs of a program, or to transfer or shifts o

  • Q : Explain One Dimensional array One

    One Dimensional array:1) An array is a continuous memory location having similar kind of data in a single row or single column. Declaration in c++ is as under: const int size = 20;int a[size] or int a[2