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

Write a program to create a heap file, Write a program to create a heap fil...

Write a program to create a heap file that holds the records in the file " data_2013 " The source records are variablelength.However, the heap file should hold fixed-length reco

Delete a given node from a doubly linked list, Algorithm to Delete a given ...

Algorithm to Delete a given node from a doubly linked list Delete a Node from Double Linked List DELETEDBL(INFO, FORW, BACK, START, AVAIL,LOC) 1. [Delete Node] Set FOR

Algorithms, Data array A has data series from 1,000,000 to 1 with step size...

Data array A has data series from 1,000,000 to 1 with step size 1, which is in perfect decreasing order. Data array B has data series from 1 to 1,000,000, which is in random order.

Frequency count, what is frequency count with examble

what is frequency count with examble

Storing street addresses with doubly linked lists, Write a C++ program with...

Write a C++ program with header and source les to store street addresses using the Doubly Linked List ADT. Modify the Node class from Lab Assignment 3 so that it becomes a node in

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

Hasing and indexing, differentiate between indexing and hashing in file org...

differentiate between indexing and hashing in file organization

Nothing, c++ To calculate the amount to be paid by a customer buying yummy ...

c++ To calculate the amount to be paid by a customer buying yummy cupcakes for his birth day party

Data structures, 1.  You are required to hand in both a hard copy and an el...

1.  You are required to hand in both a hard copy and an electronic copy of the written report on the project described in A, including all the diagrams you have drawn.  2.  You

Determine the class invariants- ruby, Determine the class invariants- Ruby ...

Determine the class invariants- Ruby Ruby has many predefined exceptions classes (like ArgumentError) and new ones can be created easily by sub-classing StandardError, so it's

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