Memory allocation strategies, Data Structure & Algorithms

Assignment Help:

Q. Explain the various memory allocation strategies.                                                          

Ans.

Memory Allocation Strategies are given as follows

If it is not required to move blocks of allocated storage from one area of memory to the other area of memory,  it may be possible to relocate memory blocks that have been freed dynamically. Each time a request is made for storage or saving, the free area large enough to accommodate the size needed must be allocated. The most obvious methods for keeping track of the free blocks is to make use of linear linked list. Each free block contains a field comprising the size of the blocks and a field containing a pointer to be next free block. A global P for free block points to the 1st free block on this list. There are several methods or techniques of selecting the free block to use at when requesting storage.

The First - Fit Method:-       The free list is traversed sequentially or in order  to find the 1st free block whose size is greater than or equal to the amount requested. Once the block is found it is removed from the list (if it is greater than the amount requested). The 1st of these portions remains on the list and the 2nd is allocated.

The Best - Fit Method:- This method obtains the smallest free block whose size is greater than or equal to obtain such a block by traversing the full free list follows.
The Worst Fit method:- In this the system every time allocate a portion of the largest free block in memory. The philosophy at the back of this method is that by using small number of a very big block repeatedly to satisfy the majority of requested, many moderately sized blocks would be left un-fragmented.

The Free Storage List

 

The First fit method is as follows

294_memory allocation strategies.png

 

Best Fit method is as follows


 

1409_memory allocation strategies1.png

 Worst Fit Strategy is as follows

2008_memory allocation strategies2.png


Related Discussions:- Memory allocation strategies

The complexity of searching an element, The complexity of searching an elem...

The complexity of searching an element from a set of n elements using Binary search algorithm is   O(log n)

Create accessors for this data structure, Create a Money data structure tha...

Create a Money data structure that is made up of amount and currency. (a) Write a constructor for this data structure (b) Create accessors for this data structure (c) Writ

How can a lock object be called in the transaction, How can a lock object b...

How can a lock object be called in the transaction? By calling Enqueue and Dequeue in the transaction.

Data Structure, Ask consider the file name cars.text each line in the file ...

Ask consider the file name cars.text each line in the file contains information about a car ( year,company,manufacture,model name,type) 1-read the file 2-add each car which is repr

Advanced trees, Linked list representations contain great advantages of fle...

Linked list representations contain great advantages of flexibility on the contiguous representation of data structures. However, they contain few disadvantages also. Data structur

Storing a sparse matrix in memory, Explain an efficient method of storing a...

Explain an efficient method of storing a sparse matrix in memory. Write a module to find the transpose of the sparse matrix stored in this way. A matrix which contains number o

State hsv colour model, HSV Colour Model Instead of a set of colour pri...

HSV Colour Model Instead of a set of colour primaries, the HSV model uses colour descriptions that have a more intuitive appeal to a user. To give a colour specification, a use

Splaying steps - splay trees, Readjusting for tree modification calls for r...

Readjusting for tree modification calls for rotations in the binary search tree. Single rotations are possible in the left or right direction for moving a node to the root position

Write down the procedure to reverse a singly linked list. , Ans: A pr...

Ans: A procedure to reverse the singly linked list: reverse(struct node **st) { struct node *p, *q, *r; p = *st; q = NULL; while(p != NULL) { r =q;

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