CSE 120 Lecture Notes - Lecture 12: Working Set, Readwrite, Busy Waiting
50 views3 pages
Published on 27 Feb 2018
School
Department
Course
Professor

Resident Set Manageement
-”resident set” - process’ pages in physical memory
-Need: how big the set is, and WHICH pages
Local: limit frame selection to requesting process
-I.e. If a process needs to bring in a page, it HAS to kick out one of its existing pages
-isolates effects of behavior on processes
Global approach: select ANY frame (from ANY process)
-may get more “efficiency”
-lose isolation - processes can negatively affect another
Multiprogramming Level - the # of processes in physical memory
(i.e. non-empty resident sets)
-Processor utilization - how “busy” a process is doing useful work (NOT busy waiting, or time it
takes to execute a context switch)
Goal: as MP level increases, so does Process utilization
Note: not all processes are “compute-bound” - i.e. ONLY use the CPU
-thrashing: we don’t want a whole bunch of processes ASKING for resources, and then they
are all “busy-waiting” to get them
-that’s why you see the curve “crashing down” at the end
-how do we deal with this? Concept of the working set
-we want the resident set to be part of the working set
Denning’s Working Set Model
Working Set: pages referenced during the window of Δ of time units
| ← Working Set → |
t - Δ t
-Varies based on # of pages referenced during the window
-if there is locality, the WS represents pages that were recently used
-if WS doesn’t “fit”, swap a process out!
-instead of “partially” allowing a process’s pages in the window, just remove the process
entirely
=> swap - if you can bring in a process’ WS in PM, then do it. If you can’t, throw it out!
Vs paging - bringing pages in “one at a time”
-WS is a local replacement policy - process’ page fault behavior does NOT affect others
Problem: difficult to implement!
- Have to “categorize” ALL pages as IN the WS or OUT
- Must “timestamp” pages in WS
- Assumes an “intelligent” Δ is picked (we could’ve chose a Δ too big that we have pages
that we really do NOT need, or a Δ too small we are missing crucial pages!)
- Have to experiment on Δ!
-in contrast to Clock - easy to implement, but a global policy
Summary