Section 12.3: The working set (Frame 3)                     [prev][home][     ]

In real operating systems, thrashing can be induced artificially by having a program declare a huge array and randomly access parts of it repeatedly. Real programs can thrash if they are only allotted a few frames in a multiprogramming system. This not only slows down the individual program that is thrashing, but puts a huge burden on the I/O system, thereby slowing everybody down. The end result is that the system slows to the barest crawl. This author used to work on a small VAX 8260 at a large university and when it got very busy, and many users were logged in simultaneously, the slowdown was ridiculous. You could press a key and not see any reaction on your screen for 30 seconds. Hitting return to submit even the simplest command was a kamikaze act since you knew it wouldn't respond for hours! This kind of intolerable situation is the dark side of virtual memory and multiprogramming systems.