Boundary tag method in context of dynamic memory management, Data Structure & Algorithms

Assignment Help:

Q. How can we free the memory by using Boundary tag method in the context of Dynamic memory management?                                                                                                      

Ans.

Boundary Tag Method to free Memory is described below

To remove the arbitrary block from the free list (to combine it with the newly made free block) without traversing the whole list, the free list should be doubly linked. Thus each and every free block must contain 2 pointers, next and prev to the next and previous free block on the free block. (This is required when combining a newly freed block with a free block which immediately proceeds in the memory). Thus the front of the free block should be accessible from its rear. One way to do this is to introduce a bsize field at the given offset from the last location or address of each free block. This field exhibits the same value as the size filed at the front of the block. This field have the some value as the size field at the front of the block. The figure below shows the structure of free and allocated blocks under this method which is called the boundary tag method.

free block                                         allocated block

2446_boundary tag.png

Each of the contract fields fflag, prev, size, next, bsize next and bflag is shown as occupying a complete word, although in practice they can be packed together, several fields to a word. We assume that fflag or bflag are logically flags and that true signifies an allocated block and false indicates a free block. Using the information in the free block and the newly freed block, the system merges the two blocks into a bigger hole.


Related Discussions:- Boundary tag method in context of dynamic memory management

Depth-First Traversal, With the help of a program and a numerical example e...

With the help of a program and a numerical example explain the Depth First Traversal of a tree.

The threaded binary tree, By changing the NULL lines in a binary tree to th...

By changing the NULL lines in a binary tree to the special links called threads, it is possible to execute traversal, insertion and deletion without using either a stack or recursi

Undirected graph, Graphs are data structures which consist of a set of vert...

Graphs are data structures which consist of a set of vertices & a set of edges which connect the vertices. A graph where the edges are directed is called directed graph. Or else, i

Algorithm, Example of worse case of time

Example of worse case of time

Graph, multilist representation of graph

multilist representation of graph

Generic doubly linked list, Your objective is to write a generic doubly lin...

Your objective is to write a generic doubly linked list class called CS228LinkedList that implements the List interface and uses a type variable T. All methods except for subList a

Memory allocation strategies, Q. Explain the various memory allocation stra...

Q. Explain the various memory allocation strategies.                                                            Ans. M e m ory Allocation Strategies are given as follow

Sparse matrix, Q. Define a sparse matrix. Explain different types of sparse...

Q. Define a sparse matrix. Explain different types of sparse matrices? Show how a triangular array is stored in memory. Evaluate the method to calculate address of any element ajk

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd