What is a task scheduler?

A task scheduler is a critical component of a system for getting work done efficiently. For example, uploading a photo or a video on Facebook or Instagram consists of the following background tasks:

  1. Encode the photo or video in multiple resolutions.
  2. Validate the photo or video to check for content monetizationContent monetization is a way of leveraging content so that a service can profit from it as users consume it., copyrights, and many more.

The successful execution of the tasks above makes the photo or video visible. It allows us to complete a large number of tasks using limited resources.

Distributed task scheduling

The process of deciding and assigning resources to the tasks in a timely manner is called task scheduling. The visual difference between an OS-level task scheduler and a datacenter-level task scheduler is shown in the following illustration:

Level up your interview prep. Join Educative to access 80+ hands-on prep courses.