It's UWAweek 42 (2nd semester, week 12)

help2002

This forum is provided to promote discussion amongst students enrolled in CITS2002 Systems Programming.
Please consider offering answers and suggestions to help other students! And if you fix a problem by following a suggestion here, it would be great if other interested students could see a short "Great, fixed it!"  followup message.
Displaying selected article
Showing 1 of 738 articles.
Currently 181 other people reading this forum.


 UWA week 41 (2nd semester, week 11) ↓
SVG not supported

Login to reply

👍?
helpful
6:26am Thu 10th Oct, Joshua N.

ANONYMOUS wrote:
> I'm having some difficulties grasping a few ideas and want some clarifications on them if possible. So, lets say the contents of in.txt are, "0 1 1 1 1 2 2 2 2 3 3 3 0", you'd end up with the first 0 being evicted without another page from process 0 being 'loaded' in RAM at that point in time, right?
Yes.
> If that's the case, when you're storing the pointer for the 2nd 0 into RAM, you'd still be 'loading' in the 2nd page of process 0 from the disk into RAM instead of 'loading' in the first page (as the pointer to that page was previously stored in ram before all of process 0 was evicted) right?
Yes.
> If that's the case, are we meant to/allowed to have an extra structure/array to hold the current page of each process at a time? Or are we meant to just treat it as though we are starting from "page 0" again?
You need to remember the last page you loaded for each process. It's up to you how to determine how to do that.
> (This issue occurs as, due to the Global LRU policy dictating that, as the RAM would be 'filled' up by process 1 and 2 (which evicts and replaces itself using the Local LRU policy), the 1st page of process 0 would be evicted and replaced by process 3, before process 0 can be reintroduced into RAM, (my current understanding for the LRU policies is, that I would iterate through ram, find the lowest last accessed time and replace that "slot" with the new frame from the new process. This is only really for reference in case I'm misunderstanding something)) > > I could just be totally misunderstanding the concept entirely as well, I'm not too sure, so any clarification would be helpful, thx
Since RAM is full and there is no page of process 3 on RAM, we can't use local LRU to make room, we need to use global LRU, which means pg 0 of process 0 gets evicted to make room for pg 0 of process 3.

The University of Western Australia

Computer Science and Software Engineering

CRICOS Code: 00126G
Written by [email protected]
Powered by history
Feedback always welcome - it makes our software better!
Last modified  8:08AM Aug 25 2024
Privacy policy