Have small jobs run through quickly
Have long jobs not starve, not hog resources Not punish jobs for doing I/O
Be fair, and robust
Copyright By PowCoder代写 加微信 powcoder
A. If Priority(A) > Priority(B), A runs (B doesn¡¯t)
A. If Priority(A) > Priority(B), A runs (B doesn¡¯t)
B. If Priority(A) = Priority(B), A & B run round-robin
A. If Priority(A) > Priority(B), A runs (B doesn¡¯t)
B. If Priority(A) = Priority(B), A & B run round-robin
C. When a job enters the system, it is placed at the highest priority
A. If Priority(A) > Priority(B), A runs (B doesn¡¯t)
B. If Priority(A) = Priority(B), A & B run round-robin
C. When a job enters the system, it is placed at the highest priority
D. If time slice is used, move down in priority
A. If Priority(A) > Priority(B), A runs (B doesn¡¯t)
B. If Priority(A) = Priority(B), A & B run round-robin
C. When a job enters the system, it is placed at the highest priority
D. If time slice is used, move down in priority
E. After some time period, move all the jobs in the
system to the topmost queue.
What are the results?
What are the results?
What happens with short jobs?
What are the results?
What happens with short jobs?
If they run almost immediately! (Good response time)
What are the results?
What happens with short jobs?
If they run almost immediately! (Good response time)
Near-shortest job first speeds!
What are the results?
What happens with short jobs?
If they run almost immediately! (Good response time)
Near-shortest job first speeds!
What happens with medium-length jobs?
What are the results?
What happens with short jobs?
If they run almost immediately! (Good response time)
Near-shortest job first speeds!
What happens with medium-length jobs? They share!
What are the results?
What happens with short jobs?
If they run almost immediately! (Good response time)
Near-shortest job first speeds!
What happens with medium-length jobs? They share!
What happens with CPU hogs? (<.< Looking at you, Eclipse...)
What are the results?
What happens with short jobs?
If they run almost immediately! (Good response time)
Near-shortest job first speeds!
What happens with medium-length jobs? They share!
What happens with CPU hogs? (<.< Looking at you, Eclipse...)
They get served, but not as well as the rest
What is turnaround time, and why does MLFQ do to optimize this metric?
Can jobs get starved? How/when, or why not?
Case study
How would a text editor be treated by a MLFQ?
The shakeup
Deals with jobs that used lots of CPU time, but then switched to I/O. These jobs would then be ¡®good citizens¡¯.
¡°all the jobs in the system move to the topmost queue¡±
Jobs tend to be I/O bound, or CPU bound
Most switch between the two (bursty I/O traffic) If jobs change from I/O to CPU-based, the can be served appropriately
Proportional share
Fairly basic concept! Questions about it?
Can we game it
How could we game Proportional share? Can we win the lottery?
How does Proportional
share work with nice? How can we be nice?
New concept: real-time scheduling
Real-time tasks must be completed within a set amount of time.
Case study
What about this
Case study
What about this
Is it clever/good?
Case study
What about this
Is it clever/good? Is it fair?
Case study
What about this
Is it clever/good? Is it fair?
Is it game-able?
Wrap us discussion (bring questions about scheduling), Office hours
程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com