Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
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.
Scheduling in a system is done by the aptly named scheduler, which is mainly concerned with three things:
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: