ALERT

[FREE DEMO] Deploy Your Enterprise Cloud in Minutes

Scheduling

Definition - What does Scheduling mean?

Scheduling is a method that is used to distribute valuable computing resources, usually processor time, bandwidth and memory, to the various processes, threads, data flows and applications that need them. Scheduling is done to balance the load on the system and ensure equal distribution of resources and give some prioritization according to set rules. This ensures that a computer system is able to serve all requests and achieve a certain quality of service.

Scheduling is also known as process scheduling.

Techopedia explains Scheduling

Scheduling in a system is done by the aptly named scheduler, which is mainly concerned with three things:

  • Throughput, or how fast it can finish a certain number of tasks from beginning to end per unit of time
  • Latency, which is the turnaround time or the time it takes to finish the task from the time of request or submission until finish, which includes the waiting time before it could be served
  • Response time, which is the time it takes for the process or request to be served, in short the waiting time

Scheduling is largely based on the factors mentioned above and varies depending on the system and the programming of the system's or user's preferences and objectives. In modern computers such as PCs with large amounts of processing power and other resources and with the ability to multitask by running multiple threads or pipelines at once, scheduling is no longer a big issue and most times processes and applications are given free reign with extra resources, but the scheduler is still hard at work managing requests.

Types of scheduling include:

  • First come, first served — The most straightforward approach and may be referred to as first in, first out; it simply does what the name suggests.
  • Round robin — Also known as time slicing, since each task is given a certain amount of time to use resources. This is still on a first-come-first-served basis.
  • Shortest remaining time first — The task which needs the least amount of time to finish is given priority.
  • Priority — Tasks are assigned priorities and are served depending on that priority. This can lead to the starvation of the least important tasks as they are always preempted by more important ones.

Techopedia Deals

Connect with us

Techopedia on Linkedin
Techopedia on Linkedin
Tweat cdn.techopedia.com
"Techopedia" on Twitter


'@Techopedia'
Sign up for Techopedia's Free Newsletter!

Email Newsletter

Join thousands of others with our weekly newsletter

Resources
The 4th Era of IT Infrastructure: Superconverged Systems
The 4th Era of IT Infrastructure: Superconverged Systems:
Learn the benefits and limitations of the 3 generations of IT infrastructure – siloed, converged and hyperconverged – and discover how the 4th...
Approaches and Benefits of Network Virtualization
Approaches and Benefits of Network Virtualization:
Businesses today aspire to achieve a software-defined datacenter (SDDC) to enhance business agility and reduce operational complexity. However, the...
Free E-Book: Public Cloud Guide
Free E-Book: Public Cloud Guide:
This white paper is for leaders of Operations, Engineering, or Infrastructure teams who are creating or executing an IT roadmap.
Free Tool: Virtual Health Monitor
Free Tool: Virtual Health Monitor:
Virtual Health Monitor is a free virtualization monitoring and reporting tool for VMware, Hyper-V, RHEV, and XenServer environments.
Free 30 Day Trial – Turbonomic
Free 30 Day Trial – Turbonomic:
Turbonomic delivers an autonomic platform where virtual and cloud environments self-manage in real-time to assure application performance.