Explain external fragmentation?, Operating System

Assignment Help:

Explain external fragmentation?

External fragmentation is the process where the free space and the space still available for use, in a piece of storage become separated into many small pieces. It is caused over time by de-allocating ("freeing") and allocating pieces of the storage space of many different sizes. The result is that, although one may perhaps have plenty of free space, it mayn't be able to all used, or at least used as effectively as one would like to.

For instance in a dynamic memory allocation a block of 1000 bytes might be requested but the largest contiguous block of free space or memory hole has only 300. Still if there are ten blocks of 300 bytes of free space separated by allocated regions one still cannot allocate the requested block of 1000 bytes.

External fragmentation also takes place in file systems as many files of different sizes are change size, created, and are deleted. The effect is even worse if a file which is separated into many small pieces is deleted, for the reason that this leaves similarly small regions of free space.

External fragmentation is able to be eliminated through a process called compaction, where existing objects are all moved in to one large adjacent block, keep left all of the remaining free space in one large block. Moving garbage collectors use compaction to enhance dynamic memory allocation performance and tools that defragment disk drives as well perform a compaction step. It is frequently possible to do a partial but still useful form of compaction more efficiently or to continually compact in an incremental fashion therefore that external fragmentation is always kept low.

 


Related Discussions:- Explain external fragmentation?

Explain schemes for defining the logical structure, What are the most commo...

What are the most common schemes for defining the logical structure of a directory? The most common schemes for explaining the logical structure of a directory Single-L

Cpu scheduling alogarithm program in javascript, a program that can do cpu ...

a program that can do cpu scheduling algorithm priority using javascript or php to display gaant chart and calculate waiting and average waiting time

Shared stack is used for parameter passing, Q. What protection problems may...

Q. What protection problems may occur if a shared stack is used for parameter passing? Answer: The contents of the stack could be conciliation by other process(es) sharing th

What is the resident set and working set of a process, What is the resident...

What is the resident set and working set of a process? Resident set is that portion of the process image that is actually in real-memory at a certain instant. Working set is th

Multilevel queue scheduling, Explain multilevel queue scheduling and multil...

Explain multilevel queue scheduling and multilevel feedback queue scheduling #Minimum 100 words accepted#

Explain the benefits of thread over process?, BENEFITS OF THREADS OVER PROC...

BENEFITS OF THREADS OVER PROCESS If implemented correctly after those threads have some advantages of (multi) processes, they take: 1. Less time to create a new thread tha

Perform alpha-beta pruning on the following tree, Perform alpha-beta prunin...

Perform alpha-beta pruning on the following tree. Put an "X" over each node that is pruned. Put the final value next to all other nodes. Indicate which action MAX should take: to B

Differences among user-level threads and kernel-level thread, Q. What are t...

Q. What are two differences among user-level threads and kernel-level threads? Under what situations is one type better than the other? Answer: (1) User-level threads are un

Define the os/2 threads code, Define the OS/2 threads code The sample p...

Define the OS/2 threads code The sample program in Listing is very similar to the NetWare example. OS/2 commands are substituted for the pseudocode commands controlling thread

Distinguish among a streams driver and a streams module, Q. Distinguish amo...

Q. Distinguish among a STREAMS driver and a STREAMS module? Answer: The STREAMS driver controls the physical device that could be involved in a STREAMS operation. The STREAMS

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