/    /  OS – Real Time Scheduling

Real-time scheduling

 

What are real-time systems?

 

Systems that carry real-time tasks are known as real-time systems. 

These tasks can be divided into two categories:

  1. Soft real-time tasks: The task can be rescheduled.
  2. Hard real-time tasks: The tasks need to be performed within a certain time period.

In this system, the scheduler is considered the most important component. 

The scheduler aims to reduce the response time for each process.

 

Real-time scheduling algorithms:

 

In a simple real-time system, there might be no need for a scheduler, one task can simply call the next.

But for more complex real-time systems, that have a large but fixed number of tasks that do not function in pipeline function, one may need static scheduling.

And for real-time systems where the workload keeps changing, one may need dynamic scheduling.

 

In dynamic scheduling two important question arises:

  1. How to handle the overload?

To handle the overload these processes can be used:

  • Best efforts
  • Work shedding
  1. How to choose which process to execute first?

 To decide which process to execute first from the ready queue these methods may be used:

  • SJF
  • Static priority
  • Slack time.

 

Reference 1

Real Time Scheduling Of Operating system.