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?

Dynamically loadable kernel modules, Q. Dynamically loadable kernel module...

Q. Dynamically loadable kernel modules give elasticity when drivers are added to a system however do they have disadvantages too? Under what situations would a kernel be compiled

Define process swapping , Swapping : Whole process is moved from the swap...

Swapping : Whole process is moved from the swap machine to the main memory for execution. Process size must be equal or less than to the used main memory. It is easier to exe

Estimate the balking rate, People arrive at a barber shop at the rate of on...

People arrive at a barber shop at the rate of one every 4.5 minutes. If the shop is full (it can hold five people altogether), 30% of the potential customers leave and come back i

Explain formal language grammar, Explain Formal Language Grammar A form...

Explain Formal Language Grammar A formal language grammar is a set of formation rules which explain which strings formed from the alphabet of a formal language are syntacticall

Transferring files from windows to unix, Transferring files from Windows to...

Transferring files from Windows to Unix Be very careful transferring files from Windows to Unix. If you do transfer a file from Windows to Unix open the file, in Unix, using vi

How can the index blocks be implemented, How can the index blocks be implem...

How can the index blocks be implemented in the indexed allocation scheme? The index block can be implemented as follows a. Multilevel scheme b. Linked scheme c. Combin

Socket, socket based fortune teller sever.your program should create a serv...

socket based fortune teller sever.your program should create a server that listens to a specific port when a client receives a connection the server should respond with a random fo

Define a set of methods that allow executing a program, A set of methods th...

A set of methods that allow executing a program which is not completely in memory   is called A set of methods that allow executing a program which is not completely in memory

Processes and programs, Processes and Programs Process is a dynamic...

Processes and Programs Process is a dynamic entity which is a program in execution. A process is a sequence of information executions. Process exists in a limited span of t

Pthreads, A thread is defined as an independent stream of instructions that...

A thread is defined as an independent stream of instructions that can be scheduled to run as such by the operating system. Each program contains a number of threads which can be ru

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