week 6 - scheduling and memory management

scheduling algorithms

round robin

[unsure about above wording, needs redoing]

priority scheduling

round robin does not take into account that process A might not need to be completed in a shorter amount of time automatic email checking, update checking and other various tasks probably aren’t as important as a video player application the user had running. for this, we might want to set every programming running a priority.

shortest job first

lottery scheduling

fair share scheduling

in multi user systems, if user 9 has a process and user 2 has 3. in a normal round robin, this could result in user 1 having far more CPU time. FSS is when we take this into account, ensuring that each user gets a “fair” share. if we say that user 2 should get 50% of CPU time, the scheduler will guarantee this, if it has processes to run.

scheduling in real time systems

0 for RTS we need to guarantee that things happen at a given time. e.g. medical devices deliver medicine and correct times and correct rates/machines on factory floors

c=1MCiPi1\sum_{c=1}^{M} \frac{C_i}{P_i} \le 1

where M is the number of periodic events and i is an event that occurs with period PiP_i and with CiC_i seconds of CPU time

thread scheduling

memory

address spaces

handling the memory limit

managing free memory

bitmaps

linked lists

P | 0 | 12

H | 12 | 5

P | 17 | 12

the first section of each node on the list marks if it is a hole (h) or a process (p), then is the start position of the chunk, then the length of it

first fit

next fit

best fit

worst fit

quick fit

Back to notes...

click here to go back to more