--%>

Explain Untyped Allocations

Untyped Allocations: In C/C++ untyped allocations such as malloc, calloc, and realloc can easily be used to create overlays, which again require translation overhead to keep the corresponding non-overlaid objects consistent.

879_untyped allo.jpg

Most coding guidelines for safety-critical software discourage the use of such dynamic memory allocations, particularly after initialization. Such memory allocations and the corresponding garbage collections can result in unpredictable behavior that could significantly affect both the performance and the verifiability of the code.

Applications that operate within a fixed, pre-allocated area of memory can avoid many of the problems associated with mishandling of memory allocations or de-allocations such as:

  • Forgetting to free the memory
  • Using memory after it was freed
  • Attempting to allocate more memory than physically available
  • Overstepping boundaries on allocated memory

These applications are much easier to verify for memory-related properties and to prove that they can always operate within the available resource bounds.

   Related Questions in Programming Languages

  • Q : System Architecture for Windows

    Tell me about the System Architecture for Windows Programming?

  • Q : Explain Method overriding Method

    Method overriding: It is a method stated in a super class might be overridden by a method of similar name stated in a sub class. The two methods should have similar name and number and types of formal arguments. Any checked exception thrown by sub-cla

  • Q : Self-created What is the difference

    What is the difference among a self-created certificate, Symbian Signed and a Symbian developer certificate?

  • Q : Explain Throw statement Throw statement

    Throw statement: It is a statement employed to throw an exception. For example:     throw new IndexOutOfBoundsException(i+" is too large.");

  • Q : Define Unions Unions: Unions in C and

    Unions: Unions in C and C++ are object overlays—aggregate quantities such as structs, except that each element of the union consists offset 0, and the total size of union is only as large as is required to hold its largest member (Kernighan and

  • Q : Define the term Sibling sub classes

    Define the term Sibling sub classes: Classes which have similar immediate super-class.

  • Q : What is an Interrupt Interrupt : This

    Interrupt: This is an asynchronous message sent to a process or thread which interrupts what it is at present doing. This generally outcomes in an InterruptedException object being received by an interrupted thread. Waiting for an int

  • Q : Define Software engineering Software

    Software engineering: It is the system of applying of an engineering discipline to the implementation, design and maintenance of the software systems.

  • Q : What is an Initializer Initializer : A

    Initializer: A block stated at the outermost level of a class - identical to a method devoid of a header. The initializer blocks are executed, in order, whenever an instance is formed. They are executed prior to the constructor of the defining class,

  • Q : Define the reasons of Process Handle

    Define the reasons of Process Handle Table.