✳flâneur — a map of the web's best reading

Chapter 6: S cheduling | 🗒️ Ben's Notes

notes.bencuan.me · saved by 1 readers

When multiple tasks need to be done on a single CPU, we need to figure out a way to distribute the work done by the CPU across all of the tasks. At any point there are running, waiting, and blocked threads. A processor’s scheduling policy determines how and when threads transition between these states. There are three primary goals for an effective scheduling algorithm. No single scheduling policy can achieve every goal; there must be some tradeoffs. For example, minimizing response time results in more context switching, so throughput cannot also be maximized. Workload: the input to a scheduling algorithm, which includes the set of tasks to perform, when they arrive, and how long they will take. Compute-bound tasks primarily use the CPU, whereas IO-bound tasks spend most of their time blocked by IO and only a small amount of time using the CPU. Preemption is the process of interrupting a running thread to allow for the scheduler to decide which thread runs next. Priority Inversion occ

When multiple tasks need to be done on a single CPU, we need to figure out a way to distribute the work done by the CPU across all of the tasks. At any point there are running, waiting, and blocked threads. A processor’s scheduling policy determines how and when threads transition between these states. There are three primary goals for an effective scheduling algorithm. No single scheduling policy can achieve every goal; there must be some tradeoffs. For example, minimizing response time results in more context switching, so throughput cannot also be maximized. Workload: the input to a schedul

Explore this link on the map →