--%>

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 : What is an Arithmetic expression

    Expression: It is a combination of operands and operators which generates a resultant value. Expressions contain a resulting type that affects the context in which they might be employed.

  • Q : Explain Recursion Recursion : Recursion

    Recursion: Recursion outcomes from a method being invoked whenever an existing call to the similar method has not yet returned. For example:     public static void countDown(int n){  

  • Q : What is Stepwise refinement Stepwise

    Stepwise refinement: It is a divide and conquer approach to the programming, in which a complicated problem is recursively divided into smaller, sub-problems and more manageable. This approach to program design is frequently employed with structured p

  • Q : State Space Reduction in Java PathFinder

    State Space Reduction: JPF is a so-called explicit-state model checker, as it enumerates all visited states, and therefore suffers from the state explosion problem inherent in analyzing large programs. It also contains garbage collection, because a ty

  • 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 : Define difference between write through

    Define the difference between write through and write back cache?

  • 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 : What is no-arg constructor no-arg

    no-arg constructor: It is a constructor which takes no arguments. By default, each and every class without an explicit constructor has a default no-arg constructor with the public access. Its role is entirely to invoke the no-arg constructor of the in

  • 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,