What are the Causes of Thrashing and how to overcome Thrashing in Operating System

This tutorial covers the concepts of thrashing in os. In this thrashing tutorial I am going to discuss about what is thrashing and causes of thrashing and how to overcome thrashing in os.

Thrashing in os

(1) What is thrashing?(2) What are causes of thrashing ?(3) How to overcome thrashing ?(4) Working set model(5) Working set model example.(6) Conclusion.

 This tutorial covers the concepts of thrashing in os. In this thrashing tutorial  I am going to discuss about what is thrashing and causes of thrashing and how to overcome thrashing in os.

So lets start with introduction of thrashing.

(A) What is thrashing ?
 So what is thrashing in os ? Thrashing is nothing but a situation which occurs when a process is spending more time in paging or swapping activities rather than its execution. In thrashing state CPU is so much busy in swapping that it can not respond to user program as much as it required.

(B) Causes of Thrashing
Thrashing is not good from performance point of view. Now in this thrashing tutorial I will tell about the causes of thrashing , actually Initially when the CPU utilization is low, then process scheduling mechanism, loads many processes into the memory at the same time so that degree of multi programming can be increased.
So now in this situation we have more number of processes in memory as compare to the available number of frames in memory. So allocating a limited amount of frames to each process.
When any higher priority process arrive in memory and if frame is not freely available at that time then the other process that occupied the frame which is resides in frame will move to secondary storage and this free frame is now allocated to higher priority process 

causes of thrashing and how to overcome thrashing

In other words we can say that as the memory fills up, process starts to spend a lot of time for the required pages to be swapped in, again  CPU utilization becomes low because most of the processes are waiting for pages.

(C) How to overcome thrashing?

In previous section we found the causes of thrashing. Now in this section of this thrashing tutorial we will see how to eliminate thrashing. Here we will study about the technique or methodology used to reduce the thrashing. In order to prevent thrashing in operating system at first we need to know that how many frames as they really is needed by a process at any time. There is a technique known as working-set model which is used to reduce the causes of thrashing in operating system.

Thrashing technique starts by looking at how frames a process is actually using. This techniques specify a locality model for process execution. According to locality model when a process executes, it moves from locality to locality. Here the term locality represents a set of pages that are actively used together.

(D) Working set model in thrashing

In this part of this thrashing tutorial,  I will discuss about working set model explanation which is a technique to reduce the thrashing in os. Working set model  is based on assumption of Locality. This model used a parameter Δ defines the working-set window. 

The concept is to checking the most recent Δ page references. Working set is a set of pages available in the most recent Δ  or sometime also known as  an approximation of the program's locality.

If the page is in active use it will be in the working set. If it is no longer being used it will dropped from the working set Δ time units after its last reference. So working set is an approximation of program’s locality.

(E) Working set model example

In this section of thrashing tutorial we will understand the concept of  working set model with the help of an example consider the sequence of memory references shown in following Figure.

how to eliminate thrashing
If 6 = 10 memory references, then the working set at time t1 is {1, 2, 5,6, 7}. At time t2, the working set has changed to {3, 4}.

The accuracy of the working set depends on the selection of 6. Because assume that 6 is too small,then it will not encompass the whole locality; but if 6 is too large, then it may overlap several localities.

Main property of working set is its size. If we compute the working-set size, WSS for each process in the system, we can then consider that where D is the total demand for frames that each process is  using the pages in it's working set. Thus process i needs WSS frames.

If the total demand is greater than the total number of available frames (D > m), then it will cause thrashing to occur, because in this case some processes will not have enough frames. Once  has been selected we can use this model easily.

Here the role of operating system is that the operating system monitors the working set of each process and after that it allocates to that working set enough frames to provide it with its working-set size.

If  we have sufficient extra frames, then another process can be initiated. Here it is important to remember that If the sum of the working-set sizes increases and it is exceeding the total number of available frames then operating system selects a process to suspend.

The process's pages are swapped out, and its frames are reallocated to other processes and the suspended process can be restarted later.

(F) Conclusion

So as a conclusion we can say that  working-set model prevents thrashing in os while keeping the degree of multi programming as high as possible. In this way it optimizes CPU utilization.

Main problem with the working-set model in os is keeping track of the working set. Because working-set window is a moving window and at each memory reference, a new reference appears at one end and the oldest reference drops off the other end.A page is in the working set if it is referenced anywhere in the working-set window.

