Operating Systems 2019W Lecture 16: Difference between revisions
No edit summary |
|||
Line 6: | Line 6: | ||
==Readings/Outside resources== | ==Readings/Outside resources== | ||
If you wish to learn more about scheduling, see the | If you wish to learn more about scheduling, see the textbook chapters on [http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched.pdf CPU Scheduling], [http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-mlfq.pdf Multi-level Feedback Scheduling], [http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-lottery.pdf Lottery Scheduling], and [http://pages.cs.wisc.edu/~remzi/OSTEP/cpu-sched-multi.pdf Multi-CPU Scheduling]. Note that while you should understand the concept of scheduling, we will not be discussing scheduling algorithms in this course. | ||
==Notes== | ==Notes== |
Revision as of 13:33, 14 March 2019
Video
The video for the lecture given on March 13, 2019 is now available.
Readings/Outside resources
If you wish to learn more about scheduling, see the textbook chapters on CPU Scheduling, Multi-level Feedback Scheduling, Lottery Scheduling, and Multi-CPU Scheduling. Note that while you should understand the concept of scheduling, we will not be discussing scheduling algorithms in this course.
Notes
Lecture 16 ---------- Scheduling When a process is interrupted or makes a system call, the kernel takes over the CPU core (and the core switches to supervisor mode) Scheduling is what happens when the kernel finishes its work and wants to run a process The kernel must choose what process (task) to run next, quickly and efficiently What criteria to use? - fairness: every process gets an equal share - but really, we want the kernel to run the "important" programs when they need to, an "unimportant" programs should take a back seat - so, we set priorities But static priorities aren't enough - so the kernel dynamically adjusts priorities based on heuristics