CPU Scheduling and the Boot Sequence
Photo by Andrea Piacquadio from Pexels
In this module, we will begin learning how the operating system performs its illusionist role. We will see how it virtualizes the processor to better support multiprogramming and to improve the user experience. Since it has come up in our discussions (how do we get that first process?), I'll also take a minute to explain the boot process.
Learning Objectives
We've learned about the basic unit of execution in the operating system, the process. Now we'll learn how the OS manages the execution of multiple processes.
Upon completion of this module, you will be able to:
- Describe how a single CPU can appear to execute actions simultaneously
- Evaluate process behavior under varying conditions
- Analyze the behavior of a multi-programmed system under different process loads and scheduling policies
Learning
- Video: CPU Scheduling (12 minutes)
- Video: Evaluating Scheduling Policies (5 minutes)
- Video: Scheduling Policies (23 minutes)
- Video: Boot Sequence (5 minutes)
-
Slides that were presented in the videos
Note that these videos have embedded formative assessments---you'll want to watch the videos and complete those before class, so that you can earn participation credit.
Recommended Readings
Completing the readings in this class is highly recommended---it can be very helpful to see how the concepts are explained by a different person, and the extra details can help the pieces fit together.
OSTEP: CPU Scheduling and The Multi-Level Feedback Queue
Fun Insights
From Class
Evaluating Your Understanding
We are providing these rubrics for each module so that you can better understand what is expected and evaluate your understanding against those expectations. The hope is that, if you find yourself earning a 3 or below, you will continue to enhance your understanding until you find yourself earning a 4 or a 5.
| Standards | 5 | 4 | 3 | 2 |
|---|---|---|---|---|
| CPU Scheduling | Student accurately describes how CPU scheduling supports multiprogramming, accurately evaluates the effect of various scheduling policies on particular process workloads, and accurately analyzes the desirability of a scheduling policy in both theoretical and actual systems. | Student accurately describes how CPU scheduling supports multiprogramming, satisfactorily evaluates the effect of various scheduling policies on particular process workloads, and satisfactorily analyzes the desirability of a scheduling policy in both theoretical and actual systems. | Student satisfactorily describes how CPU scheduling supports multiprogramming, satisfactorily evaluates the effect of various scheduling policies on particular process workloads, but unsatisfactorily analyzes the desirability of a scheduling policy in both theoretical and actual systems. | Student does not submit the work OR student unsatisfactorily describes how CPU scheduling supports multiprogramming, unsatisfactorily evaluates the effect of various scheduling policies on particular process workloads, and unsatisfactorily analyzes the desirability of a scheduling policy in both theoretical and actual systems. |
| Short Answer Questions: Process-Specific | Student submitted answers to given questions that accurately and succinctly answer the questions. | Student submitted answers to given questions that satisfactorily and succinctly answer the questions. | Student submitted answers to given questions that unsatisfactorily answer the questions. | Student does not submit the answers OR submitted answers to given questions that incorrectly answer the questions. |
| Short Answer Questions: Processes as part of the larger system | Student submitted answers to given questions that accurately and succinctly answer the questions. | Student submitted answers to given questions that satisfactorily and succinctly answer the questions. | Student submitted answers to given questions that unsatisfactorily answer the questions. | Student does not submit the answers OR submitted answers to given questions that incorrectly answer the questions. |