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

Sequential files, In this section, we will discuss about Sequential file or...

In this section, we will discuss about Sequential file organization. Sequential files have data records stored in a particular sequence. A sequentially organized file might be stor

Graphs, In this unit, we will describe a data structure called Graph. Actua...

In this unit, we will describe a data structure called Graph. Actually, graph is a general tree along no parent-child relationship. In computer science, Graphs have several applica

Rooted tree, It does not have any cycles (circuits, or closed paths), which...

It does not have any cycles (circuits, or closed paths), which would imply the existence of more than one path among two nodes. It is the most general kind of tree, and might be co

Define graph, A graph is a mathematical structure giving of a set of vertex...

A graph is a mathematical structure giving of a set of vertexes (v1, v2, v3) and a group of edges (e1, e2, e3). An edge is a set of vertexes. The two vertexes are named the edge en

Explain th term input and output- pseudocode, Explain th term input and ou...

Explain th term input and output-  Pseudocode Input and output indicated by the use of terms input number, print total, output total, print "result is" x and so on.

Linked list, write an algorithm for multiplication of two sparse matrices u...

write an algorithm for multiplication of two sparse matrices using Linked Lists

linear-expected-time algorithm, Implement a linear-expected-time algorithm...

Implement a linear-expected-time algorithm for selecting the k th smallest element Algorithm description 1. If |S| = 1, then k = 1 and return the element in S as the an

Define heap, HEAP  A heap is described to be a binary tree with a key i...

HEAP  A heap is described to be a binary tree with a key in every node, such that  1-All the leaves of the tree are on 2 adjacent levels. 2- All leaves on the lowest leve

Ruby implements range of t abstract data type, Ruby implements Range of T A...

Ruby implements Range of T Abstract data type Ruby implements Range of T ADT in its Range class. Elements of carrier set are represented in Range instances by recording interna

Hotel reservation system, pls i want a psuedo code for hotel reservation sy...

pls i want a psuedo code for hotel reservation system.

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