Path: utzoo!utgpu!jarvis.csri.toronto.edu!qucis!levisonm From: levisonm@qucis.queensu.CA (Mark Levison) Newsgroups: comp.arch Subject: Re: Memory utilization & inter-process contention Summary: Simple solution to thrashing Keywords: paging, swapping, scheduling Message-ID: <219@qusunc.queensu.CA> Date: 23 Aug 89 22:06:38 GMT References: <3332@blake.acs.washington.edu> Organization: Queen's University, Kingston, Ontario, Canada Lines: 23 I am not sure how Mr Yaffe's MIPS box or any other UNIX system handles thrashing but I do remember the solutions that we discussed in my O.S. course a few years ago. Lets assume we have two jobs both of which need approx 20 MBs of memory to avoid thrashing on this system (which has 32 MBs), and that these are both jobs with long run times. Two different users start them up and don't know about each other so the thrashing sets in. The O.S. should be able to detect the thrashing by obversing the very high paging and reduced CPU utilization. It selects one of the processes with the most pages in memory and stomps on it (or swaps it out if you want the technical term). Now the thrashing goes away for a while ... when the CPU and paging are in the right state again the OS swaps the stompped process back in and makes note with all its other information that it has recently been stompped. Now if the second job has not finished then the thrashing problem occurs all over again but this time the second job is stompped because the first job has been that stomp note with it. This will continue until one of the processes has finished. I am suprised that most UNIX boxes don't already support this and my system manager probably won't appreciate me experimenting on our system. Mark Levison levisonm@qucis.queensu.ca