Friends I hope that this thrashing tutorial is helpful to you in understanding the thrashing concept.your suggestions, comments are really valuable for us, to improve the tutorial quality. So give your feedback. 



addressing modes types,1,advance-java,2,advancejava,1,aktu entrance exam,1,aktu exam schedule,1,ASP,1,bare machine,1,base register and limit register,1,C Programming,14,C Plus Plus,1,C Programming,3,C Programming MCQ,2,C Programming Questions,2,C programming study material for gate exam,12,Cache Memory,1,CBNST Program,1,Childcare,1,CJ,2,Cloud Computing,1,COA GATE Questions,1,components of use case diagram,1,Computer Architecture,2,Computer architecture based questions for gate exam,11,Computer Network,4,Computer Network Study Material,2,Computer network study material for gate,2,Computer Networks,6,Computer networks GATE Questions,1,Computer Science Study Material for Gate,19,computer science study material for gate exam,34,content based image retrieval content based image retrieval system,1,contiguous memory allocation,2,Core Java,8,COre Java Interview Questions,1,core java interviews questions,1,cyber crime report,1,Cyber crime status,1,cybercrime and security,1,cybercrime examples,1,Data Mining,1,Data Structure Questions,1,Data Transmission Architecture,1,Data Transmission in wsn,1,DBMS,5,dbms question paper,1,DE,1,Digital Electronics,1,DS,1,dynamic linking,1,dynamic linking in memory management,1,Dynamic memory allocation in c,1,Electroencephalogram,1,File Handling,1,file management in operating system notes,1,FOC,1,Fundamenatl of Computer,1,Gate 2017,5,Gate 2017 Admit card,1,Gate 2017 Exam Schedule,1,Gate 2017 Syllabus,1,gate 2018,1,gate cse study material,1,gate practice set,10,gate study material for computer science,16,Gate study material for computer science 2017,1,GatePreviousYear,1,General,3,HCL Aptitude Test,1,HR Interview Questions,1,HTML,1,Image Processing,1,Important Date of Gate 2017 Exam,1,Information Security Policy,1,internal and external fragmentation,1,JS,1,lagrange's interpolation formula,1,lagrange's interpolation formula examples,1,Looping in C,1,MComputing,1,memory fragmentation,1,memory management,1,memory management questions and answer in os,1,Motivational,4,NCER,2,Numerical Techniques Lab,1,OOT,1,Operating System,12,Operating System Gate Questions,1,Operating System Objective Questions,4,Operating System Questions Bank,1,Operating system questions for gate,1,Operating System Study material,2,operating system study material for gate exam,16,Operating system tutorial,2,page swapping,1,paged memory allocation,1,paged memory allocation in operating system,1,paging technique of memory management .paging technique,1,paging technique of memory management program in c,1,Pointer in C,4,Process based question for gate,1,Quiz on non conventional energy resources,1,Regression testing,1,relocation in memory management,1,relocation registe,1,relocation register,1,resident monitor,1,resident monitor in operating system,1,routing table,1,segmentation in memory management,1,segmentation in memory management in operating system,1,Servlet,1,session tracking,1,session tracking in java,1,session tracking in servlet,1,Software Engineering,10,Software Engineering baes study material for gate,1,software engineering interview questions,1,Software Quality Assurance,3,software verification methods,1,SPM,1,Structure in C,1,Study Material for gate Computer Science,9,swapping in memory management,1,swapping in operating system,1,TCS Code Vita,1,TCS Interview Questions,1,Technical Interview,1,Technical Questions from DBMS,1,Thrashing in Operating System,1,Threads concept in operating system,1,Tips to Learn Coding,1,Top 30 Core Java Interview Questions with Answer,2,top down approach,1,top down approach in programming,1,Types of operating system,1,UML,1,use case diagram explanation,1,website uses cookies,1,what is cookies website,1,What is process control block ?,1,what is software testing?,1,Wireless Sensor Network,3,worst fit algorithm for memory allocation,1,XML,1,
Computer Science Junction: What are the Causes of Thrashing and how to overcome Thrashing in Operating System
What are the Causes of Thrashing and how to overcome Thrashing in Operating System
This tutorial covers the concepts of thrashing in os. In this thrashing tutorial I am going to discuss about what is thrashing and causes of thrashing and how to overcome thrashing in os.
Computer Science Junction
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share. STEP 2: Click the link you shared to unlock Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy