Preemptive vs Non-Preemptive Scheduling Quiz

MerryFrancium avatar
MerryFrancium
·
·
Download

Start Quiz

Study Flashcards

18 Questions

What is the main objective of CPU scheduling in a multiprogramming operating system?

To have some process running at all times and maximize CPU utilization

What happens when a process in a simple computer system goes into the waiting state?

The CPU sits idle and the waiting time is wasted

What is the key problem that CPU scheduling tries to solve in a multiprogramming operating system?

Avoiding situations where the CPU remains idle when a process is waiting

What is the basic idea behind CPU scheduling in a multiprogramming environment?

To use the time when a process is waiting for I/O to execute other processes

Which of the following is NOT a key objective of CPU scheduling in a multiprogramming OS?

To ensure fairness in CPU allocation

What is the main reason why a multiprogramming operating system tries to avoid having the CPU remain idle?

To maximize the productivity and throughput of the computer system

What is the primary role of the long-term scheduler?

Deciding the degree of multiprogramming in the system

When a process requires an I/O operation during its execution, which scheduler is responsible for moving it from the running queue to the blocked queue?

Medium-term scheduler

In preemptive scheduling, when can another process get control of the CPU?

Before the current process finishes execution

What is the primary function of the short-term (CPU) scheduler?

Selecting the next process from the ready queue to execute on the CPU

What type of scheduling is in place if another process must wait until the current one finishes execution before getting CPU control?

Non-preemptive

Which component is responsible for switching the CPU from one process to another?

Dispatcher

What is the range of CPU Utilization in a real system?

40-90 percent

What is the term used to describe the time it takes for the dispatcher to stop one process and start another?

Dispatch latency

Which scheduling scheme allows other processes to assume control of the CPU while a process is waiting for I/O?

Preemptive

Why is it important for the dispatcher to be very quick?

To minimize the time processes spend waiting in the ready queue

When is it preferable to use non-preemptive scheduling?

For ensuring constant CPU throughput

Which scheduling criterion aims to keep the CPU as busy as possible?

CPU Utilization

Study Notes

CPU Scheduling

  • CPU Scheduling is the basis of a Multiprogramming Operating System, allowing the operating system to make the computer more productive by switching the CPU among processes.
  • The key point of CPU Scheduling is to switch the CPU among processes and examine the improvement of the system's productivity.

Single Processor System

  • In a Single Processor System, only one process can run at a time, and the other processes must wait until the CPU is released.

Objective of Multiprogramming

  • The objective of multiprogramming is to have some process running at all times, to maximize CPU utilization.

Avoiding CPU Idle Time

  • In a simple computer system, if one process is in the waiting state, the CPU remains idle, wasting time.
  • The basic idea of CPU Scheduling is to avoid this situation and use the time productively.

Schedulers

  • Medium Term Scheduler: Decides when to swap processes in and out of memory, handles process blocking and unblocking due to I/O operations.
  • Short Term (CPU) Scheduler: Selects a process from the ready queue to be executed when the CPU becomes idle.

Dispatcher

  • The dispatcher is the module that gives control of the CPU to the process selected by the short-term scheduler.
  • The dispatcher should be very quick to minimize dispatch latency.

Preemptive and Non-Preemptive Scheduling

  • Preemptive Scheduling: The scheduler can take control of the CPU from one process and give it to another process at any time.
  • Non-Preemptive Scheduling: The scheduler only takes control of the CPU at specific points, such as when a process completes its execution or is waiting for I/O.

Scheduling Criteria

  • CPU Utilization: Keeping the CPU as busy as possible, with a range of 40% to 90% in a real system.
  • Throughput: The number of processes completed per unit time.
  • Turnaround Time: The time taken for a process to complete.
  • Waiting Time: The time spent by a process waiting for the CPU.
  • These criteria help determine the efficiency of a scheduling algorithm.

Test your knowledge on preemptive and non-preemptive scheduling in operating systems. Learn about the scenario when a process switches from the waiting state to the ready state and which process gets control of the CPU. Understand the differences between preemptive and non-preemptive scheduling schemes.

Make Your Own Quizzes and Flashcards

Convert your notes into interactive study material.

Get started for free

More Quizzes Like This

Use Quizgecko on...
Browser
Browser