• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/21

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

21 Cards in this Set

  • Front
  • Back
What is 'Referential Locality'?
Where references cluster in parts of the program.
Compare the short-term and long-term migration of the centre of the local cluster.
Centre of cluster relatively static over short term but over longer periods appears to move
What gives rise to referential locality?
Largely sequential nature of program execution, combined with control flow looping, where memory locations are fetched several times in succession
What does locality tell us?
That only a small subset of a process's instructions and data are required at one time
How can we apply Referential Locality to the concept of paging and segmentation?
Pages or segments needn't be contiguous, so not all pages need to be in RAM at any one time, as long as the next instruction is available.
Explain Virtual Memory.
Where swapping space > physical memory, so a process may demand more memory than amount installed.
What is the Working Memory Set?
The set of pages or segments for a process which are in physical memory.
In the steady state, what proportion of memory is occupied by working sets of ready and running processes?
Fully occupied.
What do we need to consider when deciding the size of a working set?
If it is too large, fewer processes can ever be 'ready'. If too small, additional I/O requests have to be made to the swapping space, which impacts performance.
What is a 'P-Bit'?
A bit in the page table for a process in virtual memory to indicate whether a page is in physical memory.
What is an 'M-Bit'?
Indicates whether the page has been modified since being brought to physical memory, and therefore whether the disk entry needs updating.
What are three benefits of segmented VIRTUAL memory?
(i) If data structures need to grow, due to the variable nature of a segment's size, that data can be swapped out then back into a larger segment. (ii) Sections of running programs can be updated and recompiled independently. (iii) Processes can share segments, containing eg shared functions or data structures (as long as not required at the same time?)
What is a Page Fault?
When a running process requests a page which isn't in memory.
How is a page fault resolved?
One of the frames currently in memory must be swapped out for the required page.
What is Page Thrashing?
Throwing out a page just before it's required means it then has to be swapped back in
What is Demand Paging?
Where pages are allocated only as they are referenced
What is Predictive Pre-Paging?
Where pages are intelligently allocated before they are required.
How can we avoid thrashing?
By only replacing pages unlikely to be needed soon, balanced against how many frames can be allocated to a process, and whether local or global pages should be swapped out
What are two common algorithms for this intelligent swapping?
(i) First In First Out. (ii) Least Recently Used.
What disadvantage is there to the FIFO algorithm?
Could be disadvantageous to long-running programs with high locality.
What disadvantage is there to the LRU algorithm?
While seemingly ideal, has expensive requirement that time stamps be maintained on page usage